Ich schrieb eine iOS-App in Swift, dann ist es von meiner Firma für mein Projekt erforderlich, eines von Alibabas SDK zu importieren, das in Objective-C geschrieben ist. Es gibt a doc darüber, wie man es auf Chinesisch macht.Wie importierst du etwas in appDelegate.m (Objective-C) in ein Swift-Projekt?
In der Demo scheint es, dass alle für das SDK erforderlichen Codes in Obj-C in appDelegate.m
geschrieben werden. Ich habe gelesen, dass Obj-C/Swift Header und ähnliches überbrückt, aber ich weiß nicht, wie ich es für diesen Fall zum Laufen bringen kann.
Ich kann mir nicht vorstellen, 2 Versionen von AppDelegate in einer App zu haben, wie soll ich das machen?
By the way, ist dies der Code, den sie mich erwarten in AppDelegate.m kopieren einfügen:
[[ALBBSDK sharedInstance] setDebugLogOpen:YES];
[[ALBBSDK sharedInstance] setUseTaobaoNativeDetail:NO];
[[ALBBSDK sharedInstance] setViewType:ALBB_ITEM_VIEWTYPE_TAOBAO];
[[ALBBSDK sharedInstance] setISVCode:@"my_isv_code"];
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
self.window.backgroundColor = [UIColor whiteColor];
MainViewController *mainViewController = [[MainViewController alloc]init];
UINavigationController *navController = [[UINavigationController alloc]initWithRootViewController:mainViewController];
self.window.rootViewController = navController;
[self.window makeKeyAndVisible];
return YES;
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options
{
BOOL isHandledByALBBSDK=[[ALBBSDK sharedInstance] handleOpenURL:url];
BOOL isHandledByALBBSDK=[[ALBBSDK sharedInstance] handleOpenURL:url];
return YES;
}
Verwenden Sie einfach den Swift-Delegaten und übersetzen Sie den Code Alibaba Code in Swift. Wenn Sie Alibaba in eine Obj-C-App integrieren, erstellen Sie auch keinen zweiten App-Delegaten. – Sulthan
Müssen Sie den Obj-C-App-Delegaten als App-Delegierten Ihrer Swift-App verwenden? Oder müssen Sie nur einige Funktionen des Obj-C-Delegaten verwenden, aber Ihre Swift-App muss einen Delegaten mit einer anderen Funktionalität als Ojb-C haben? Darf man Obj-C nach Swift übersetzen, oder muss man Obj-C benutzen, Punkt? – OmniProg