java 在android studio中重命名包名称后启动错误,运行时错误

vxbzzdmp  于 2023-01-07  发布在  Java
关注(0)|答案(4)|浏览(241)

我在android studio有一个项目
我首先将项目从eclipse导出到android studio,然后在AndroidMenifest.xml,中更改了它的包名
从Android Studio重命名目录,
更改所有my class files中的包名称,
也改变了R.java文件的位置
gen文件夹一样,旧的是com.oldpath.path1com.newpath.path2
也在R.java文件和BuildConfig.java文件中反映相同内容。
现在获得如下错误..

Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.oldpath.path1/com.newpath.path2.main.SplashScreen }
Error type 3
Error: Activity class {com.oldpath.path1/com.newpath.path2.main.SplashScreen} does not exist.

请帮帮我,我的项目被卡住了。

50few1ms

50few1ms1#

使用Android Studio 3.0.1时,仅使用Refactor -> Rename...工具重构软件包名称是不够的。首先,如前所述,这会丢失整个项目中的多个引用,包括清单文件中的引用。其次,这会丢失生成的文件和Android Studio缓存(导致OP识别的错误)。
如果您还没有重命名您的软件包,请按照以下步骤进行重命名:Rename package in Android Studio
否则,如果您已经尝试过并且失败了,那么下面的步骤将拯救您的项目:

Android Studio中的解决方案

1.使用Ctrl+Shift+F查找并替换重构工具遗漏的对旧包名的任何引用。
1.修复代码中的任何剩余错误,然后使用Build -> Clean Project清理并重新生成应用程序。这将重新生成R文件,修复最后一个相关的构建错误,但会给您OP记录的启动错误。不幸的是,如果您仍然有构建错误,那么您不会面临与OP相同的问题...
1.准备重新启动IDE(保存您的工作并关闭所有正在运行的模拟器)。
1.在Android Studio中,选择File -> Invalidate Caches / Restart...
Android Studio将在重新启动时同步您的Gradle文件,并且从现在开始,它将在启动应用时引用您的新包名称。

nhaq1z21

nhaq1z212#

最好重命名软件包,这样你就可以右键点击软件包名称-〉重构-〉重命名,这样android studio就会自动重命名所有需要重命名的软件包。

vuktfyat

vuktfyat3#

你需要在重命名包后清理项目,因为某些原因它在重命名后没有重建它。选择Build -> Clean Project,然后再次运行它-应该没问题

fdx2calv

fdx2calv4#

对于任何仍然有问题的应用程序安装,但不启动设备或模拟器,即使在无效缓存和做其他一切:
当我重命名我的项目中的包时,它不知何故也编辑了我的Run/Debug Configurations。确保Launch Options部分下的Launch没有设置为None。通常,这应该是Default Activity

相关问题