Android intent-filter 中的 action 命名,是允许使用冒号 : 的。
之前一直忽略了,[惭愧]。
匹配 action name 的正则表达式 [0-9a-zA-Z._:-]+
action name 可以包含:数字 0-9、小写字母a-z、大写字母A-Z、点.,下划线_,冒号:,横杠- 。
注: 《搜索 AndroidManifest.xml 中的 action》 一文中的正则表达式还没有修改。
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("action:com.galian.test");
registerReceiver(mReceiver, intentFilter);
private fun sendBroadcast() {
val action = "action:com.galian.test"
val intent = Intent(action)
intent.putExtra("ok", "action name is allowed to contain colon")
sendBroadcast(intent)
}