Android各种常见异常及处理----未完成
来源:互联网 发布:mysql时间格式 编辑:程序博客网 时间:2024/05/31 11:04
1:ArrayAdapter.add()和ArrayAdapter.remove()方法UnsupportedOperationException
原因:因为创建ArrayAdapter时候没有给他分配一个ArrayList
另外主要是因为系统官方API没有这个方法,解决不了可以考虑不用
解决方法:先创建一个ArrayList
List<CharSequence]]>planets=newArrayList<CharSequence]]>();
再用这个ArrayList去创建ArrayAdapter
adapter=newArrayAdapter<CharSequence]]>(context, R.array.planets_array, planets);
2:使用Fragment时遇到Binary XML file line #9: Error inflating class fragment
解决方法:
fragment加入的Activity 应该继承于 FragmentActivity
3:java.net.SocketException:Noroute
原因:wifi未打开,无路由
解决方法:wifi未打开,重新打开
4:java.net.SocketException: Permission denied (maybe missing INTERNET permission)
原因:网络权限未添加 -- 常见的权限未添加异常
解决方法:添加网络请求权限
<uses-permission android:name="android.permission.INTERNET" />
5:java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
原因:不能在线程中操作主线程,比如在线程中创建dialog,更新UI等都是不可以的
解决方法:在主线程中创建handler,通过handler.sendmessage()来更新UI,因为在主线程中创建的handler属于主线程,起所有handlemessage操作都是在主线程中执行
6:java.lang.IllegalArgumentException: The key must be an application-specific resource id.6
原因:应该是R.id.xxx 被替换成了1,2,3这种常用数字,id不唯一
解决方法:使用R.id.xxx
7:NetWorkOnMainThreadException
原因:在Android2.3以上版本中--网络请求需要在放在线程中,目的是为了防止阻塞UI线程,当网络请求在UI线程中时会抛出该异常
解决方法:将网络请求放在线程中
例1:放在new Thread中 new Thread(new Runnable()).start;
例2:新建内部AsyncTask类
8:java.io.FileNotFoundException: /open failed: ENOENT (No such file or directory)
原因:要打开的File不存在
解决方法:新建该文件
9:java.lang.RuntimeException: Unable to instantiate receiver xxxxxx(your receiver name):
java.lang.InstantiationException:can't instantiate class xxxxx(your receiver name) ;no empty constructor
原因:当使用BroastcastReceiver 构造函数中会传入参数时,此类BroastcastReceiver 不能在AndroidManifest.xml中声明,因为Receiver构造函数中参数会为空值,导致下列异常产生,需要动态绑定BroastReceiver
解决方法:
you receiver class =new you receiver class(getActivity().getApplicationContext());
IntentFilter intentFilter =new IntentFilter();
//添加过滤条件
intentFilter.addAction(InfoReceiver.NEWMESSAGE);
intentFilter.addAction(InfoReceiver.NEWSERVICEORDER);
getActivity().getApplicationContext().registerReceiver(your receiver, intentFilter);
- Android各种常见异常及处理----未完成
- Android常见的异常及处理
- 常见异常及处理
- android常见异常处理
- Android常见异常处理
- java常见异常及处理
- ORACLE常见异常及处理
- java 常见异常及处理
- 常见编程异常及处理
- JSP常见异常及处理
- android studio常见错误及异常处理记录
- Android Studio 各种异常处理
- Android常见异常处理整理
- hadoop常见异常及处理方法
- WebDriver(Selenium2) 常见异常及处理方法
- Java 中常见的异常及处理
- python爬虫常见异常及处理方法
- 常见的各种异常
- 深入理解Java内存模型(四)——volatile
- (译)碰撞检测和收集物品:如何使用cocos2d制作基于tiled地图的游戏:第二部分
- java多线程单例模式
- Android dumpsys工具分析
- Am335x 启动过程
- Android各种常见异常及处理----未完成
- 深入理解Java内存模型(六)——final
- MFC中创建动态控件的生成与响应
- 黑马学习笔记——jQuery UI Autocomplete 输入中文不自动完成问题解决方案
- 微信公众平台开发模式网页的BUG
- 7中排序算法的性能比较
- (译)加入敌人和战斗:如果使用cocos2d制作基于tiled地图的游戏:第三部分
- hdu/hdoj 1002 A + B Problem II
- 【骏河】BDC总结