加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 教程 > 正文

制作Android二维码时产生的错误概括

发布时间:2021-11-21 19:53:33 所属栏目:教程 来源:互联网
导读:现在很多应用都需要二维码,因此,在搜集资料中发现了发现一个以Apache开源的 ZXing项目。而在学习中也发现了一些错误。 (Zxing是Google提供的关于条码(一维码、二维码)的解析工具,提供了一系列条形码以及二维码的生成与解析的方法); 第一个, 最开始

现在很多应用都需要二维码,因此,在搜集资料中发现了发现一个以Apache开源的 ZXing项目。而在学习中也发现了一些错误。
 
(Zxing是Google提供的关于条码(一维码、二维码)的解析工具,提供了一系列条形码以及二维码的生成与解析的方法);
 
第一个,
 
最开始我学习的是1.6的ZXing版本,结果接触到了一个错误,编译一下项目在values目录下的strings的xml文件里面有个
 
<string name="preferences_custom_product_search_summary">Use %s as a placeholder for the product ID, and %f for format</string>
 
标签错误,会发现报错,“ Multiple substitutions specified in non-positional format; did you mean to add the formatted="false" attribute?”之类的。打开raw 下的Values 发现错误是在一个<String>上。这里把 “preferences_custom_product_search_summary” 里的  %s  %f  全部都改成  %1$s  %1$f(因为我们用不到多国语言,建议只保留默认的Value ,其他全部删除)。
 
原因:由于新的SDK采用了新版本的aapt(Android项目编译器),这个版本的aapt编译起来会比老版本更加的严格,然后在Android最新的开发文档的描述String的部分,已经说明如何去设置 %s 等符号
 
“使用的String.Format(字符串,对象...),如果你需要格式化字符串,然后你就可以这样做把你的格式参数中的字符串资源。例如,用下面的资源:
 
<string name="welcome_messages">Hello, %1$s! You have %2$d new messages.</string>
 
在这个例子中,格式字符串有两个参数:%1 $ S是一个字符串,%2 $ d是一个十进制数。您可以格式化字符串,还要争拗从您的应用程序...“
 
经过以上步骤后项目应该就可以运行了。
 
不过之后,在我下了2.1之后,ZXing的作者可能已经意识到这个问题,所以在随后的2.1ZXing版本里面没有这个问题了。

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读