2012-05-02 4 views
0

Я бы хотел отключить экран своим приложением, но я не могу получить администратор устройства.Android: Как включить администратор устройства?

Это мой код:

DevicePolicyManager mDPM; 
ComponentName mDeviceAdminSample; 
private static final int REQUEST_CODE_ENABLE_ADMIN = 1; 


/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 


    mContext=this; 


    mDeviceAdminSample = new ComponentName(this, Act_01_LockScreen.class); 
    mDPM = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE); 




} 

@Override 
public void onResume() { 
    super.onResume(); 


    Boolean mAdminActive = isActiveAdmin(); 



    if (!mAdminActive) { 

      // Launch the activity to have the user enable our admin. 
      Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN); 
      intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, mDeviceAdminSample); 
      intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, 
        mContext.getResources().getString(R.string.app_name)); 
      startActivityForResult(intent, REQUEST_CODE_ENABLE_ADMIN); 
      // return false - don't update checkbox until we're really active 

    }else{ 
     mDPM.lockNow(); 
    } 





} 

private boolean isActiveAdmin() { 
    return mDPM.isAdminActive(mDeviceAdminSample); 
} 

}

Этот код не показывает мне что-нибудь. Как я могу сделать?

Большое спасибо ...

Пожалуйста, не показать мне какие-либо ссылки, которые не имеют ни soltuion ...

ответ

1

В качестве временного решения вы можете попробовать этот трюк, основанный на изменении уровня яркости.

Window window = getWindow(); 
WindowManager.LayoutParams windowParams = window.getAttributes(); 
windowParams.screenBrightness = 0; 
window.setAttributes(windowParams); 
+0

Большое спасибо за ответ, но это не отвечает на мой вопрос, и если я использую этот код, я больше не смогу выйти из режима ожидания. – Meroelyth

Смежные вопросы