2017-04-14 5 views
0

수행 방법 Android 애플리케이션 수준에서 기기 초기화 데이터를 재설정 하시겠습니까?Android에서 프로그래밍 방식으로 공장 데이터를 재설정하는 방법

su과 함께 명령을 실행하려고했지만 작동하지 않습니다. 나는 두 가지 방법으로 시도 :

  • 1)

    public void onClick(DialogInterface dialog, int which) { 
        try { 
         Process proc = Runtime.getRuntime().exec(new String[] { "su", "–wipe_data" }); 
         proc.waitFor(); 
        } catch (Exception ex) {} 
    } 
    
  • 이 버튼을 클릭하면, 내가 응용 프로그램을 설정 장치를 전화 했어), 그러나 나는 또한 초기화를 얻을 did't.

    startActivityForResult(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS), 0); 
    

    내 앱에서 settings->storage&reset->factory data reset으로 전화하는 방법은 무엇입니까?

답변

1

Intent.ACTION_MASTER_CLEAR을 사용해야합니다. 이 작업을 수행하려면 앱 (시스템/서명 된)에 대한 적절한 권한이 필요할 수 있습니다.

필요한 권한이 없거나 응용 프로그램이 적절한 권한 수준에 도달 할 수없는 경우 대체물로 su 쉘의 am broadcast -a android.intent.action.MASTER_CLEAR을 사용할 수 있습니다.

+0

정말 죄송합니다. 정교하게 말씀해 주시겠습니까? 이해할 수 없었습니다. –

+0

'adb 쉘 '을 사용하면 디버깅 할 수있는 안드로이드 장치에 연결할 수 있습니다.'am'은 안드로이드와 함께 제공되는 커맨드 라인 툴이며 verious 안드로이드 명령을 부르 자고합니다. 대답의 하나는 ACTION_MASTER_CLEAR 인 텐트를 브로드 캐스트하여 안드로이드 장치를 초기화하는 것입니다. – CurlyCorvus

+0

코드에서'-wipe_data'를'am broadcast' 명령으로 변경해보십시오. – iVoid

관련 문제