gpt4 book ai didi

ios - 通用链接 IOS9

转载 作者:行者123 更新时间:2023-11-29 01:39:00 24 4
gpt4 key购买 nike

Apple 似乎正在放弃通过链接打开应用程序的自定义方案机制。
使用自定义方案,如果您尝试打开由您的应用程序注册的自定义方案,应用程序将打开并且 javascript 函数 handleOpenURL 将处理调用。

worklight是否支持IOS9中新的“Universal Links”方法?

最佳答案

在我们的项目中,worklight 没有为开箱即用的通用链接功能触发 handleOpenURL 函数。

因此,我们采用了以下解决方案:

1)原生层插件

MyAppDelegate+UniversalLinksPlugin.h

#import "rr.h"


@interface MyAppDelegate (UniversalLinksPlugin)

- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler;

@end

MyAppDelegate+UniversalLinksPlugin.m

#import "rr.h"
#import <objc/runtime.h>

@implementation MyAppDelegate (UniversalLinksPlugin)

- (BOOL)application:(UIApplication *)application
continueUserActivity:(NSUserActivity *)userActivity
restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler {

NSLog(@"Universal links plugin: starting application launch handling.");
// ignore activities that are not for Universal Links
if (![userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb] || userActivity.webpageURL == nil) {
return NO;
}

NSString* url = [userActivity.webpageURL absoluteString];
NSLog(@"Universal links plugin: the following url is used for the application launch %@", url);

NSMutableDictionary *data = [[NSMutableDictionary alloc] init];
[data setValue:url forKey:@"url"];
[[WL sharedInstance] sendActionToJS:@"handleURL" withData:data];

return YES;
}

@end

2) config.xml更新:

<feature name="UniversalLinksPlugin">
<param name="ios-package" value="UniversalLinksPlugin"/>
</feature>

3) iphone/js/main.js 更新:

/**
* UL links handling
*/
document.addEventListener("deviceready", function() {
WL.App.addActionReceiver ("ULReceiver", function(received) {
if (received.action === "handleURL") {
WL.Logger.debug('Inside handle URL action receiver. Provided url: ' + received.data.url);
handleOpenURL(received.data.url);
}
});

}, false);

就是这样。我真的希望这会对某人有所帮助)

关于ios - 通用链接 IOS9,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32643257/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com