Android应用更换package name以及ui refactoring error问题的有效解决
2014-03-08 23:00
786 查看
package name是Android系统中为每一个应用程序分配的一个标识,每个应用的标识都必须是不同的。在应用开发过程中,有时候可能需要对package name进行修改,这里主要总结修改package name的方式和常见问题及有效的解决办法。
在AndroidManifest.xml中的package字段明确指出了package的名称,但是仅仅通过修改package字段来修改应用的package name是不够的,因为package name直接和资源文件R相关,造成在每一个acitvity的文件中,都有这么一句话,import (package name).R;因此,要修改package name还需要同时将所有文件中的这句话的package name修改掉。Android的ADT中提供了统一替换的工具,如下图所示:
如果在使用rename application package的时候工程中存在某个java类文件被完全注释掉了,则会出现unexpected exception occured的错误提示,删除文件或者取消相应注释应该都可以解决这个问题,在http://coollast.blog.51cto.com/6319475/1323473和http://stackoverflow.com/questions/19680717/rename-package-name-inside-android-project/19681399#19681399中都有所提及。
但是如何发现这种完全被注释掉的类没有提到,特别是在工程比较大的时候,有效地发现完全被注释掉的类会更有帮助。最初我是想能不能通过看error log的具体提示来确认造成error的文件到底是哪一个来着,但是发现eclipse的error log下并没有相关文件信息。后来发现其实可以通过看import (package name).R这句话有没有被注释掉就可以。这样的话可以search->file->file search通过搜索package name的方式找出所有含有package name的文件,展开查询结果,并查看是否存在import (package name).R被注释的情况。
在AndroidManifest.xml中的package字段明确指出了package的名称,但是仅仅通过修改package字段来修改应用的package name是不够的,因为package name直接和资源文件R相关,造成在每一个acitvity的文件中,都有这么一句话,import (package name).R;因此,要修改package name还需要同时将所有文件中的这句话的package name修改掉。Android的ADT中提供了统一替换的工具,如下图所示:
如果在使用rename application package的时候工程中存在某个java类文件被完全注释掉了,则会出现unexpected exception occured的错误提示,删除文件或者取消相应注释应该都可以解决这个问题,在http://coollast.blog.51cto.com/6319475/1323473和http://stackoverflow.com/questions/19680717/rename-package-name-inside-android-project/19681399#19681399中都有所提及。
但是如何发现这种完全被注释掉的类没有提到,特别是在工程比较大的时候,有效地发现完全被注释掉的类会更有帮助。最初我是想能不能通过看error log的具体提示来确认造成error的文件到底是哪一个来着,但是发现eclipse的error log下并没有相关文件信息。后来发现其实可以通过看import (package name).R这句话有没有被注释掉就可以。这样的话可以search->file->file search通过搜索package name的方式找出所有含有package name的文件,展开查询结果,并查看是否存在import (package name).R被注释的情况。
相关文章推荐
- [Android应用] 问题2:ERROR: unknown virtual device name: my_avd
- Eclipse开发Android应用时遇到的问题以及解决方法
- Grade 编译 Android 解决 Error:more than one library with package name
- Android应用问题:ERROR: unknown virtual device name"XXX"
- Error 11 No resource identifier found for attribute 'textAlignment' in package 'android' 问题解决
- MySQL字符集 GBK、GB2312、UTF8区别 解决 MYSQL中文乱码问题以及error 1406:data too long for column 'name' at row 1
- Error: Not found; no service started.问题解决 | android studio调试能安装应用成功但无法启动
- Android有效解决加载大图片时内存溢出的问题
- Android有效解决加载大图片时内存溢出的问题
- 解决最近windows版本Node.js中npm出现的“Error: ENOENT, stat 'C:\Users\UserName\AppData\Roaming\npm”的问题
- Android笔记:解决 Your project contains error(s),please fix them before running your application问题
- Android有效解决加载大图片时内存溢出的问题
- Eclipse+Android解决SDK下无doc文件夹问题 以及关联Android帮助文档
- 【Android应用开发】-(21)Android中巧用反射解决程序兼容性问题
- Chrome加载Android应用,提示“There is no "message" element for key extName”错误问题
- mybatis 在name 模糊查询时出现问题以及解决方法
- android解决UI阻塞问题——创建AsyncTask 子线程
- Android 获取应用文件的路径即 /data/data/<youPackageName>/files
- Android 不同手机上安装app时,程序应用图标不一致的问题解决办法