对讲机不工作在android 12 Xamarin形式



io.intercom.android.sdk.fcm.IntercomFcmMessengerService:瞄准S+(版本31及以上)需要在存在意图过滤器时定义android:exported的显式值

我知道我必须在清单中添加类似的东西,但仍然找不到它

<receiver android:name="" android:exported="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</receiver>

在Android 11及以下版本中,当在AndroidManifest中声明Activity,ServiceBroadcast接收器时,您没有显式声明android:exported。由于默认值是exported=true,所以只有在不希望对外公开时才需要声明exported=false

例如:

<activity android:name="com.example.app.backgroundService">
<intent-filter>
<action android:name="com.example.app.START_BACKGROUND" />
</intent-filter>
</activity>

Android 12更改:将SDK API 31 (Android 12)设置为Android 12设备上的目标SDK的应用程序必须在组件中显式声明export,例如声明intent-filter的Activity。

例如,您必须显式声明exports如下:

<service android:name="com.example.app.backgroundService"
android:exported="false">
<intent-filter>
<action android:name="com.example.app.START_BACKGROUND" />
</intent-filter>
</service>

总之,android:exported="true""android:exported="false"必须添加到所有receivers,servicesactivity标签中,其中包含意图过滤器。

注意:

你可以在应用程序的obj文件夹中找到AndroidManifest.xml.我的文件夹是MyAndroidProjectobjDebug120.

找到文件AndroidManifest.xml后,您可以重新检查是否已将标签android:exported添加到所有receivers,servicesactivity

相关内容

  • 没有找到相关文章

最新更新