我希望这可能是重复的问题。 但是,所有答案都对我没有帮助。 我正在尝试从我的iOS应用程序打开链接。当我按下按钮时,它会打开safari应用程序,并始终显示警告“Safari无法打开页面,因为地址无效”。 这是一个看起来像https://itunes.apple.com/gb/app/app_name/id(appId)的链接。
我认为这不是发布确切的应用链接的好地方。因此,上面的链接是虚拟链接,完全类似于我的链接。 为什么当我尝试打开链接时总是发生错误。我在模拟器和iPod中都尝试过。发生相同的错误。 如果我在MAC OS中尝试使用与Safari相同的链接,则它可以工作。
这是我用来通过链接从我的应用程序打开 Safari 的代码。
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://itunes.apple.com/gb/app/app_name/id(appId)"]];
我来自印度。上面的链接包含 gb 。该链接只能从英国打开吗?
更新:
我的网络良好。我又尝试了另一件事。 我在模拟器中打开了我的 Safari 应用程序,并在google中搜索了我的应用程序,然后单击该链接显示了相同的错误。苹果方面的链接本身存在问题吗?
最佳答案
Kjuly的回答是90%正确(对Kjuly +1!)。
如果您查看at the Appirater code,
and in the .m file具有打开应用程序商店的功能(它是“rateApp:”方法),我看到以下代码:
+ (void)rateApp {
#if TARGET_IPHONE_SIMULATOR
NSLog(@"APPIRATER NOTE: iTunes App Store is not supported on the iOS simulator. Unable to open App Store page.");
#else
因此,无论您尝试什么,都将无法在模拟器中打开App Store应用程序。 App Store应用程序在模拟器中不存在,因此这就是为什么当您的Web View 尝试重定向到该应用程序时会出现“未找到”错误的原因。这在安装了App Store应用程序的实际设备上应该可以正常工作。