莫问天涯路几重,轻衫侧帽且从容。这篇文章主要讲述Android Studio学习记录-第四周相关的知识,希望能为你提供帮助。
5.2.1动态注册监听网络变化
在onReceive方法中调用getActiveNetworkInfo()时,必须要在app/src/main/androidManifest.xml
里添加权限;
5.2.2
开机广播目前还没有实现。
5.3.1发送标准广播
点击按钮之后没有显示toast,
原因:由于《第一行代码》第二版是基于android7.0进行开发的,而android O(8.0)对 于发送广播进行了限制,我们要指定包名;
此处代码需要调整:
Intent intent = new Intent("com.example.boradcasttest.MY_BROADCAST"); intent.setComponent(new ComponentName("com.example.broadcasttest","com.example.broadcasttest.MyBroadcastReceiver")); sendBroadcast(intent);
调整后即可实现。
【Android Studio学习记录-第四周】5.3.2发送有序广播
这里我们已经可以接受到广播了,但是我们想要让其他应用也接受到这条广播怎么办呢?
如果我们按照《第一行代码》中的代码会发现,broadtest2无法接受到广播
对此,我们需要再发送一条广播,并将这个intent指定为第二个app的package就好了,我们就都可以接收到了。代码如下
Intent intent = new Intent("com,example.broadcasttest.MY_BROADCAST"); intent.setComponent(new ComponentName("com.example.broadcasttest" ,"com.example.broadcasttest.MyBroadcastReceiver")); sendBroadcast(intent); intent.setComponent(new ComponentName("com.example.broadcasttest2" ,"com.example.broadcasttest2.AnotherBroadcastReceiver")); sendBroadcast(intent);
推荐阅读
- 解决 Android Studio(Failed to resolve: com.android.support:appcompat-v7:29.+ 错误)
- 无障碍开发(十七)之京东APP一期优化案例讲解
- Android Locale.getDefault().getCountry()为空
- all()和apply()的区别
- Android中的Prelink技术
- Mac OSX下Appium驱动iPhone真机
- Android之ADB
- APP测试要点以及常见bug分类
- appium---切换webview时报错