まず、お使いの端末をルーツにする必要があります。これはすでにあなたのために行われているようです。これで、APKの新しいバージョンが利用可能かどうかをアプリケーションに確認させるだけで済みます。その場合は、バックグラウンドでサービスを起動して必要なAPKをダウンロードし、このコードを実行してサイレントインストールします。
public static void InstallAPK(String filename){
File file = new File(filename);
if(file.exists()){
try {
String command;
command = "adb install -r " + filename;
Process proc = Runtime.getRuntime().exec(new String[] { "su", "-c", command });
proc.waitFor();
} catch (Exception e) {
e.printStackTrace();
}
}
}
基本的には、ABDコマンドを変更して任意の操作を実行できます。根ざしたデバイスは危険であり、セキュリティ侵害を引き起こす可能性があることに注意してください。
[自分のWebサーバーからダウンロードしたAPKをアップグレードする]の可能な複製(http://stackoverflow.com/questions/8923643/upgrade-apk-downloaded-from-own-web-server) –
検索しますか? https://github.com/lazydroid/auto-update-apk-client –
^そのリンクで提供されるソリューションには、ユーザーの操作が必要です。 – knezmilos