我们希望在Mac OSX版本的应用程序中也能够做到同样的事情。是否有类似的URL可用于Mac App Store?
提前感谢。
macappstore://apps.apple.com/app/idxxxxxxxxx?action=write-review
https://apps.apple.com/app/idxxxxxxxxx?action=write-review
guard let writeReviewURL = URL(string: "macappstore://apps.apple.com/app/id409201541?action=write-review")
else { fatalError("Expected a valid URL") }
NSWorkspace.shared.open(writeReviewURL)
if let appStoreID {
Link("Rate this app", destination: URL(string: "https://apps.apple.com/app/id\(appStoreID)?action=write-review")!)
}
}
我有部分答案。要直接链接到Mac App Store,您需要使用MAS协议,即“macappstore:”。这可以通过查看MAS应用程序的info.plist找到。
一些实验发现,使用链接到应用程序的部分URL将在MAS应用程序中起作用。因此,如果我从MAS应用程序复制我的应用程序链接,它看起来像这样:
http://itunes.apple.com/us/app/ringer-ringtone-maker/id402437824?mt=12
当然,使用此方法无法直接打开MAS应用程序。但是,您可以删除商店国家标识符和应用程序名称,并添加MAS协议,就会得到以下结果:
macappstore://itunes.apple.com/app/id402437824?mt=12
它会直接在MAS应用程序中打开应用程序的主页面。我还没有找到直接链接到评级页面的方法。由于MAS中的评级部分只是透露出来的主页面的一部分,所以可能不存在直接链接到它的链接。如果不是真的,我会很高兴。
也许其他人可以找到这最后一点。同时,我计划使用主页面链接作为备选方案,直到找到评级页面URL为止。
由于Dave提供的链接在OS X Yosemite上不再工作,我进行了一些调查,并找到了他的链接的更新版本:macappstore://userpub.itunes.apple.com/WebObjects/MZUserPublishing.woa/wa/addUserReview?id=YOUR_APP_ID&displayable-kind=30
。
正如Dave已经提到的那样,这将链接到应用程序页面并打开"撰写评论"部分。 但是,应用商店不会滚动到该部分,因此在小屏幕上,用户认为他只被带到了普通的应用程序页面。 因此,我深入挖掘,还发现了这些链接(相同的基本URL),它们不返回完全功能的(应用商店)页面,而是返回通常通过应用商店内应用程序页面上的AJAX请求调用的内容:
/writeUserReview?id = YOUR_APP_ID&displayable-kind=30
- 直接链接到“撰写评论”部分内容/userRateContent?id=YOUR_APP_ID&displayable-kind=30
- 直接链接到“给这个应用程序评分”五星级评分请求/saveUserReview?displayable-kind=30
- 链接到保存用户评级的页面注意:在最后两个链接中,我删除了一些参数,否则可以在没有用户交互的情况下用于评级和评论任何应用程序(用户已购买)!
我不知道这是否真正有助于某人,但我想在这里写下来,因为其他人可能对此感兴趣。
要直接链接到MAS商店的“撰写评论”部分,请链接至:
macappstore://userpub.itunes.apple.com/WebObjects/MZUserPublishing.woa/wa/addUserReview?id=%d&type=Purple+Software
并将%d替换为您的应用程序ID。