如何正确更改AndroidManifest.xml中的包名(例如,在项目zxing/barcodescanner中)

如何正确更改AndroidManifest.xml中的包名(例如,在项目zxing/barcodescanner中),android,eclipse,zxing,Android,Eclipse,Zxing,我对android开发还很陌生,所以我希望我的问题很简单,但不要完全愚蠢。我正在使用Eclipse构建一个android应用程序。它是基于慈兴的天才们的条形码扫描仪。我已经对原始代码做了一些修改,一切正常。但我仍然有一个问题,原来的条形码扫描仪和我的应用程序不能在一台移动设备上同时运行。据我所知,问题在于包名。所以我试着把它换成别的东西。但这会破坏我的整个项目,因为我无法再访问我的资源(例如findviewbyd(R.id.btDone); 该软件包引用了您创建的文件目录。如果您仍然存在问题,尤

我对android开发还很陌生,所以我希望我的问题很简单,但不要完全愚蠢。我正在使用Eclipse构建一个android应用程序。它是基于慈兴的天才们的条形码扫描仪。我已经对原始代码做了一些修改,一切正常。但我仍然有一个问题,原来的条形码扫描仪和我的应用程序不能在一台移动设备上同时运行。据我所知,问题在于包名。所以我试着把它换成别的东西。但这会破坏我的整个项目,因为我无法再访问我的资源(例如findviewbyd(R.id.btDone);


该软件包引用了您创建的文件目录。如果您仍然存在问题,尤其是android,有时执行project->clean and rebuilding会修复一些与资源的链接问题,这应该可以做到:右键单击project->android Tools->重命名应用程序包

,假设您选择使用ng>新建程序包名称:

<manifest
  xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.google.zxing.client.android"
  ...
com.superscanner.android
并且,旧的包名为(例如):

浏览所有源代码并更改:

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


您还必须重命名所有目录以匹配新的软件包结构,并在整个过程中更改
import
package
语句,但这应该会让您继续。我们强烈建议人们不要复制条形码扫描仪的代码。这不是很酷。嗯……我应该如何使用代码?我不想强迫用户单独安装条形码应用程序。我的意图绝对不是要声称原始代码的作者身份或侵犯任何版权!当然,您可能不希望存在第三方依赖关系:因此您应该编写自己的扫描仪应用程序,然后使用核心库进行解码。您可以将条形码扫描仪的部分重新用作needed。我们不喜欢看到的是从复制和粘贴开始,因为最终的结果是在太多的情况下保持90%的复制和粘贴,即使这在技术上是合法的,这似乎也不正确。也许你真的在应用程序上进行了创新,但大多数这样做的人都不是。只有当你想更改源代码而不是应用程序时,这才有效包裹
com.google.zxing.client.android
import com.google.zxing.client.android.R;
import com.superscanner.android.R;