gpt4 book ai didi

objective-c - Objective C 从另一个应用程序中检索数据

转载 作者:行者123 更新时间:2023-11-29 13:49:28 24 4
gpt4 key购买 nike

我写了两个应用程序,我需要它们之间的交互。我的意思是,在第一个应用程序中,有一个 View ,您需要在其中添加一个数字。但是如果你不想把它写下来,另一个应用程序会为你生成它。所以我需要第二个应用程序生成的数字,并用它填充 View 。

我读了很多关于这个主题的文章,我知道我必须使用自定义 URL 方案。例如,一篇关于此的好文章:link .所以如果我理解,我需要定义这样的方案:

在第一个应用中:

  • 网址标识符:com.mycompany.myfirstapp
  • URL Schemes 第一项:myFirstApp

在第二个应用中:

  • 网址标识符:com.mycompany.mysecondapp
  • URL Schemes 第一项:mySecondApp

然后在第一个应用程序中,例如在按钮的 IBAction 中:

[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mySecondApp://pleaseGenerateNumber"]];

在第二个应用中,我必须实现

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

方法和

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url

方法。然后解析URL,生成号码。但问题就在这里。我如何“告诉”第一个应用程序生成的数字?我必须再次使用 openURL,并通过 URL 检索号码?

最佳答案

在 iOS4.2 中可用,要使用一种方案将数据从一个应用程序传递到另一个应用程序,您可以使用 UIApplicationDelegate 协议(protocol)方法

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url 
sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation

根据文档,annotation 是:

A property-list object supplied by the source application to communicate information to the receiving application.

编辑:事实证明,您可以在 iOS 3.2 下使用注释; application:DidFinishLaunchingWithOptions: 允许在选项字典中使用注释键。

关于objective-c - Objective C 从另一个应用程序中检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5663332/

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