2012-03-07 15 views
2

私のplistからApp Store IDを取得してAppiraterで使用する際に問題があります。 I NSLogユーザーが「今すぐ評価」を押して、App Store IDがInfo.plistで設定したApp Store IDと異なる場合に使用されていたURLをgedします。これらの数字がどこから得られているのかは分かりません。毎回9つの数字の異なるセットです。これは本当に奇妙です。App StoreからのIDと異なるIDを持つApp Store経由のID、そして明らかにランダム

App StoreのIDをつかみ、リンクでそれを使用してを扱うAppirater.m内のコードは次のようになります。私は「AppStoreId」と呼ばれるplistの中にフィールドを追加し、入力された

NSString *templateReviewURL = @"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=APP_ID"; 

.... 

+ (NSString*)appStoreAppID { 

    NSString* value = [[[NSBundle mainBundle] infoDictionary] objectForKey:kAppiraterAppIdBundleKey]; 

    NSAssert1(value, @"Error - you have not specified %@ property in your info.plist", kAppiraterAppIdBundleKey); 

    return value; 

} 
//... 

+ (void)rateApp { 
    //... 
    NSString *reviewURL = [templateReviewURL stringByReplacingOccurrencesOfString:@"APP_ID" withString:[NSString stringWithFormat:@"%d", [self appStoreAppID]]]; 
    //... 
} 

NSString *const kAppiraterAppIdBundleKey = @"AppStoreId"; 9桁のコード私はそれを文字列型にしました。今、上記のiTunesリンクの「APP_ID」を実際の9桁のコードに置き換えるとコードが完全に実行されますが、APP_IDとして保存すると「iTunes Storeに接続できません」というエラーが表示され、NSLog出力リンクには9個の乱数があり、毎回違う。

これはおそらく簡単な修正ですが、わかりません。

+1

Good old App Pirater。私はその名前を見るたびに笑う必要があります。 –

答えて

6

乱数?あなたは、使用している:

appStoreAppIDNSStringある
[NSString stringWithFormat:@"%d", [self appStoreAppID]] 

を。

したがって、NSStringの内容ではなく、「APP_ID」をNSStringへのポインタに置き換えます。

%dの代わりに%@を使用してください。

+0

ありがとう、それは働いた! – John

関連する問題