Ios 无论是否安装应用,动态链接始终打开应用商店

Ios 无论是否安装应用,动态链接始终打开应用商店,ios,firebase,react-native,firebase-dynamic-links,Ios,Firebase,React Native,Firebase Dynamic Links,我与动态链接斗争了好几天。谢谢你的帮助。 我集成了firebase动态链接,如果我将链接粘贴到chrome url中并按enter键,它可以打开应用程序,并触发事件并传递url 但如果我单击预览页面上的“打开”按钮,无论应用是否已安装,它都会打开应用商店 有什么想法吗 我已经浏览了网上的所有帖子,但是运气不好 "react-native": "^0.59.5" "react-native-firebase": "^5.3.1" pod 'Firebase/Core', '~> 5.20.

我与动态链接斗争了好几天。谢谢你的帮助。 我集成了firebase动态链接,如果我将链接粘贴到chrome url中并按enter键,它可以打开应用程序,并触发事件并传递url 但如果我单击预览页面上的“打开”按钮,无论应用是否已安装,它都会打开应用商店 有什么想法吗

我已经浏览了网上的所有帖子,但是运气不好

"react-native": "^0.59.5"
"react-native-firebase": "^5.3.1"

pod 'Firebase/Core', '~> 5.20.1'
pod 'Firebase/DynamicLinks', '~> 5.20.1'
firebase控制台上的域:
https://links.umrgo.com/links

捆绑包id:
com.umrgo.www.umr-app-ios

URL Types identifier: links.umrgo.com
URL Types identifier: com.umrgo.www.umr-app-ios


capabilities: applinks:links.umrgo.com
发布版本

我还添加了带有字符串数组的FireBaseDynamicClinksCustomDomains

我的一些代码如下

   [FIROptions defaultOptions].deepLinkURLScheme = @"com.umrgo.www.umr-app-ios";

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
            options:(NSDictionary<NSString*, id> *)options
{
  BOOL handled = [[RNFirebaseLinks instance]
                  application:application
                  openURL:url
                  options:options
                  ] || [RCTLinkingManager
                        application:application
                        openURL:url
                        options:options
                        ];

  return handled;
}

- (BOOL)application:(UIApplication *)application
continueUserActivity:(NSUserActivity *)userActivity
 restorationHandler:(void (^)(NSArray *))restorationHandler {
  BOOL handled = [[RNFirebaseLinks instance]
                  application:application
                  continueUserActivity:userActivity
                  restorationHandler:restorationHandler
                  ] || [RCTLinkingManager
                        application:application
                        continueUserActivity:userActivity
                        restorationHandler:restorationHandler
                        ];

  return handled;
}

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
  BOOL handled = [RCTLinkingManager
                  application:application
                  openURL:url
                  sourceApplication:sourceApplication
                  annotation:annotation
                  ];
  return handled;
}


const link = new firebase.links.DynamicLink(`https://www.umrgo.com/publish/${publishId}?publishType=${publishType}&publishId=${publishId}&otherUserUnionId=${currentUserUnionId}&conversationId=${conversationId}`,
        'links.umrgo.com/links').android.setPackageName(conf.GooglePackageName).ios.setBundleId(conf.AppleBundleId).ios.setAppStoreId(conf.AppleAppID);

firebase.links()
    .createShortDynamicLink(link, 'UNGUESSABLE')
    .then((url) => {
        var payload = {
            key: createLinkUniqueKey(conversationId, publishId, currentUserUnionId, publishType),
            url: url,
            publish_id: publishId,
            target_user_unionid: currentUserUnionId,
            conversation_id: conversationId,
            publish_type: publishType
        }
        axios.post(getApiEndpoint(conf.UMRApiUrls.createDynamicLinkRemote), payload, {
            headers: getAuthHeader()
        }).then(response => {
            console(response)
        })
    });
[FIROptions defaultOptions].deepLinkURLScheme=@“com.umrgo.www.umr-app-ios”;
-(BOOL)应用程序:(UIApplication*)应用程序openURL:(NSURL*)url
选项:(NSDictionary*)选项
{
BOOL handled=[[RNFirebaseLinks实例]
应用程序:应用程序
openURL:url
选项:选项
]| |[RCT链接管理器
应用程序:应用程序
openURL:url
选项:选项
];
处理退货;
}
-(BOOL)应用程序:(UIApplication*)应用程序
continueUserActivity:(NSUserActivity*)用户活动
restorationHandler:(void(^)(NSArray*)restorationHandler{
BOOL handled=[[RNFirebaseLinks实例]
应用程序:应用程序
continueUserActivity:userActivity
restorationHandler:restorationHandler
]| |[RCT链接管理器
应用程序:应用程序
continueUserActivity:userActivity
restorationHandler:restorationHandler
];
处理退货;
}
-(BOOL)应用程序:(UIApplication*)应用程序openURL:(NSURL*)url
sourceApplication:(NSString*)sourceApplication注释:(id)注释
{
BOOL handled=[RCTLinkingManager
应用程序:应用程序
openURL:url
sourceApplication:sourceApplication
注释:注释
];
处理退货;
}
const link=new firebase.links.DynamicLink(`https://www.umrgo.com/publish/${publishId}?publishType=${publishType}&publishId=${publishId}&otherUserUnionId=${currentUserUnionId}&conversationId=${conversationId}`,
'links.umrgo.com/links').android.setPackageName(conf.GooglePackageName.ios.setBundleId(conf.AppleBundleId.ios.setAppStoreId(conf.AppleAppID);
firebase.links()
.createShortDynamicClink(链接“UNGUESSABLE”)
。然后((url)=>{
var有效载荷={
键:createLinkUniqueKey(会话ID、publishId、currentUserUnionId、publishType),
url:url,
publish_id:publishId,
目标用户联合ID:currentUserUnionId,
会话id:conversationId,
发布类型:publishType
}
post(getApiEndpoint(conf.UMRApiUrls.createDynamicLinkRemote),有效负载{
标题:getAuthHeader()
})。然后(响应=>{
控制台(响应)
})
});
以下是一些快照:


我的一些快照您可以共享动态链接URL吗?在
createShortDynamicClink()
之后,回调中的
url
是什么?类似这样的东西,好吧,我明白了。对于首次尝试测试此功能的任何人,当您点击链接时,您可以选择在app中打开或在safari中打开,如果您选择在app中打开,一切看起来都很好,但是如果您选择在safari中打开,打开按钮将始终重定向到app store。