【问题标题】:wrong app_name displaying on shortcut快捷方式上显示错误的 app_name
【发布时间】:2016-10-24 05:06:07
【问题描述】:

我实际上将条形码扫描仪 (ZXing) 作为库集成到我的应用程序中,因此用户无需下载 BarcodeScanner 应用程序,我可以添加一些用例。

我没有功能问题,我的应用程序按预期工作,但智能手机上我的快捷方式下显示的名称是库的名称:“条形码扫描仪”

我试图更改我的应用程序的 android:label,以便编译器不能混淆我的字符串/应用程序名称的 app_name 和 ZXing 的字符串/应用程序名称之一。我什至修改了库的字符串文件以删除“app_name”元素...

我试图删除意图过滤器...

<action android:name="code android.intent.action.MAIN" />
<category android:name="code android.intent.category.LAUNCHER" />

...在 BarcodeScanner 库的清单中,但它没有解决任何问题。

关于这个应用程序名称的检索方式有什么提示吗?

谢谢。

PS : 我注意到我的 com.google.zxing.client.R.java 仍然包含一个“app_name” id,即使我在字符串文件中删除了它。

【问题讨论】:

  • 尝试清理所有项目并构建
  • 我也试过了,但没有帮助。

标签: android zxing


【解决方案1】:

我想我发现了,我的应用在 ./res 中没有 values-nl 文件夹。条形码扫描仪项目这样做了,它使用该文件本地化了应用程序,并且在该文件中是 app_name = Barcode Scanner。

我将 /res/values 文件夹复制到 /res/values-nl,现在它显示了我的应用名称,并且扫描仪工具仍在本地化。

【讨论】:

  • 非常感谢!我的应用程序有一个库的名称。我必须在 ./res 中添加一个 values-de 文件夹,然后再次使用正确的名称
【解决方案2】:

这是因为您复制并粘贴了我们的整个应用程序,而不是从编写自己的应用程序开始,决定您需要重用的内容、理解代码并正确导入您想要的内容。 强烈不鼓励这样的复制,如果您复制我们的 UI 并且可能保留大多数其他元素不变,则可能违反商标法。请从android/ 中删除您的应用程序副本,然后重新开始。您想编写您的应用程序而不进行扫描,然后在您的扫描 UI 中创建一个 SurfaceView 占位符。然后导入core.jar 并根据需要重复使用DecodeHandler 进行扫描。

【讨论】:

  • 明白。请注意,这只是一个临时版本,用于展示我们的应用程序将能够做什么。我们只是不希望我们的 alpha 用户下载条形码扫描仪应用程序来测试它。不要担心商标。谢谢你的回答,这不是我问的,但我确实不知道以后应该做什么。我找到了如何纠正应用程序名称上的问题,条形码扫描仪应用程序中有多个字符串文件,我没有全部更改。
  • 好吧,我不只使用你的 UI 一些类,但我也处理了整个事情并解决了这个问题......我想这样,因为我可以更新那个低级别东西很容易。将库与条形码扫描仪应用程序分开很酷……无论如何,感谢您提供这个库。
  • 扫描已打包为库core/。基于意图的集成被打包为android-integration/android/ 是一个应用程序,而不是一个库,并且不能真正成为一个库。嗯,这正是 Intent 集成的意义所在……
【解决方案3】:

res文件夹中有很多values-[语言代码]文件夹,里面有一个strings.xml文件,试试改app_name 这些文件中的值。

但我会同意肖恩所说的。

干杯。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-11
    • 2021-03-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多