2011-08-03 10 views
0

私はSDKを構築しています。たとえば、mainClassというクラスがあります。そのため、MainActivityのアプリケーションでは、SDKを使用する開発者にmainClassコンストラクタのappキーのようなデータを渡してから、最初にアプリが開かれたときにのみ(登録を使用して)登録サービスを開始する。Androidアプリが再デプロイされているかどうかを知る方法は?

問題は、開発者がアプリキーを変更してアプリを再デプロイしたとき(新しいアプリキーで)、アプリの設定(appFirstOpen = false)がそこにとどまり、新しいアプリキーを登録できないということです。 私はアプリのキーがコンストラクタで変更されたかどうかをチェックすることを考えましたが、オーバーヘッドのようです。アプリが優先権をクリアするために再雇用されているかどうか、またはこの問題を解決するための他の方法があるかどうかを知ることはできません。

+0

SDKまたはプログラマーが環境設定を管理していますか? –

+0

SDKが環境設定を管理しています。 – Jimmy

+0

あなたは、アプリケーションIDごとにプリファレンスを作成できますか? –

答えて

0

タイトルの質問に答えるために、新しい展開フラグはありません。そのため、アプリケーションのアプリIDやシステムのPackageInfoまたはApplicationInfoなどのその他の要因を確認する必要があります。アプリケーションのデータを消去したい場合は、[設定] - > [アプリケーション]のデータを手動で消去するか、毎回SharedPreferences.Editor.clear()で優先データを消去してください。

同じアプリケーションを新しいアプリIDに対して実行すると問題が発生しているようです。これは、アプリケーションIDをチェックするオーバーヘッドで作業する価値があることを私に示唆します。 appFirstOpen条件を処理できるapp idごとに1つの設定ファイルを用意することをお勧めします。

関連する問題