Wil*_*sch 184 iphone app-store
我想在我的应用中添加"评价/评论此应用"功能.
有没有办法直接链接到他们审查应用程序的应用商店中的屏幕?因此,客户无需点击主应用程序链接.谢谢.
编辑:由于缺乏回应,在此开始赏金.只是为了确保它非常清晰:我知道我可以链接到商店中的应用程序页面,并要求用户从那里点击"查看此应用程序"屏幕.问题是是否可以直接链接到"查看此应用程序"屏幕,这样他们就不必点击任何内容.
eli*_*bud 344
itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=YOUR_APP_ID
Run Code Online (Sandbox Code Playgroud)
itms-apps://itunes.apple.com/app/idYOUR_APP_ID
Run Code Online (Sandbox Code Playgroud)
itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=YOUR_APP_ID&onlyLatestVersion=true&pageNumber=0&sortOrdering=1&type=Purple+Software
Run Code Online (Sandbox Code Playgroud)
代码段(您只需复制并粘贴它):
#define YOUR_APP_STORE_ID 545174222 //Change this one to your ID
static NSString *const iOS7AppStoreURLFormat = @"itms-apps://itunes.apple.com/app/id%d";
static NSString *const iOSAppStoreURLFormat = @"itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=%d";
[NSURL URLWithString:[NSString stringWithFormat:([[UIDevice currentDevice].systemVersion floatValue] >= 7.0f)? iOS7AppStoreURLFormat: iOSAppStoreURLFormat, YOUR_APP_STORE_ID]]; // Would contain the right link
Run Code Online (Sandbox Code Playgroud)
Str*_*ong 48
更新:
Swift 4.0,Xcode 9.1
在Real Device iOS 11.x上测试(保证工作)
import StoreKit
func rateApp() {
if #available(iOS 10.3, *) {
SKStoreReviewController.requestReview()
} else {
let appID = "Your App ID on App Store"
let urlStr = "https://itunes.apple.com/app/id\(appID)" // (Option 1) Open App Page
let urlStr = "https://itunes.apple.com/app/id\(appID)?action=write-review" // (Option 2) Open App Review Page
guard let url = URL(string: urlStr), UIApplication.shared.canOpenURL(url) else { return }
if #available(iOS 10.0, *) {
UIApplication.shared.open(url, options: [:], completionHandler: nil)
} else {
UIApplication.shared.openURL(url) // openURL(_:) is deprecated from iOS 10.
}
}
}
Run Code Online (Sandbox Code Playgroud)
从iOS 10推荐使用openURL(_ :).
ETe*_*ech 38
上面写的所有内容都是正确的.只需插入应用程序并将{您的应用程序ID}更改为实际应用程序ID的示例,从iTunesconnect获取以显示"审阅"页面.请注意,正如上面评论的那样,它不能在模拟器上工作 - 只是设备.
- 由于ios 7的更改而进行更正.
NSString * appId = @"{YOUR APP ID}";
NSString * theUrl = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=%@&onlyLatestVersion=true&pageNumber=0&sortOrdering=1&type=Purple+Software",appId];
if ([[UIDevice currentDevice].systemVersion integerValue] > 6) theUrl = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/app/id%@",appId];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:theUrl]];
Run Code Online (Sandbox Code Playgroud)
And*_*ord 36
编辑:iOS 11解决方案
这是我原来答案的解决方案(见下文).使用iOS 11时,以下链接格式将起作用:
https://itunes.apple.com/us/app/appName/idAPP_ID?mt=8&action=write-review
Run Code Online (Sandbox Code Playgroud)
只需替换APP_ID您的特定应用ID即可.使链接起作用的关键是国家/地区代码.上面的链接使用us代码,但实际上使用哪个代码并不重要.用户将自动被重定向到他的商店.
iOS 11更新:
似乎在其他答案中提供的任何解决方案都没有直接进入评论页面在iOS 11上运行.
这个问题最有可能的是,在iOS的11 App Store应用的应用页面确实不具有审查标签了.相反,评论现在位于说明和屏幕截图的正下方.当然,仍然可以直接到达这个部分(例如使用某种锚),但似乎Apple 不支持 /打算这样做.
使用以下链接之一不再起作用.他们仍然将用户带到App Store应用程序,但仅限于空白页面:
itms-apps://itunes.apple.com/app/idYOUR_APP_ID?action=write-review
itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=YOUR_APP_ID&onlyLatestVersion=true&pageNumber=0&sortOrdering=1&type=Purple+Software
Run Code Online (Sandbox Code Playgroud)
每个人仍然如何使用这些链接应该尽快更新他们的应用程序,因为将用户引用到空白的App Store页面很可能不是您想要的.
但是,不参考"评论"页面而是"应用程序"页面的链接仍然可用
itms-apps://itunes.apple.com/app/idYOUR_APP_ID (same as above, but without write-review parameter)
Run Code Online (Sandbox Code Playgroud)
因此,您仍然可以让用户访问您的应用商店页面,但不能直接访问评论部分.用户现在必须手动向下滚动到审阅部分以留下他们的反馈.
毫无疑问,这是"用户体验的巨大和可怕的好处,并将帮助开发人员吸引用户留下高质量的评论而不会让他们烦恼".做得好Apple?
dek*_*eko 26
以上所有方法都是正确的,但现在使用SKStoreProductViewController可以带来更好的用户体验.要使用它,您需要执行以下操作:
添加所需的productViewControllerDidFinish方法:
- (void)productViewControllerDidFinish:(SKStoreProductViewController *)viewController {
[viewController dismissViewControllerAnimated: YES completion: nil];
}
Run Code Online (Sandbox Code Playgroud)检查SKStoreProductViewController类是否可用并显示它或切换到App Store:
extern NSString* cAppleID; // must be defined somewhere...
if ([SKStoreProductViewController class] != nil) {
SKStoreProductViewController* skpvc = [[SKStoreProductViewController new] autorelease];
skpvc.delegate = self;
NSDictionary* dict = [NSDictionary dictionaryWithObject: cAppleID forKey: SKStoreProductParameterITunesItemIdentifier];
[skpvc loadProductWithParameters: dict completionBlock: nil];
[[self _viewController] presentViewController: skpvc animated: YES completion: nil];
}
else {
static NSString* const iOS7AppStoreURLFormat = @"itms-apps://itunes.apple.com/app/id%@";
static NSString* const iOSAppStoreURLFormat = @"itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=%@";
NSString* url = [[NSString alloc] initWithFormat: ([[UIDevice currentDevice].systemVersion floatValue] >= 7.0f) ? iOS7AppStoreURLFormat : iOSAppStoreURLFormat, cAppleID];
[[UIApplication sharedApplication] openURL: [NSURL URLWithString: url]];
}
Run Code Online (Sandbox Code Playgroud)nea*_*ave 13
短App Store URL无法在新的iOS 11 App Store中正确打开"编写评论"界面.例如,这并不能正常工作:
https://itunes.apple.com/app/id333903271?mt=8&action=write-review
解决方法是在URL中包含两个字母的国家/地区代码和应用名称,例如:
https://itunes.apple.com/us/app/twitter/id333903271?mt=8&action=write-review
要么
itms-apps://itunes.apple.com/us/app/twitter/id333903271?mt=8&action=write-review
您可以从此处获取应用的完整网址:https://linkmaker.itunes.apple.com/
这成功打开了iOS 11 App Store中的"编写评论"界面.
编辑:正如@Theo在下面提到的,国家/地区代码不需要本地化,如果应用名称更改,则无需更新URL中的应用名称.
希望Apple能够尽快解决这个问题.见rdar:// 34498138
Qua*_*ong 12
func jumpToAppStore(appId: String) {
let url = "itms-apps://itunes.apple.com/app/id\(appId)"
UIApplication.sharedApplication().openURL(NSURL(string: url)!)
}
Run Code Online (Sandbox Code Playgroud)
小智 11
所有以前的链接不再直接到"评论"标签,
此链接将直接指向"评论标签":
https://itunes.apple.com/app/viewContentsUserReviews?id=AppID
或
ITMS-应用://itunes.apple.com/app/viewContentsUserReviews ID =的AppID
小智 11
您可以在 url 启动器功能中使用此链接
https://apps.apple.com/app/APP_ID?action=write-review
在iOS7中,将应用程序切换到App Store以进行评分和审核的URL已更改:
itms-apps://itunes.apple.com/app/idAPP_ID
Run Code Online (Sandbox Code Playgroud)
APP_ID需要替换为您的应用程序ID.
对于iOS 6及更早版本,以前答案中的URL工作正常.
资料来源:Appirater
享受编码.. !!
使用此URL是我的完美解决方案.它直接将用户带到了Write a Review section.@Joseph Duffy的积分.一定要试
URL = itms-apps://itunes.apple.com/gb/app/idYOUR_APP_ID_HERE?action=write-review&mt=8
将YOUR_APP_ID_HERE替换为您的AppId
有关示例代码,请尝试:
Swift 3,Xcode 8.2.1:
let openAppStoreForRating = "itms-apps://itunes.apple.com/gb/app/id1136613532?action=write-review&mt=8"
if UIApplication.shared.canOpenURL(URL(string: openAppStoreForRating)!) {
UIApplication.shared.openURL(URL(string: openAppStoreForRating)!)
} else {
showAlert(title: "Cannot open AppStore",message: "Please select our app from the AppStore and write a review for us. Thanks!!")
}
Run Code Online (Sandbox Code Playgroud)
这里showAlert是一个自定义函数UIAlertController.
从iOS 10.3开始,您可以将action=write-review查询项附加到您的https://itunes.apple.com/...和https://appsto.re/...URL.在iOS 10.3及Write a review更高版本上,它将自动打开,而在较低的iOS版本中,它将回退到应用程序的App Store页面.
iOS 11更新:使用Apple的linkmaker:linkmaker.itunes.apple.com
并追加&action=write-review,似乎是最安全的方式.
在iOS 11+(新的应用商店)中,有一种新的方法可以执行此操作。您可以直接打开“写评论”对话框。
iOS 11示例:
itms-apps://itunes.apple.com/us/app/id1137397744?action=write-review
Run Code Online (Sandbox Code Playgroud)
要么
https://itunes.apple.com/us/app/id1137397744?action=write-review
Run Code Online (Sandbox Code Playgroud)
笔记:
/us/)。可以是任何国家/地区代码,没关系。1137397744)更改为您的应用程序ID(从iTunes URL获取)。| 归档时间: |
|
| 查看次数: |
104322 次 |
| 最近记录: |