在android studio中重命名包名称后启动错误,运行时错误
Posted
技术标签:
【中文标题】在android studio中重命名包名称后启动错误,运行时错误【英文标题】:After Renaming Package Name in android studio Launching error, Runtime Error 【发布时间】:2015-01-09 09:51:34 【问题描述】:我在 android studio 有一个项目,
我首先将项目从 eclipse 导出到 android studio。
在那之后
我在AndroidMenifest.xml,
改了它的包名
从 Android Studio 重命名目录,
全部更改包名my class files
,
也改变了R.java
文件的位置
和以前一样的gen
文件夹是com.oldpath.path1
到com.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.
请帮助我,我被困在我的项目中..
【问题讨论】:
我也有同样的问题。你找到解决办法了吗? 【参考方案1】:使用 Android Studio 3.0.1,仅使用 Refactor -> Rename...
工具重构包的名称是不够的。首先,如前所述,这会遗漏整个项目中的几个引用,包括在您的清单文件中。其次,这会丢失生成的文件和 Android Studio 缓存(导致 OP 识别的错误)。
对于遇到此问题的任何人,如果您尚未重命名您的包,请按照以下步骤操作:Rename package in Android Studio
否则,如果您已经尝试过但失败了,那么以下步骤将拯救您的项目:
Android Studio 中的解决方案
-
使用
Ctrl+Shift+F
查找并替换重构工具遗漏的对旧包名称的任何引用。
修复代码中的任何剩余错误,然后使用Build -> Clean Project
清理和重建您的应用程序。这将重新生成您的 R 文件,修复最后一个相关的构建错误,但会为您提供 OP 记录的启动错误。不幸的是,如果您仍然有构建错误,那么您将不会面临与 OP 相同的问题...
准备重新启动 IDE(保存您的工作并关闭所有正在运行的模拟器)。
从 Android Studio 中选择File -> Invalidate Caches / Restart...
就是这样! Android Studio 会在重启时同步你的 Gradle 文件,从现在开始它会在启动你的应用时引用你的新包名。
【讨论】:
我尝试了所有方法,除了无效缓存部分。这样做之后,它修复了一切 为我工作!!【参考方案2】:最好重命名包,这样你就可以右键包名->重构->重命名。所以android studio会自动重命名所有需要重命名的东西。
【讨论】:
我这样做了,但项目没有重命名..正如你所说。 是的,如果您从 android studio 创建项目,您的答案是 100% 正确的。但我是从 eclipse 导出的项目。所以我遇到了问题。【参考方案3】:您需要在重命名包后清理项目,因为由于某种原因,重命名后它不会重建它。
选择Build -> Clean Project
然后再次运行——应该没问题
【讨论】:
我也面临同样的问题,不幸的是 clean 没有解决问题以上是关于在android studio中重命名包名称后启动错误,运行时错误的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio 4.2 开始在发布版本中重命名 APK 内的资源
使用 Android Studio 重命名 Android 包名称