如何从给定的Bundle ID获取苹果应用程序ID?

6
我有一份苹果应用程序的bundleIds清单 (例如 com.facebook.Facebook)。我最终想要实现的目标是通过iTunes Search API来丰富这些数据,该API可以提供iTunes元数据。这个API的详细信息请参考http://www.apple.com/itunes/affiliates/resources/documentation/itunes-store-web-service-search-api.html
如果我知道某个应用程序的id(技术上称为“trackId”),我就可以获取该应用程序的具体信息, 比如: http://itunes.apple.com/lookup?id=284882215 (284882215 是 Facebook 应用程序的 trackId)。
然而,我无法以同样的方式使用 bundleId。那么如何在给定 bundleId 的情况下系统地检索应用程序的 id(又称为 trackId)呢?

1
希望对你有所帮助。 - est
2个回答

6

这应该可以正常工作:

curl https://itunes.apple.com/lookup\?bundleId\=com.facebook.Facebook

在结果中,您应该看到以下内容:

  "trackViewUrl": "https:\/\/itunes.apple.com\/us\/app\/facebook\/id284882215?mt=8&uo=4",

"bundleId": "com.facebook.Facebook",

"trackId": 284882215,


curl -s "https://itunes.apple.com/lookup?bundleId=uk.co.guardian.iphone2" - Hugo Gresse

1

根据David Richardson的回答,这是我的稍微修改过的版本,使用jq来解析JSON并提取只有应用程序ID:

$ myApp=WireGuard
$ bID=$(mdls -name kMDItemCFBundleIdentifier -r "/Applications/${myApp}.app")
$ curl -s "https://itunes.apple.com/lookup?bundleId=${bID}" | jq -r '.results[0].trackId'
1451685025

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接