是否可以通过编程方式从iOS应用程序获取app id?

bre*_*1nt 22 itunes objective-c app-store ios

有没有办法让appstore id运行iOS应用程序?(要求用户对其进行评级并提供指向appstore的链接.)

Gau*_*ish 14

使用

NSString* appID = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleIdentifier"];
Run Code Online (Sandbox Code Playgroud)

通过@zaheer的评论更新答案

NSBundle.mainBundle().infoDictionary?["CFBundleIdentifier"] as? NSString
Run Code Online (Sandbox Code Playgroud)

  • 伙计们你怎么能通过捆绑ID来评价?!他在询问appstore app id! (12认同)
  • **Swift**:`NSBundle.mainBundle().infoDictionary?["CFBundleIdentifier"]如?NSString` (2认同)
  • 也可以使用 `kCFBundleIdentifierKey`,因为它是一个常量:) (2认同)

kel*_*lin 12

是的.您无法离线获取appstore app id(在iTunes Connect中称为Apple ID),但您可以使用iTunes Search Api 请求它.下载以下链接的上下文:

http://itunes.apple.com/lookup?bundleId=YOUR_APP_BUNDLE_ID
Run Code Online (Sandbox Code Playgroud)

您将获得包含"trackId":YOUR_APP_ID键值的JSON响应.在浏览器中试试吧!

我的答案基于另一个答案: https ://stackoverflow.com/a/11626157/3050403


Suh*_*tel 5

您可以使用Apple iTunes Link Maker搜索您的应用程序(或任何与此相关的应用程序)并获取您的应用程序商店 URL。从那里您可以获得您的应用程序 URL,该 URL 对于您的应用程序将保持不变,并将其放入您的应用程序中。当你使用itms://而不是http://时,它将直接在App Store应用程序中打开

例如,如果我想使用 Twitter 应用程序 URL,链接创建者会告诉我该 URL 是:

http://itunes.apple.com/us/app/twitter/id333903271?mt=8&uo=4
Run Code Online (Sandbox Code Playgroud)

现在执行 itms 技巧:

itms://itunes.apple.com/us/app/twitter/id333903271?mt=8&uo=4
Run Code Online (Sandbox Code Playgroud)

它将直接在 App Store 中打开,而不是通过 Safari 重定向到 App Store,

  • 使用链接生成器,您可以链接到某些特定的应用程序。我要问的是以编程方式从当前应用程序获取 id(以避免手动为每个应用程序创建链接)。 (2认同)