2018-04-17 iOSからAppstoreへのリンクとQRコード

3246 ワード

主要な事は少し记录して、时には忘れないようにして、良い记忆力はぼろぼろの笔头に及ばないで、小学校の1学年の时に先生はこのように私に教えて、ははは
1、App Storeアプリケーションの詳細にジャンプする
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@"itms-apps://itunes.apple.com/app/id1061880281"]];
そのうち@"itms-apps://itunes.apple.com/app/id1061880281「接続先として、1061880281はAppstoreがオンラインに登録されたときに生成された一意のIDを適用する
2、コメントにジャンプ
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@"itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=1232138855&pageNumber=0&sortOrdering=2&type=Purple+Software&mt=8"]];
注意:iOS 11がアプリケーションストアを再設計したため、このリンクを使用するとiOS 11システムにアプリケーションが見つかりません.解決方法:システムのバージョンを判断して、もしシステムのバージョンがiOS 11より大きいならば、1リンクにジャンプしてすぐ
https://itunes.apple.com/app/id1061880281 あ、このアドレスでQRコードを生成すればいい
しかし、多くの言語の問題に直面する可能性があります.他の言語でアンドロイドデバイスでQRコードをスキャンするとitunesに入りますが、デフォルトで表示されているインタフェースは確かに英語環境です.これはあなたがhttps://itunes.apple.com/app/id1061880281 次のように変更します.
例えば中国語:https://itunes.apple.com/cn/app/id1061880281
例えば日本語:https://itunes.apple.com/jp/app/id1061880281
待って...つまりhttps://itunes.apple.com/あとは国の略字国際文字をつければいい
3、バージョンの更新
注意:この機能はアプリケーションが起動するたびに検出すると書かれています.インタフェースに検出更新の入り口が残っている場合は、棚に上がるときに監査がアップルに拒否されます.アップルはAppStore以外の方法でアップグレードすることはできません.
-(void)checkVersion {
NSString *path = [[NSString alloc] initWithFormat:@"http://itunes.apple.com/lookup?id=%@",@"1061880281"];

NSURL *url = [NSURL URLWithString:path];

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:10];

[request setHTTPMethod:@"POST"];
NSOperationQueue *queue = [NSOperationQueue new];

[NSURLConnection sendAsynchronousRequest:request queue:queue completionHandler:^(NSURLResponse *response,NSData *data,NSError *error){

    NSMutableDictionary *receiveStatusDic=[[NSMutableDictionary alloc]init];

    if (data) {

        NSDictionary *receiveDic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];

        if ([[receiveDic valueForKey:@"resultCount"] intValue]>0) {

            [receiveStatusDic setValue:@"1" forKey:@"status"];

            [receiveStatusDic setValue:[[[receiveDic valueForKey:@"results"] objectAtIndex:0] valueForKey:@"version"]   forKey:@"version"];

        }else{

            [receiveStatusDic setValue:@"-1" forKey:@"status"];

        }

    }else{

        [receiveStatusDic setValue:@"-1" forKey:@"status"];

    }

    [self performSelectorOnMainThread:@selector(receiveData:) withObject:receiveStatusDic waitUntilDone:NO];

}];

}
  • (void)receiveData:(id)sender{NSString*serverVersion=[sender objectForKey:@version];//バージョン番号
  • を取得
    //        
    
    NSString *currentVersion = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"];
    
    
    
    //              
    
    if ([serverVersion compare:currentVersion options:NSNumericSearch] == NSOrderedDescending) {
    
       //     ,      
    
    } else {
    

    //新バージョンは検出されなかった
    }
    

    }