0

現在アプリケーションを使用しているすべてのユーザーに通知をプッシュする簡単な方法があるかどうか疑問に思っています。

そのため、次にアプリケーションを起動してWi-Fiに接続すると、「アップデートが利用可能です」というアラートを受け取ります。


編集

私が探しているものをより詳細に説明するため。ソフトウェアの最新バージョンである場合にのみ使用するアプリケーションを開発しているので、AppStoreでアップデートが利用可能になったときにメッセージ(通知)を送信できるようにしたいと思います。これは、AngryBirdsCuttheRopeなどの一部のゲームで見られます。

コード内のBOOLをTRUEに変更して、{}BOOLがTRUEの場合は赤いフラグを残すこともできます。(もちろん、最初にもっと基本的なバージョンへの回答が欲しいです。これも役に立ちます)

これで問題が解決することを願っています。


に関しては、

SirKaydian

4

2 に答える 2

1

Webサービスを利用して、アプリのバージョンを比較することができます(おそらく、バージョンをNSUserDefaultsに保存します)。他の解決策があると確信していますが、これが思い浮かびます。バージョンが異なる場合は、アプリストアにリンクするアラートを表示できます。

于 2012-07-31T01:09:33.707 に答える
1

ローカル通知ソリューション

本質的にオスカーが以前に言ったことは、これを本当に簡単にすることができます。アプリケーションを起動するたびに確認したい場合は、アプリケーションからホストしているWebサービスへのある種のローカルAPI(または同様の)呼び出しを簡単に呼び出すことができます。たとえば、PHPファイルがあります。

<?php
$currentVersion = 1.3;
echo $currentVersion;
?>

この単純なPHPスクリプトは、更新をリリースするたびに更新できます。iPhoneは、起動するたびにそのPHPファイルを照会することでこれを認識できます(NSURLConnectionデリゲートメソッドをチェックして、特定のURLから応答を取得します)。これで、アプリケーションによる以前のチェックから、次の方法でそれらをNSUserDefaults値に格納できます。

NSUserDefaults *defaults = [[NSUserDefaults alloc] init];
NSString *loadedVersion = [defaults valueForKey:@"MYAPP_CURR_VERSION"];

次に、WebサービスのPHPファイルから文字列を受け取るNSURLConnectionデリゲートメソッドの2つを比較する必要があります。

NSMutableURLRequest *urlRequest = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:@"http://www.website.com/folder/version.php"]];
   [urlRequest setHTTPMethod:@"GET"];

    [urlRequest setHTTPBody:[postParams dataUsingEncoding:NSUTF8StringEncoding]];

    NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:urlRequest delegate:self startImmediately:YES];
    [connection start];

上記のコードは、あなたが指示したサーバーのURLにリクエストを送信します。応答を受け取ったら、次のようにします。

-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    NSString *responseVersionFromServer = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
if(![loadedVersion isEqualToString:responseVersionFromServer]) {
//execute code here to show a local notification or UIAlertView
 }
}

それはあなたのためにすべての比較を行います。

注:.hヘッダーファイルにNSURLConnectionDelegateを追加する必要があります。

プッシュ通知ソリューション

アプリケーションがUrbanAirshipなどのプッシュ通知を使用できるようにするためのサービスがあります。このサービスにログインして、更新が利用可能になったときにすべてのユーザーにプッシュ通知を送信できます。使い方はとても簡単です。彼らのウェブサイトをチェックしてください。(www.urbanairship.com)

于 2012-07-31T03:45:05.407 に答える