1.运行模拟器无法启动:
Please ensure Intel HAXM is properly installed and usable.
解决:安装图示的加速器
模拟器无法启动的解决.png
2.Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.
译文:配置“compile”已过时,已替换为“implementation”和“api”。
在app-build.gradle 的 dependencies 中引用的一些三方库 是以compile 开头的,例如:
compile 'io.reactivex:rxjava:1.1.5'
compile 'io.reactivex:rxandroid:1.2.0'
将其替换为:
implementation 'io.reactivex:rxjava:1.1.5'
implementation 'io.reactivex:rxandroid:1.2.0'
3.Android保存资料到SD卡报错的解决
保存信息到/mnt/sdcard/目录下,日志打印如下:
Emulator without host-side GPU emulation detected. Loading gralloc.default.so from /vendor/lib/hw/gralloc.default.so...
原因:模拟器sdcard没有分配内存空间
解决:找到你运行的模拟器,点击Edit,给sd卡分配一个内存空间
给模拟器的sd卡分配空间.png
4.Android在Eclipse中不显示超类AndroidTestCase的解决
单元测试时,创建继承自AndroidTestCase超类时,找不到这个超类
找不到.png
百度只有一条,还答非所问(我已更新回答)
原因:安卓版本造成的
解决步骤如下:
1.菜单进入project- Properties- Android中
2.在Project Build Target里面勾选支持的最低版本的安卓SDK。
我将Android 9 改成了Android 4.1.2 ,然后就OK了
修改的方法.png
正常的.png
5.Activity跳转错误-回到了上一页
问题描述:
1.我有三个Activity:Activity_test1、Activity_test2、Activity_test3
2.Activity_test1 跳 Activity_test2,Activity_test2 跳 Activity_test3
3.Activity_test2上有一个button,xml布局中设置了onClick="clickJumpToTest3",结果在点击该方法时,却没有跳转到Activity_test3,而是又回到了Activity_test1.
错误原因:
实现clickJumpToTest3的方法写成了private 私有的,将其改为public即可
错误的代码:
private void clickJumpToTest3(View view){
Intent intent = new Intent(getApplicationContext(),Activity_test3.class);
startActivity(intent);
}
正确的代码:
public void clickJumpToTest3(View view){
Intent intent = new Intent(getApplicationContext(),Activity_test3.class);
startActivity(intent);
}
6.传值失败导致返回上一页
错误描述:点击传值跳转下一页Activity时,跳转到了上一页
错误提示: Caused by: android.os.TransactionTooLargeException: data parcel size 12698024 bytes
错误原因:传递的参数或返回的值过大
规则描述:
1.调用的参数和返回值是要转换成 Parcel 对象进行传递的;
2.Parcel 对象是存储在 Binder transaction buffer 里面的;
3.如果参数或者返回值过大,导致buffer放不下的话,程序就会失败并且抛出 TransactionTooLargeException 异常;
4.这个 Binder transaction buffer 有一个固定的大小 1MB;
5.这个1MB空间是提供给一个进程的所有 transaction 使用的,因此transaction调用的参数大小并不大但是数量很多的时候,也会抛出这个 Exception;
解决方法:
让所有的 transaction 尽可能的小;
尽量去缩小远程调用 Service 的参数大小和返回值;
禁止传递大数组、String 字串或者一个大的 Bitmap 对象;
如果可以的话,尽量把大的请求分解成一个个小的调用;
网友评论