网站首页 > 教程分享 正文
作者
传智播客-武汉校区
就业指导田老师
BUG-1
问题描述:MainActivity中handleMessage方法应该是重写Handler的方法, 不应该是自己在MainActivity添加的一个方法, 33行new Handler应该将下面的handleMessage方法使用大括号包裹在内。
解决方案:运行时MainActivity中抛出PointerException。
BUG-2
问题描述:xml文件无法解析.解析时出现死循环。
解决方案:XMLPullParser解析xml文件时, 需要不停走向下一个事件, 需要调用对象的next方法, 在123行下面加上一句eventType=parser.next;
BUG-3
问题描述:无法获取图片。
解决方案:创建了线程对象但是没有开启, 需要调用线程对象的start方法。
BUG-4
问题描述:自己电脑里面运行很好, 拷到其他人电脑上无法获取数据。
解决方案:添加数据到数据库的方法写在数据库的onUpgrade方法里, 需要改到SQLiteOpenHelper的onCreate方法里。
BUG-5
问题描述:点击发送短消息抛出
java.lang.SecurityException。
解决方案:发送短信需要添加权限, 在AndroidManifest.xml中添加
android.permission.SEND_SMS权限。
BUG-6
问题描述:new Handler时有黄线, 提示可能泄露是什么原因。
解决方案:在Activity内部new Handler, 也就是当handler对象是activity的属性时, 在Activity退出被回收时, 如果handler还有未处理完的消息, 也就是说消息队列中还有消息时, handler是不会回收的, 而handler是activity的属性, 在activity内部创建handler对象的, 也只有activity持有它的引用, 如果activity退出时没有回收handler, 那么handler将不会被回收了.就造成内存泄露了。
BUG-7
问题描述:Handler发送消息的流程是怎样的。
解决方案:Handler将消息放入Handler所在线程的Looper中的MessageQueue中, 如果是send发送消息, 将消息直接放入, 如果是post发送消息, 从消息池获取一个消息, 将post的参数Runnable对象赋值给该消息的callback'属性, 将这个消息放入。MessageQueue有一个死循环在控制消息在队列中的顺序。HandlerThread的run方法中调用Looper的loop方法, loop方法中有一个死循环, 将MessageQueue中的消息一一取出交给Handler的dispatchMessage方法, dispathMessage方法判断发送消息是post还是send, 如果是post, 将消息中的callback的run方法直接调用, 如果是send就将消息交给Handler的handleMessage方法。
BUG-8
问题描述:主线程为什么不能进行耗时操作。
解决方案:主线程负责界面绘制, 如果被阻塞, 界面将失去响应。
BUG-9
问题描述:加载大图片出异常怎么处理。
解决方案:先加载边框, 算出缩放比例, 将图片缩放加载。
BUG-10
问题描述:从MainActivity跳转到SecondaryActivity之后, 界面上的按钮点击2次后抛出异常NoSuchMethod。
解决方案:SecondaryActivity的布局文件中的按钮添加了点击事件, 但是代码中并没有写。添加对应的onclick事件。
BUG-11
问题描述:MainActivity跳转到选取短信的界面选取短信, 在MainActivity获取到选择的短信后跳到发送短信的界面, 在该界面得不到选取的短信。
解决方案:MainActivity的onActivityResult方法中的第二个if判断写错位置了, 改到第一个if之外。
各位老师可以把整理的bug提交给小谷,也可以和小谷要更多的教学资源和学习干货哦!(关注微信(教学好助手:boxuegu)直接回复或者加QQ2011168841)
猜你喜欢
- 2025-05-05 有了这份900多页的Android面试指南,你离大厂Offer还远吗?
- 2025-05-05 K2 Blackpearl 流程平台总体功能介绍:常规流程功能
- 2025-05-05 零基础安卓开发起步(一)(安卓开发入门视频)
- 2025-05-05 教程:让你的安卓像Windows一样实现程序窗口化运行
- 2025-05-05 Android事件总线还能怎么玩?(事件总线有什么好处)
- 2025-05-05 Android 面试被问“谈谈架构”,到底要怎样回答才好?
- 2025-05-05 Android开发工具Parcel和Serialize
- 2025-05-05 Android 中Notification的运用(notification widget安卓)
- 2025-05-05 Android退出所有Activity最优雅的方式
- 2025-05-05 MT管理器-简单实战-去除启动页(mt管理器怎么去除软件弹窗)
你 发表评论:
欢迎- 最近发表
-
- 有了这份900多页的Android面试指南,你离大厂Offer还远吗?
- K2 Blackpearl 流程平台总体功能介绍:常规流程功能
- 零基础安卓开发起步(一)(安卓开发入门视频)
- 教程:让你的安卓像Windows一样实现程序窗口化运行
- Android事件总线还能怎么玩?(事件总线有什么好处)
- Android 面试被问“谈谈架构”,到底要怎样回答才好?
- Android开发工具Parcel和Serialize
- Android 中Notification的运用(notification widget安卓)
- Android退出所有Activity最优雅的方式
- MT管理器-简单实战-去除启动页(mt管理器怎么去除软件弹窗)
- 标签列表
-
- css导航条 (66)
- sqlinsert (63)
- js提交表单 (60)
- param (62)
- parentelement (65)
- jquery分享 (62)
- check约束 (64)
- curl_init (68)
- sql if语句 (69)
- import (66)
- chmod文件夹 (71)
- clearinterval (71)
- pythonrange (62)
- 数组长度 (61)
- javafx (59)
- 全局消息钩子 (64)
- sort排序 (62)
- jdbc (69)
- php网页源码 (59)
- assert h (69)
- httpclientjar (60)
- postgresql conf (59)
- winform开发 (59)
- mysql数字类型 (71)
- drawimage (61)
本文暂时没有评论,来添加一个吧(●'◡'●)