【问题标题】:How to properly change the package name in AndroidManifest.xml (e.g. in project zxing/barcodescanner)如何正确更改 AndroidManifest.xml 中的包名(例如在项目 zxing/barcodescanner 中)
【发布时间】:2012-02-18 02:15:45
【问题描述】:

我对 android 开发很陌生,所以我希望我的问题很简单,但不是完全愚蠢。我正在使用 Eclipse 构建一个 android 应用程序。它是基于 zxing 聪明人的条形码扫描器。我已经对原始代码进行了相当多的更改,一切正常。但我仍然有问题,原来的条形码扫描仪和我的应用程序不能同时在一台移动设备上运行。据我所知,问题出在包名上。所以我试着把它改成别的东西。但这搞砸了我的整个项目,因为我无法再访问我的资源(例如 findViewById(R.id.btDone);

谁能告诉我我还需要改变什么才能让我的代码再次工作?

这是我尝试更改包名称的 AndroidManifest.xml 的开头:

<manifest
  xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.google.zxing.client.android"
  ...

我还在 build.properties 中发现了一个有趣的条目:(?!)

application-package=com.google.zxing.client.android

谢谢你们!

【问题讨论】:

  • 我们强烈劝阻人们不要从复制我们的条形码扫描仪代码开始。不是很酷。
  • 嗯......我应该如何使用代码呢?我不想强迫用户单独安装条形码应用程序。我的意图绝对不是声称原始代码的作者身份或侵犯任何版权!
  • 当然你可能不想要第三方依赖:所以你应该编写自己的扫描仪应用程序,然后使用核心库进行解码。您可以根据需要重复使用 Barcode Scanner 的部件。我们不希望看到的是从复制和粘贴开始,因为最终结果在太多情况下最终保持 90% 的复制和粘贴,即使在技术上是合法的,这似乎也不正确。也许您真的在对应用进行创新,但大多数这样做的人都没有。

标签: android eclipse zxing


【解决方案1】:

应该这样做:右键单击项目 -> Android 工具 -> 重命名应用程序包

【讨论】:

    【解决方案2】:

    Android - Package Name convention

    包是指你创建的文件目录。如果你仍然有问题,尤其是 android,有时做 project->clean 然后重建修复一些资源链接问题

    【讨论】:

      【解决方案3】:

      假设您选择使用 包名称:

      com.superscanner.android
      

      old 包名称为(例如):

      com.google.zxing.client.android
      

      浏览所有源代码并进行更改:

      import com.google.zxing.client.android.R;
      

      收件人:

      import com.superscanner.android.R;
      

      您还必须重命名所有目录以匹配您的新包结构,并在整个过程中更改您的 importpackage 语句,但这应该会让您继续前进。

      【讨论】:

      • 这只有在你想改变源的时候才有效,而不是应用程序包!
      猜你喜欢
      • 2014-08-01
      • 1970-01-01
      • 2023-04-02
      • 2014-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-06
      相关资源
      最近更新 更多