自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 protected-broadcast广播

如果isCallerSystem为true,则会调用如下代码,方法checkBroadcastFromSystem检查是否为protected-broadcast,如果不是,则打印“Sending non-protected broadcast”代码在frameworks/base/services/core/java/com/android/server/am/ActivityManagerService.java 中,2中所说的异常对应的代码如下。对于isCallerSystem的判断如下。

2024-02-29 15:46:50 506

原创 android控件状态值保存的问题

Activity.java --onSaveInstanceStatePhoneWindow.java --saveHierarchyStateView.java --saveHierarchyState--dispatchSaveInstanceStateActivity.java --onRestoreInstanceStatePhoneWindow.java --restoreHierarchyStateView.java --restoreHierarchyState

2024-01-18 15:12:26 362 1

原创 子线程不能UI绘制,但可以弹toast

就可以正常弹toast了,这是因为Toast.java中显示toast是在handleMessage中处理的,不执行Looper.loop();Looper.loop为死循环,阻塞,上面的方法只能该线程执行时弹一次toast,如果要多次弹toast,或某个条件达到让弹toast,最好把Toast.makeText()放在handleMessage中。原因是相同的,需要该线程有Looper。

2023-12-06 16:09:10 399 1

原创 thread的interrupt不生效

参考文档:https://blog.csdn.net/qq_18431401/article/details/108808710。在实现需要线程休眠几秒中,不断循环,在其他地方通过interrupt 设置中断,发现interrupt不生效。interrupted最终调用到thread.cc中的Interrupted方法,这里会重置值为false。所以后面再调用isInterrupted,获取的值就是false了。原因是sleep()方法中调用了interrupted()

2023-09-18 15:59:05 320

原创 Activity中调用showDialog(int id)不重新创建的问题

在自己的Activity中调用showDialog(int id),覆写了onCreateDialog方法,有两处地方调用showDialog(int id)方法,去赋值了不同的message,用于diaolog中显示出来。看Activity.java中的代码,发现了问题所在,在showDialog方法中,会从 mManagedDialogs取出对应的id的dialog,看是否为null,为空则调用createDialog,否则不调用createDialog。

2023-08-28 11:50:31 56 1

原创 anrwatchdog的使用

下载地址:https://github.com/SalomonBrys/ANR-WatchDog#with-gradle–android-studio可以只下载jar包,放在libs下import com.github.anrwatchdog.ANRWatchDog;主线程中使用new ANRWatchDog().start(); 默认检测5s内没响应,就为anr可以修改时长new ANRWatchDog(10000).start();更多使用方法查看上面的链接,写的挺详细的...

2020-12-12 09:58:40 746

原创 ndk开发中遇到的问题

参考:1、书籍《Android开发艺术探索》第14章2、https://blog.csdn.net/u010356768/article/details/91414997按照书籍《Android开发艺术探索》第14章中NDK开发流程,写好代码编译,手机中装上APK,出现闪退的问题,抓取log,是找不到so库,是因为Application.mk中写的是armeabi,这样只包含armeabi类型的so库,把armeabi改成all,成功。遇到的另一个问题是,打算通过AndroidStudio来自动编译产

2020-06-13 18:22:18 143

原创 内部类形式的BroadcastReceiver

今天写了内部类形式的BroadcastReceiver,发现静态注册时,接收不到广播,就算写成public static的形式也不行。动态注册时,可以接收广播。网上找了下,发现下面的资料,内容如下,链接:https://zhidao.baidu.com/question/1447980236391762140.html今天见网友发了这样一个小测试,就是测试如下四种注册Receiver的方法是不...

2019-11-10 22:59:42 267

原创 PRE_BOOT_COMPLETED和BOOT_COMPLETED区别

Intent.ACTION_PRE_BOOT_COMPLETED=android.intent.action.PRE_BOOT_COMPLETEDIntent.ACTION_BOOT_COMPLETED=android.intent.action.BOOT_COMPLETEDPRE_BOOT_COMPLETED在烧完版本启动、恢复出厂设置后,会有这个广播,适合手机需要进行一次设置相关参数等时使...

2019-11-09 18:53:30 2916

原创 activity启动模式

activity启动模式有四种1、standard这个是活动启动的默认模式,系统不会管这个活动在栈中是否存在,每次启动都会创建一个新的实例。Intent intentSelf= new Intent(MainActivity.this, MainActivity.class);startActivity(intentSelf);如上面的自己启动自己,还是会创建的。2、singleTop.........

2019-11-06 23:32:24 305

原创 activity在AndroidManifest文件中定义了action,必须同时定义category

工作中看代码多,写代码少,所以有的细节并不很清楚今天写个代码,发现在AndroidManifest.xml中的Activity中定义了action,另一个activity通过隐式启动这个activity,却启动不了,最终发现是需要同时定义category...

2019-10-30 23:57:53 417

原创 JSON数据转换成XMl,并写入XML文件

需要把JSON数据转换成XMl,并写入XML文件,格式如:但从网上查找的方法都是如下这种:xmlSerializer.startTag(null, “body”);xmlSerializer.text(sms.getBody());xmlSerializer.endTag(null, “body”);用这种方法写出来的是: carrier=“Airtel-MMS” mcc=“460”...

2019-10-14 09:19:03 1124

原创 android编译报错,错误:程序包com.android.internal.R不存在

第一次尝试写博客,记录今天遇到的一个坑。因为新加的类使用了com.android.internal.R的资源,编译报错,错误:程序包com.android.internal.R不存在。最终发现是sdk_version:"system_current"的问题,注释掉这行就可以了...

2019-09-16 21:09:55 2295

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除