0

同梱の LVL サンプル アプリでは、onCreate 中にライセンス チェックがトリガーされます。これは、「アプリを購入」をクリックしてマーケットを立ち上げ、すぐに戻るボタンを押してアプリに戻ると、ダイアログが消えて別のチェックが実行されないため、完全に使用可能なアプリが残っていることを意味します (少なくともアクティビティは強制終了され、プロセスが最初からやり直されます)。

onResume() 中にライセンス チェックをトリガーすることは、この問題を解決するとしても、不適切な形式でしょうか? より良い解決策はありますか?

4

3 に答える 3

3

さらなる調査 (およびいくつかの経験) の後、onCreate() を使用してライセンスを確認しても問題ないようです。ダイアログ方式に固執している場合は、市場に出回る関数にfinish()を追加すると、誰かが市場からアプリに「戻って」普通に使用することができなくなります。アプリを再起動する必要があります。これにより、ライセンス チェックが再度トリガーされます。

于 2010-09-29T16:04:49.573 に答える
3

ダイアログを cancelable(false) に設定していることを確認してください。そうしないと、ダイアログの選択に応答せずに戻るボタンを押すことができます。

于 2010-11-15T18:24:57.430 に答える
0

ワイブリー、

finish();インテントの前または後に入れましたか:

finish();
Intent marketIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(
                 "http://market.android.com/details?id=" + getPackageName()));
startActivity(marketIntent); 

また、

Intent marketIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(
                 "http://market.android.com/details?id=" + getPackageName()));
startActivity(marketIntent);
finish();

ありがとう。

于 2011-08-13T18:28:01.190 に答える