1

エンタープライズ トラッキング アプリケーションの開発を依頼されました。アプリケーションは、電話の現在の位置を取得し、5 分ごとにサーバーに送信できる必要があります。アプリケーションがバックグラウンドで実行されている場合でも、ユーザーは簡単にシャットダウンできます。そのために何らかの制限を作成する必要があります。おそらくパスワードベースです。このアプリケーションをシャットダウンするには、ユーザーはパスワードを入力する必要があります。そして、彼が再起動している場合、アプリケーションは再起動後に自動実行する必要があります。

これを行うことは可能ですか?

4

4 に答える 4

3

いいえそうではありません!

しかし...私は仕事をすることができるトリックを知っています、その名前はAlarmManagerです

1秒ごとに警告するアプリケーションのアラームを設定できます。アプリケーションがシャットダウンされた場合、アプリケーションは自動的に再構築されます。この時点で、alarmManager をシャットダウンするためのパスワードを設定できます。

しかし、お知らせするために、私はこれを一度試してみました.Googleは何も教えてくれませんでしたが、ユーザーは、アプリケーションがデバイスをハッキングしているというコメントを残しました;)

于 2012-08-20T14:29:44.040 に答える
2

ICS 以降、デバイス管理を実装するアプリは停止できません。ただし、唯一の欠点は、ユーザーがデバイス管理者を削除できることです。
管理者がオンの場合にのみアプリが動作するように制限できます。もう 1 つの方法は、ユーザーが管理者を削除した場合に、 resetpassword
を使用してカスタム パスワードでデバイス全体をロックできることです。

于 2012-08-20T18:11:12.813 に答える
1

デバイスがルート化されている場合はそれを実装できますが、システムファイルの変更が必要なため、アプリをAPKとして配布できない可能性があります。たぶん、Clockworkmodを介してフラッシュされるZipとして。ただし、デバイスの保証が無効になることに注意してください。

アラームに関するBabibuの提案は斬新なアプローチですが、バッテリーの消耗がはるかに速くなるため、システムを常にウェイクアップする場合は注意が必要です。

実際に直面する大きな問題は、ユーザーがGPSを無効にできてから、プログラムでGPSを再びオンにできないことです。これは、明らかに理想的ではなく、すべてのデバイスで機能しないエクスプロイトを使用しようとしない限りです。

ユーザーがアプリケーションまたはGPSを無効にするたびに、サーバーに報告することをお勧めします。組織がそのユーザーを適切に罰することができるように、どのユーザーがそれを無効にしたかがわかります。

于 2012-08-20T14:55:43.377 に答える
1

あなたが探しているのはデバイス管理です

http://developer.android.com/guide/topics/admin/device-admin.html

このページでは、その仕組みと、パスワードに関するあらゆる種類のポリシーを変更してカメラを無効にする方法について説明します。

彼らがほとんど話していないのは、アプリケーションがデバイス管理者として有効になるとすぐに、この機能を最初に無効にしない限り、アプリケーションを強制終了したりアンインストールしたりできないということです。有効化/無効化ボタンを適切な方法で実装するのはあなた次第です。

システムによって強制終了された場合でも (リソースが少ない場合) サービスが常に再起動されるようにするには、 Service のこのメソッドをオーバーライドする必要があります。

public int onStartCommand (Intent intent, int flags, int startId)
    {
        return START_STICKY;
    }

最後に、起動時にサービスを開始するには、 ACTION_BOOT_COMPLETED ブロードキャストをキャッチする必要があります。

主な問題は、ユーザーが GPS を無効にしたり、モックの場所を使用したりするのを防ぐことはできませんが、それを検出してログに記録することはできます。監視されているユーザーに気付くことは良い習慣です (実際、私の国では義務付けられています)。そうすることで、ユーザーが GPS を台無しにしているかどうかを知ると同時に説明することができます。

電話をルート化することも別の解決策ですが、閉じるよりも多くのドアを開く可能性があります;)

于 2015-07-31T15:39:19.953 に答える