• 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);

    调整后即可实现。

    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);
  • 相关阅读:
    Berry Jam(前缀后>差值,贪心)
    Privatization of Roads in Treeland (贪心+染色)
    主席树
    C 语言是一门抽象的、面向过程的语言,C 语言广泛应用于底层开发
    限流中间件AspNetCoreRateLimit
    远程调试 Visual Studio2022
    高并发下秒杀
    设计模式的分类和六大原则
    MySQL的锁机制
    代码是怎么运行
  • 原文地址:https://www.cnblogs.com/yangyangyang-xiannv/p/12154362.html
Copyright © 2020-2023  润新知