2011-09-21 38 views
7

Tôi đã tự hỏi liệu có thể đưa người dùng của mình trực tiếp đến phần đánh giá của ứng dụng trên cửa hàng ứng dụng từ trong ứng dụng của tôi không?Mở Cửa hàng ứng dụng để Xếp hạng từ trong Ứng dụng của tôi

Tôi không muốn mở ứng dụng này trong Safari, tôi muốn ứng dụng này mở trực tiếp ứng dụng Cửa hàng ứng dụng trên thiết bị và đưa chúng đến trang đánh giá.

Tôi đã thử các cách sau;

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=437688779&onlyLatestVersion=true&pageNumber=0&sortOrdering=1&type=Purple+Software"]]; 

Tuy nhiên, nhấp vào dường như mở ứng dụng iTunes chứ không phải cửa hàng ứng dụng và sau đó chỉ báo lỗi "Không thể kết nối với cửa hàng. Không thể thiết lập kết nối an toàn".

Bất kỳ ý tưởng nào?

Trả lời

18

Như đã thấy trong this blog:

- (IBAction)gotoReviews:(id)sender 
{ 
    NSString *str = @"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa"; 
    str = [NSString stringWithFormat:@"%@/wa/viewContentsUserReviews?", str]; 
    str = [NSString stringWithFormat:@"%@type=Purple+Software&id=", str]; 

    // Here is the app id from itunesconnect 
    str = [NSString stringWithFormat:@"%@yourAppIDHere", str]; 

    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]]; 
} 
+0

Điều đó làm việc hoàn hảo. Cảm ơn bạn rất nhiều ender. –

+0

Không sử dụng - [NSString stringWithFormat:] khi bạn chỉ cần thêm chuỗi. - [NSString stringByAppendingString:] sẽ thực hiện tương tự, nhưng nhanh hơn và hiệu quả hơn (không có bộ đệm, v.v.). –

+0

Bạn có thể bỏ qua phần "type = ..." để url đọc ".../viewContentsUserReviews? Id = ...". Điều này làm việc cho iOS 7.1.2 cũng như 8.0.2 (thử nghiệm trên các thiết bị thực). –

4

Bạn muốn có liên kết itms://here's một nơi thuận tiện để tạo một. Đảm bảo bạn thay đổi giao thức từ http(s): thành itms: (hoặc itms-apps: có vẻ là cách mới).

+0

Hi, tôi đã cố gắng mà cũng có. Xin lỗi, nên đã đề cập.Cũng không hoạt động –

+0

Hãy chắc chắn rằng bạn thay đổi giao thức từ 'http (s):' thành 'itms:' –

1

Bạn chỉ có thể sử dụng lớp iRate, đã làm việc tốt cho tôi.

22

Dường như có vấn đề đáng nhắc đến trong iOS 7.0 như được mô tả here. Bạn có thể xem cách Appirator xử lý vấn đề trong nguồn của họ here.

Về cơ bản, bạn cần phải xử lý 7.0 người sử dụng khác nhau, như vậy: (dòng đầu tiên là giống như các giải pháp được chấp nhận, các dây nối chỉ là trên cùng một dòng.)

NSString *str = @"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=yourAppIDHere"; 
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) { 
    str = @"itms-apps://itunes.apple.com/app/idyourAppIDHere"; 
} 
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]]; 

Cập nhật ngày 19 tháng 8 năm 2015

Các URL ở trên không hoạt động đối với iOS 8.0. Cập nhật mã phục vụ cho tất cả các phiên bản iOS sẽ là:

NSString *str; 
float ver = [[[UIDevice currentDevice] systemVersion] floatValue]; 
if (ver >= 7.0 && ver < 7.1) { 
    str = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/app/id%@",appID]; 
} else if (ver >= 8.0) { 
    str = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=%@&onlyLatestVersion=true&pageNumber=0&sortOrdering=1&type=Purple+Software",appID]; 
} else { 
    str = [NSString stringWithFormat:@"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=%@",appID]; 
} 
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]]; 

Nguồn: Appirator


Cập nhật 14 tháng 11 năm 2017

Từ iOS 10.3, chúng tôi có thể yêu cầu xem xét sử dụng SKStoreReviewController, thực sự mở một cửa sổ nhỏ gọn gàng trong ứng dụng của bạn thay vì điều hướng khỏi ứng dụng của bạn:

if (@available(iOS 10.3, *)) { 
    [SKStoreReviewController requestReview]; 
    return; 
} 
+0

Câu trả lời hoàn hảo, vì đã cập nhật :) –

1

Sử dụng tính năng này: - @"itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=%@";

Các vấn đề liên quan