Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React native 反应本机重定向到应用程序(如果已安装),否则重定向到应用程序商店或PlayStore_React Native_Deep Linking - Fatal编程技术网

React native 反应本机重定向到应用程序(如果已安装),否则重定向到应用程序商店或PlayStore

React native 反应本机重定向到应用程序(如果已安装),否则重定向到应用程序商店或PlayStore,react-native,deep-linking,React Native,Deep Linking,我想在按下应用程序链接时重定向为:- 如果未安装应用程序,则转到playstore或AppStore 如果应用已安装,请打开我的应用(带有深度链接) 我到目前为止所做的:- 我使用react导航5的深度链接实现了要求2。 作为:- App.js:- <NavigationContainer linking={linking} ref={navigationRef}> { props.global.switchApp.isLoading ?

我想在按下应用程序链接时重定向为:-

  • 如果未安装应用程序,则转到playstore或AppStore
  • 如果应用已安装,请打开我的应用(带有深度链接)
  • 我到目前为止所做的:-

    我使用react导航5的深度链接实现了要求2。 作为:-

    App.js:-

    <NavigationContainer linking={linking} ref={navigationRef}>
            {
                props.global.switchApp.isLoading ?
                    <SplashStack />
                    :
                    (
                        props.global.user.accessToken !== null ?
                            <AppStack /> :
                            <AuthStack />
                    )
            }
        </NavigationContainer>
    
    并在项目的
    target
    中添加
    url类型

    并在
    Appdelegate.m
    文件中显示为:-

    - (BOOL)application:(UIApplication *)application
            openURL:(NSURL *)url
            options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
    
     // Add any custom logic here.
     BOOL deepLinking =  [RCTLinkingManager application:application openURL:url options:options];
    return  deepLinking;
    }
    
    -(BOOL)应用程序:(UIApplication*)应用程序
    openURL:(NSURL*)url
    选项:(NSDictionary*)选项{
    //在这里添加任何自定义逻辑。
    BOOL deepLinking=[RCTLinkingManager应用程序:应用程序openURL:url选项:选项];
    返回深度链接;
    }
    
    我如何在使用时达到要求1


    谢谢

    要打开应用程序或打开应用程序商店或游戏商店,请在应用程序链接上单击,如果未安装应用程序,请尝试firebase动态链接功能

    查看文档了解更多信息

    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data
          android:host="com.app"
          android:scheme="http" />
      </intent-filter>
    
    - (BOOL)application:(UIApplication *)application
            openURL:(NSURL *)url
            options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
    
     // Add any custom logic here.
     BOOL deepLinking =  [RCTLinkingManager application:application openURL:url options:options];
    return  deepLinking;
    }