0

有一些关于Android4.2 Broadcast的问题,

android.intent.action.TIME_TICK

android.intent.action.PACKAGE_INSTALL

这两个受保护的广播在 /frameworks/base/core/res/AndroidManifest.xml 中定义

只找到注册接收器使用的地方Context.registerRecriver()

问题:在哪里发送此广播附加android.intent.action.TIME_TICK

谢谢

4

2 回答 2

1

如果你在清单文件中声明它是不够的。清单文件就像一个蓝图。你需要在那里声明广播接收器,之后你需要在你的代码中注册广播接收器,我附上示例广播接收器代码。

 batteryLevelFilter= new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
    this.registerReceiver(batteryLevelReceiver, batteryLevelFilter);
BroadcastReceiver batteryLevelReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
                  //yourcode

            }
};
于 2017-01-24T06:26:58.613 回答
0

您无法通过清单中声明的​​组件接收此信息,只能通过使用 Context.registerReceiver() 显式注册它。

并且只能由系统发送。

您必须以编程方式注册此意图:每分钟发送一次。

像这样

IntentFilter if = new IntentFilter(Intent.ACTION_TIME_TICK);
registerReceiver(YourReceiver, if);
于 2017-01-10T09:54:53.547 回答