在应用商店中打开itune链接?

时间:2013-03-20 10:53:04

标签: iphone ios objective-c ios5 app-store

我的应用程序有3种语言,我想在按钮点击时打开应用程序商店,链接是我的另一个应用程序。但是,当我发送链接到应用程序商店时,它始终打开美国市场的英文描述。当我使用浏览器时,它正确。我哪里错了。

-(IBAction)Button_us_itune:(id)sender{
    NSString *ituneLink =@"https://itunes.apple.com/us/app/My_application/AppID?mt=8&ign-mpt=uo%3D4";
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:ituneLink]];

}
-(IBAction)Button_fr_itune:(id)sender{
    NSString *ituneLink =@"https://itunes.apple.com/fr/app/My_application/AppID?mt=8&ign-mpt=uo%3D4";
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:ituneLink]];
}
-(IBAction)Button_du_itune:(id)sender{
    NSString *ituneLink =@"https://itunes.apple.com/de/app/My_application/AppID?mt=8&ign-mpt=uo%3D4";
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:ituneLink]];
}

3 个答案:

答案 0 :(得分:1)

可能是因为您正在使用/登录美国商店。

答案 1 :(得分:1)

实际上这很容易。你有两个错误:

  1. 您在链接中使用国家/地区代码。即你提到你要打开的商店。这很糟糕,因为在某些情况下,用户会打开与您需要的商店不同的商店。如果你要求美国和用户注册另一个,你就会失去他。

  2. 您可能无法分辨用户注册的商店。因此,即使您创建了正确的链接,也无法告诉哪个函数要调用(根据我的知识,没有API可以知道用户的注册位置 - 您可以知道他在哪里或他的语言设置。)

  3. 所以,您可以删除国家/地区代码。即:

    NSString *ituneLink =@"https://itunes.apple.com/app/My_application/AppID?mt=8&ign-mpt=uo%3D4"
    

    即便如此,在某些情况下以及在某些操作系统版本中,您可能会遇到链接本身的问题

    我建议你使用一个名为iLink的简单库,它可以找出所有内容(在运行时),并创建你需要的链接,它总能工作。它还有一个很棒的功能,如果商店里有一个更新,它会提示用户进行更新。

答案 2 :(得分:0)

您正在给丹麦应用链接。我想你是和其他国家一起登录的。

相关问题