2017-05-10 3 views
0

私のAndroidアプリケーションでは、ボタンクリックでAndroidデバイスを再起動します。しかし、は根っこの電話機で動作しますが、根拠のない電話機では動作しません。ルーテッドアンドルーター以外のアンドロイドデバイスをプログラムで再起動することはできますか?

try { 
       Runtime.getRuntime().exec(new String[]{"su","-c","reboot now"})); 

        } catch (IOException e) { 
         e.printStackTrace(); 
        } catch (InterruptedException e) { 
         e.printStackTrace(); 
        } 

両方根ざし&無根のAndroidデバイスを再起動することが可能ですか?

答えて

1

最近変更されたものがない限り、通常のアプリケーションからプログラムされていない電話機を再起動することはできません。

アプリケーションがシステムファームウェアキー(通常のアプリケーションではない)によって署名されている場合は、この操作を実行できます。

ルートデバイスルートを実行する場合、ランタイムexec関数には期待どおりの動作が得られないという特性があることに注意してください。

むしろここに優れた要約があり、このハードな方法学ぶより:何かがhttp://www.javaworld.com/article/2071275/core-java/when-runtime-exec---won-t.html

+0

を変更していない限りは?私はこの点を得ていない、あなたは説明していただけますか? – kavie

+0

Androidが頻繁に変わるように、私の賭けをちょうどヘッジします!私が知っている限り、これは間違いありません。 – Mick

関連する問題