android异常记录
来源:互联网 发布:windows怎么启动 编辑:程序博客网 时间:2024/05/17 23:23
<span style="font-size:24px;"><span style="font-size:18px;">1.Fragment not attached to Activity 异常原因:因为Fragment在还没有Attach到Acitivity时,调用了诸如getResource()方法 如 getResources().getString(R.string.a);解决方案,在获取资源之前调用isAdded()方法,判断Fragment 是否被添加到所属的Activity,添加返回true,反之,返回false。2. unable to start receiver 不能启动BroadcastReceiver 原因:使用Activity以外的context来startActivity时,必须制定Intent.FLAG_ACTIVITY_NEW_TASK , 如,在BroadcastReceiver中启动一个activity,Intent in=new Intent(xx,xx.class); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent);3.Unable to instantiate receiver 找不到服务原因是 manifest中对应的包名不对。4.writing serializable object(name=xxx) 对象不支持序列化原因:某个类没有 implements Serializable 或者没有implements parcelable接口注意的是,JSONObjecthe JSONArray不支持序列化5.ClassNotFoundException when unmarshalling 序列化时未指定ClassLoader原因:在使用Parcelable机制的时候,会出现。如: public class MyParcelable implements Parcelable{private String mStr;private ClassA a;private MyParcelable(Parcel in){mStr=in.readString();a=in.readParcelable(null);//此处会崩溃 对a的反序列化上。 应改为 a=in.readParcelable(ClassA.class.getClassLoader());}}6.Unable to add window-- token null is not for an application 如:new AlertDialog.Builder(getApplicationContext())原因;AlertDialog.Builder() 参数不可以是 getApplicationContext()获取到的context 应该是一个Activity 即xxxActivity.this;7.unable to add window android.view .ViewRootImp1$W... --permission denied for this window type 在使用WindowManager.LayoutParams.TYPE_ALERT 自定义弹出框的时候,没有加权限。在manifest中加入SYSTEM_ALER_WINDOW和SYSTEM_OVERLAY_WINDOW权限 前者允许应用使用SYSTEM_ALER_WINDOW打开窗口,后者允许使用窗体覆盖window上。8.UnstatisfiedLinkError 项目中so文件么有加载到,libs下面没有导入.so文件或者没有导全。9.No permission to modify thread 没有加权限有的手机是禁止app打电话的,即使添加权限,所以为了避免发生此类异常,我们在调用之前先加判断,比如判断是否有打电话的权限PackageManager pm=getPackageManager();boolean hasPermission=pm.checkPermission(Manifest.permisson.CALL_PHONE,getPackageName())==PackageManager.PERMISSION_GRANTED;如果hasPermission返回的是true 证明有这个权限if(hasPermission){Intent intent=new Intent(Intent.ACTION_CALL,Uri.parse("tel:1385455845"));}10.SecurityException Intent 中图片太大用Intent进行传值的时候,尽量不要超过1MB的数据,尽量不要传递Bitmap.11.ActivityNotFoundException Unable to find explicit activity class{com.android.settings/com.android.settings.WirelessSettings};当打开系统Wifi设置会报此错误。 原因是,4.0以上把原来的打开网络设置方式舍弃了。if(Build.VERSION.SDK_INT>13){//3.2以上带卡设置页面startActivity(new Intent(android.provider.Settings.ACTION_SETTINGS));}else{startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS));}12.Service Intent must be explicit 启动服务异常android升级到5.0以后会发生,应该用下面的代码启动serviceIntent inttent=new Intent();intent.setAction("your action name");intent.setAction(getPackageName());context.startService(intent);13.JSON解析异常getString("key"); key在JSON字符串中不存在,此种解析会抛出异常optString("xxxx");key在JSON字符串中不存在,此种解析会返回空getArray()与optArray也是如此,建议用后者。14.No package identifier when getting value for resource number ...LayouInflater.from(context).inflate();此方法一定不能再父类或者虚类中调用如:View view =LayoutInflater.from(context).inflate(R.layout.xxx,this,true);android系统就会搞不明白这个this是谁,所以不能这么写。15.android.content.res.Resources$NotFoundException: String resource ID #0x1此错误为xxx.setText(a),参数a是int类型 应该为xxx.setText(String.value(a))或者xxx.setText(a+“”)16.android 用webview加载数据时,报android 网页无法加载 net::ERR_TIMED_OUT原因是在开代理。17.E:\Work\ActivityAnimation\app\src\main\res\layout\seconditemW.xml: Error: 'W' is not a valid file-based resource name character: File-based resource names must contain only lowercase a-z, 0-9, or underscore布局文件命名的时候不可是大写字母,只允许是a-z 0-9和下划线18.Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'.Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Button.Colored'.此错误背景是,项目中运用到了RecyclerView,出现这个问题的原因是:Check Build Target of your project and appcompat_v7 library project. They should be same, if your project has lesser Build Target than you get this error and won't be able to build.19.WebView加载url的时候,报登录过期,此时webview的loadUrl方法,相当于get请求,同时要在url路径后拼上ticket,如www.ddd.cn?ticket=xxxxx;20.v4包下的ViewCompat类中找不到setAlpha setScaleX setScaleY 方法原因:不明 估计是v4包版本不能太低,不过解决了, 换了一个v4包,就可以了,com.android.support:support-v4:22.2.1。21.进入activity后隐藏键盘 ScrollView中嵌套ListView时,同时可做到防止自动滑动到底部在父布局中加入如下属性 android:focusable="true" android:focusableInTouchMode="true" 22.java.lang.RuntimeException: Unable to start activity ComponentInfo{cn.doolii.shopping/cn.doolii.shopping.view.uploadImage.AlbumUploadActivity}: java.lang.SecurityException: Permission Denial: reading com.android.providers.media.MediaProvider uri content://media/external/images/thumbnails from pid=27138, uid=10103 requires android.permission.READ_EXTERNAL_STORAGE, or grantUriPermission()at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2453)在拍照的时候报如上问题,原因是没有添加相机权限<uses-permission android:name="android.permission.CAMERA" />同时android6.0以上系统新出权限问题解决方法如下:public final static int MY_PERMISSIONS_REQUEST_READ_CONTACTS=1;在调用需要权限的方法,调用如下方法:@TargetApi(Build.VERSION_CODES.M)private void getPermission() { if (ContextCompat.checkSelfPermission(UploadPicActivity.this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) { //申请CAMERA的权限 requestPermissions(new String[]{Manifest.permission.CAMERA}, MY_PERMISSIONS_REQUEST_READ_CONTACTS); } else { photo(); pop.dismiss(); ll_popup.clearAnimation(); }}返回结果@Overridepublic void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); switch (requestCode) { case MY_PERMISSIONS_REQUEST_READ_CONTACTS: if (grantResults[0] == PackageManager.PERMISSION_GRANTED) { photo(); } else { Toast.makeText(UploadPicActivity.this, "请打开相机权限", Toast.LENGTH_LONG).show(); } break; }}23.在布局中为ImageView设置默认图片src=“@drawablexxx”然后在代码中调用imageView.setBackGgroundDrawable();发现ImageView的图片还是默认的布局中的,而不是我们动态设置的,解决方法,就是不要在布局中写src</span></span>
0 0
- Android异常记录
- Android 应用异常记录
- Android异常解决方案记录
- android 异常记录
- Android 异常记录
- Android异常问题记录
- android异常记录
- Android Fragment异常记录
- Android studio 异常记录
- Android常见异常记录
- Android异常记录
- Android访问WebService异常记录
- Android记录异常到本地
- Android 记录异常 并重启
- android运行异常记录及解决方案
- Android异常记录-HttpClient中文名称乱码
- Android Studio Gradle相关异常记录
- android studio使用异常解决记录
- 一些MYSQL查询语句
- shell 生成随机数
- HDOJ 1338 Game Prediction
- 【一天一道LeetCode】#63. Unique Paths II
- win7 win10 通过ipv6上网的方法
- android异常记录
- https在电子邮件安全解决方案
- 给app添加桌面快捷方式
- intval()很重要
- iOS极光推送证书
- js url传值中文乱码之解决
- 第十三周实践项目-阅读、修改和运行关于交通工具类的程序(3)
- 第十三周项目2.3—动物这样叫
- 关于浏览器无法访问某些网站的问题