在我的本机应用程序中,我同时使用了FCM推送通知和Deeplinks无法正常导航

时间:2018-07-09 10:00:11

标签: android react-native

这是我的manifest.xml

    <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
            android:windowSoftInputMode="stateAlwaysHidden|adjustPan"
            android:screenOrientation="portrait"
            android:launchMode="singleTop">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter android:label="filter_react_native">
              <action android:name="android.intent.action.VIEW" />
              <category android:name="android.intent.category.DEFAULT" />
              <category android:name="android.intent.category.BROWSABLE" />
              <data android:scheme="peopleapp" android:host="people" />
              <data android:scheme="mychat" android:host="mychat" />
            </intent-filter>
        </activity>
<service
          android:name="io.invertase.firebase.messaging.MessagingService"
          android:enabled="true"
          android:exported="true">
            <intent-filter>
              <action android:name="com.google.firebase.MESSAGING_EVENT" />
            </intent-filter>
        </service>
        <service android:name="io.invertase.firebase.messaging.InstanceIdService" android:exported="false">
          <intent-filter>
            <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
          </intent-filter>
        </service>
        <receiver android:name="io.invertase.firebase.messaging.RNFirebaseLocalMessagingPublisher"/>
        <receiver android:enabled="true" android:exported="true" android:name="io.invertase.firebase.messaging.RNFirebaseSystemBootEventReceiver">
          <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED"/>
            <action android:name="android.intent.action.QUICKBOOT_POWERON"/>
            <action android:name="com.htc.intent.action.QUICKBOOT_POWERON"/>
            <category android:name="android.intent.category.DEFAULT" />
          </intent-filter>
        </receiver>

我使用android:launchMode =“ singleTop”是因为我想在点击推送通知时导航到另一个屏幕。但是如果使用深层链接并单击该weblint,则无法正确导航到我的仅屏幕应用程序启动。但是,如果杀死了该应用程序并点击该链接,它将可以正确导航。

如果我删除此launchMode。深层链接和导航正常运行。但是推送通知功能不起作用。

我既要在推送通知中导航,又要在Deeplink中导航,如何处理这种情况

0 个答案:

没有答案