Android接收器动态工作,但不通过清单文件
我有一个广播接收器,它在我动态设置它时工作,但在清单文件中声明时不工作 我已经在谷歌上搜索过了,所有的例子都符合我在代码中所做的。我的清单文件中确实有一个活动,所以这不会是问题所在。我尝试过完全指定receiver类名以及使用.MyBroadcastReceiver,但没有任何区别 有人能帮忙吗 这是我的清单文件Android接收器动态工作,但不通过清单文件,android,Android,我有一个广播接收器,它在我动态设置它时工作,但在清单文件中声明时不工作 我已经在谷歌上搜索过了,所有的例子都符合我在代码中所做的。我的清单文件中确实有一个活动,所以这不会是问题所在。我尝试过完全指定receiver类名以及使用.MyBroadcastReceiver,但没有任何区别 有人能帮忙吗 这是我的清单文件 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.andr
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mikrodyne.receiverdemo" >
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver
android:name="com.mikrodyne.receiverdemo.MyBroadcastReceiver"
android:enabled="true">
<intent-filter>
<action android:name="android.intent.action.HEADSET_PLUG" />
</intent-filter>
</receiver>
</application>
</manifest>
短暂性脑缺血发作
Nisha Miller如果要从外部获取事件,需要设置
android:exported=“true”
注意:你不能达到这个目的
将其放入您的AndroidManifest.xml
<receiver
android:name="com.mikrodyne.receiverdemo.MyBroadcastReceiver"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.HEADSET_PLUG" />
</intent-filter>
</receiver>
根据:
您不能通过清单中声明的组件接收此信息,只能通过向显式注册来接收
因此,您想做的是不可能的。谢谢!我错过了文件的那部分:-(
<receiver
android:name="com.mikrodyne.receiverdemo.MyBroadcastReceiver"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.HEADSET_PLUG" />
</intent-filter>
</receiver>