您的位置:首页 > 移动开发 > Android开发

AS开发错误整理

2016-03-28 18:12 543 查看
此文章记录平时开发遇到的错误,持续更新。1.当移植项目报出有关“cruncher”的错误,在检查图片没有错误时。可以尝试在“build.gradle”加入
aaptOptions.cruncherEnabled = false
aaptOptions.useNewCruncher = false
2.java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent
first.  
3.getDeviceId: Neither user 10079 nor current process has android.permission.READ_PHONE_STATE.
在AndroidManifes.xml添加READ_PHONE_STATE权限之后,依然报错。后来发现,是targetSdkVersion问题,当把其值设置为23时,就会报错。android 6.0以上增加了动态获取权限api,想要动态获取手机的权限。类似iOS那样,在使用时,弹出对话框,提示用户,请求用户允许。如果你没做处理,就会报错。
添加对应权限,仍然报错的问题。都适用这种方法解决。
4.EmptyThrowable: The APK file D:\AndroidProject\LostFoundDemo\app\build\outputs\apk\app-debug.apk does not exist on disk.
5.Error:(13, 43) String types not allowed (at 'android:layout_width' with value 'wrap_content').
把报错部分删掉编译,让它报缺少宽度的错误,然后再把代码贴回去
6.Error:(1, 1) 错误: 非法字符: '\ufeff'
Eclipse可以智能的把UTF-8+BOM文件转为普通的UTF-8文件,Android Studio还没有这个功能,所以使用Android Studio编译UTF-8+BOM编码的文件时会出现” 非法字符: ‘\ufeff‘ “之类的错误。手动将AS下代码转换为UTF-8。
7.import android.support.v7.app.AppCompatActivity  提示 can't resolve the symbol "app"
在v7包已经导入的情况下报错,可以先删除包,然后重新导入。
8.Gradle method not found: ‘runProguard()’报错 一般造成这种原因是因为AS升级到1.0之后,‘runProguarg()’废弃使用,造成方法报错。可以把gradle改回去解决问题,最好的解决办法是将build.gradle文件中的runProguard方法改为minifyEnabled。
9.隐式启动service,报错:service intent must be explicit android 5.0之后,不能再按原来方式隐式启动service,解决方法:
startservice:startService(new Intent(getApplicationContext(), LoadContactsService.class));
bindService:  Intent service = new Intent("android.intent.action.AIDLService"); 的基础上,要加上包名: service.setPackage("com.xxx.xxxserver");
10.在AS环境下,当AIDL文件同时存在java文件与aidl文件时,如果依然按照eclipse创建文件的方法,程序就会报出错误:Symbol not found 的错误 原因在于Gradle 默认是将 java 代码的访问路径设置在 java 包下的,这样一来,如果 java 文件是放在 aidl 包下的话那么理所当然系统是找不到这个 java 文件的。
解决方法:
1,修改 build.gradle 文件:在 android{} 中间加上下面的内容:
sourceSets {main { java.srcDirs = ['src/main/java', 'src/main/aidl']}}
2,把 java 文件放到 java 包下去,包名保持不变

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android as