Android 异常错误收集和修复

1. 使用 AlertDialog.Builder 弹出框的时候,在不同的手机平台上面出现不同的效果;

例如自己测试结果为:在 小米 22 5.1.1 上显示正常,但是在 荣耀 19 4.4.2 上面却直接挂了;并且出现下图错误

 

最后发现使用的 AlertDialog.Builder 我导入的是 import android.support.v7.app.AlertDialog 包,无法向下进行兼容使用。所以如果将 AlertDialog.Builder 的导入包改为 

import android.support.app.AlertDialog 包,则在两款机型上面都可以进行正常的使用了。

2.原生加载H5界面的时候使用API  view.evaluateJavascript("javascript:setUserId()", null); 如果使用的测试机 SDK 版本在17以下,会出现无法调用该API,应用直接崩掉的问题;所以在不同手机SDK版本上需要做区分判断,使用不同API加载程序

详细的解决办法也可以看: 

https://forums.xamarin.com/discussion/37047/evaluatejavascript-android

https://forums.xamarin.com/discussion/comment/78600/#Comment_78600


3.EditText 光标位置的设置;

具体使用API    EditText.setSelection( int position) 。但是遇到一种没法生效的情况,具体的如下图:


及EditText设置完内容值后,直接使用设置光标的API是无法生效的

相反如果使用 Handler 机制来发送消息改变EditText光标的位置是可以正常使用的,如下图:





4.

Error:(1, 1) A problem occurred evaluating project ':app'.
> Failed to apply plugin [id 'com.android.application']
   > Gradle version 2.10 is required. Current version is 2.8. If using the gradle wrapper, try editing the distributionUrl in F:\XXX\gradle\wrapper\gradle-wrapper.properties to gradle-2.10-all.zip
 
 
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

Gradle的版本太低,那么怎么升级Gradle版本呢,首先打开android studio项目 找到项目目录gradle\wrapper\gradle-wrapper.properties这个文件,最后一句distributionUrl=http://services.gradle.org/distributions/gradle-2.8-all.zip就是Gradle的版本,修改成2.10即可。再次运行程序,AndroidStudio就会自动下载2.10的Gradle版本。


5.获取 AndroidManifest.xml 文件中 debuggable 属性的设定值:

int flags = mContext.getApplicationInfo().flags;
        boolean isDebugMode = ((flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0);

如果 debuggable 属性设定值为 false,则获取到的 isDebugMode 值也为 false;反之则为 ture。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值