我在plist文件中的URL Scheme有一个问题“m.zameen.com”,但是我在iPhone的safari浏览器中输入这个而不是op [en但是当我打开使用时://它打开了
// In AppDelegate.m file
-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{
if([[url host] isEqualToString:@"page"]){
if([[url path] isEqualToString:@"/main"]){
[self.mainController setViewControllers:@[[[DLViewController alloc] init]] animated:YES];
}
else if([[url path] isEqualToString:@"/page1"]){
[self.mainController pushViewController:[[Page1ViewController alloc] init] animated:YES];
}
return YES;
}
else{
return NO;
}
}
// In DLViewController.m file
- (IBAction)page1Clicked:(id)sender {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"m.zameen.com://page/page1"]];
}
// In Page1ViewController.m file
- (IBAction)mainPageClicked:(id)sender {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"m.zameen.com://page/main"]];
}
在项目“信息”选项卡中,使用您要用于打开应用程序的方案添加新的URL类型,例如“myAwesomeAppScheme”,使用标识符字段中的应用程序包标识符“com.myCompany.myAwesomeApp”和您想要的方案在URL Schemes字段中:
然后在你的app委托中你可以检查打开的url是否有你的方案
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
if ([url.scheme isEqualToString:@"myAwesomeAppScheme"]) {
...
}
}
最后要从外部应用程序打开应用程序,链接必须像myAwesomeAppScheme://parameters/for/opening/viewcontrollers?otherParam=blahblah