我在Eclipse中有两个Android项目。我从另一个项目中复制了一个项目,然后更改了应用名称(在strings.xml中)和项目名称(在Eclipse中)。
但是现在出现了一个问题:当我在模拟器中运行任一应用程序时,另一个应用程序丢失(可能被覆盖?)。所以我猜我还有另外一个设置,所以Android会识别出两个不同的应用程序?
谢谢!
答案 0 :(得分:12)
实际上你需要在几个地方更改名称:
首先,正如您所说,字符串的名称,即应用程序的可见名称。
其次,转到activity-> src并右键单击包(com.example.whatever)并执行refactor->重命名;
然后转到manifest.xml:并更改以下字段:
<manifest package="com.example.whatever" >
如果您使用的是本机代码,JNI,您还必须更改c ++函数的名称,这是一个痛苦的屁股:
Java_com_example_whatever_activity_function()
答案 1 :(得分:9)
对于那些没有使用Android Studio且想要手动执行此操作的用户(例如,如果您使用的是React Native),我最近才进行此操作,并且必须在以下文件中进行更改:
index.android.js
android/settings.gradle
android/app/build.gradle
android/app/src/main/AndroidManifest.xml
android/app/src/main/java/com/<app id>/MainActivity.java
android/app/src/main/java/com/<app id>/MainApplication.java
答案 2 :(得分:8)
包名(在java中)。
应用名称也在清单中,虽然我认为不需要是唯一的,但为了清晰起见,仍然可以更改它。
答案 3 :(得分:8)
对于Android Studio用户,您需要在AndroidManifest.xml和build.gradle文件中更改您的包名称 - &gt; defaultConfig - &GT;的applicationID。
答案 4 :(得分:5)
我发现完成此任务的最简单方法是在.gradle中使用Product Flavor
productFlavors {
MainApp {
applicationId = "com.company.app"
}
NewAppFlavor {
applicationId = "com.company.newapp"
}
}
buildTypes {
debug {
buildConfigField "java.util.Date", "buildTime", "new java.util.Date(" + getDateAsMillis() + "L)"
applicationIdSuffix ".debug"
}
}
然后在AndroidManifest.xml中将包名称指定为
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.company"
android:versionCode="1"
android:versionName="0.1.1" >
在发布配置后,Android Studio(撰写本文时为1.5.1)将询问要构建哪种风格。
调试配置稍微不那么直观,您必须将光标悬停在屏幕的左下角,选择“Build Variants”并选择当您按下播放按钮时调试配置将部署的风格。
答案 5 :(得分:2)
如果您使用Android工作室,那么
您的项目标识符位于build.gradle
文件中,只需更改字段applicationId "com.example.whatEver"
希望它能起作用
答案 6 :(得分:1)
应用程序的唯一标识符是包名称。 如果您更改了包裹名称并再次重新安装该应用程序,您最终将在手机上保留两份副本。
Eclipse可以自动在代码的所有位置更改它。
右键单击包浏览器(项目树)上的项目 并转到Android工具 - >重命名应用程序包
瞧。
答案 7 :(得分:1)
在“项目”窗口的左上角选择Android。因此,右键单击Java文件夹下的包名称,然后选择&#34; Refactor&#34; - &GT;改名... 单击重命名包按钮。键入所需的新包的名称,标记所有选项,然后确认。
当它显示结果时,点击&#34; Do Refactor&#34;。
答案 8 :(得分:1)
我发现我的重命名无法正常工作,因为我还需要更改google-services.json中的程序包名称
答案 9 :(得分:0)
在应用gradle上更改applicationId
。
更改strings.xml
中的file_provider_authority
如果您使用的是Firebase,请在firebase上添加新项目,然后下载新的google-services.json文件,并用此文件替换旧文件。
还可以选择更改您的应用名称。
答案 10 :(得分:0)
我的设置
app/java/com.company.app
。Refactor > Rename
,然后选择Rename Package
。Do Refactor
。无需用手乱砍。