2015-10-09 6 views
0

Я пошарил и попробовал некоторый андроид коду, и я наткнулся на коде блокировки:Блокировка экран Странной ошибка

DevicePolicyManager mDPM; 
mDPM.lockNow(); 

Когда я положил его в коде по умолчанию, он пришел с ошибкой, что сказала :

«Переменная mDPM» не инициализируется.

Я не уверен, что я должен инициализировать переменную, потому что руководство по android специально говорит, чтобы сделать точный код. Я что-то упускаю?

Спасибо!

P.S. Кроме того, я слышал, чтобы выполнить эту блокировку, мне нужно добавить разрешение на манифест, но я не уверен, что это такое ...

ответ

0

«Переменная mDPM» не инициализируется.

Это Basic Java. Не примитивные типы должны быть инициализированы.

В этой строке

DevicePolicyManager mDPM; 

mDPM переменная памяти зарезервирован, и это типа DevicePolicyManager, но он не был инициализирован или ссылки на действительный объект.


Вы можете получить экземпляр следующим образом:

DevicePolicyManager mDPM = 
    (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE); 

Find пример кода в SDK папку

<sdk_root>/ApiDemos/app/src/main/java/com/example/android/apis/app/DeviceAdminSample.java. 

Проверить здесь API и Developers Documentation.

+0

Могу я просто поместить экземпляр где-нибудь? Я немного новичок, поэтому я не знаком с жаргоном. – Mildwood

+0

Фактически, если вы используете приложение «MainActivity», да. Но это сложнее, чем это ... пожалуйста, проверьте [этот вопрос] (http://stackoverflow.com/questions/28048960/lock-screen-with-devicepolicymanager) и ссылки, которые я предоставил для лучшего понимания, не стесняйтесь спрашивать если вы сомневаетесь или застряли –

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