2012-11-16 20 views
5

私はセキュリティアプリを作っています。盗まれたり紛失した場合は、パスワードを忘れるとアプリをアンインストールしないでください。 はいアンインストールする前にパスワードを取るようなアプリを作ることは可能です。私の友人Aditya Nikhadeはこのアプリを作っています:)しかし、彼は私にこの秘密のレシピを教えていません:( このアプリをインストールFindroid google Playから。このアプリは、最初にあなたのアプリケーションのロックを解除する必要がありますあなただけがそれをアンインストールすることができます PACKAGED_REMOVEDしかし私は受信者を宣言することができますが、いくつかの不完全な答えを探して、 私は仕事に/勉強中ですDevice Administrator 誰でもあればコードスニペットを貼り付けてください。 アドバンストアドバンテージエド... !!!パスワードで保護されたAndroidアプリ

答えて

2

残念ながらACTION_PACKAGE_REMOVEDのインテントは、ご自分のものを除いてすべての受信者に送信されます。

あなたが探しているものに最も近いのは、2.2で導入されたデバイス管理機能だと思います。

アプリケーションがデバイス管理者として登録されると、そのアプリケーションが登録されていない限り、アンインストールできません。これにより、アプリがアンインストールされなくなります。

Device Admin APIはこの特定の機能のパスワード保護を許可していませんが、アプリケーションのパスワードを保護して、誰かがアプリのDevice Admin機能を改ざんするのを防ぐことができます。

ユーザーがデバイス管理機能を変更しようとするたびに、ユーザーにパスワードを要求することができます。あなたのアプリあなたは、パスワード保護機能を使用することができ、このアクションに

<intent-filter> 
     <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" /> 
     <action android:name="android.app.action.DEVICE_ADMIN_DISABLED" /> 
    </intent-filter> 

のデバイスの管理者権限を改ざんしようとしたとき

アプリを発射するマニフェストにこれらのアクションを追加します!

+0

はい私は同じ情報に取り組んでいます...もしあなたが –

+0

の場合、quickhealという名前のアプリでこの機能をチェックすることができれば、デバイス管理の例が大好きです。 – Neji

+0

この機能は、すべてのウイルス対策アプリで利用できると思います。 –

0

バックグラウンドサービスを実行する必要があります。そうでなければ、実行していないアプリは自分自身に何が起きているのかを見つけるチャンスはありません。私は "PACKAGE_REMOVED"イベントをキャッチする方法はわかりませんが、システムサービスとして実行されている他の要素からのものでなければなりません。そのサービスを強制的に停止させるシステムは、捕まえることが可能かもしれません。

+0

あなたの貢献に感謝します....しかし、私は同じ情報を収集しています...すぐに返信します。 –

関連する問題