Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
semiromid
7 / 7 / 2
Регистрация: 28.08.2014
Сообщений: 177
#1

The release() call is not always reached android - Программирование Android

16.01.2015, 02:53. Просмотров 405. Ответов 1
Метки нет (Все метки)

Здравствуйте! У меня в появляется предупреждение "the release call is not always reached android" при использовании - wl.release();, по первому варианту.


Java
1
2
3
4
5
6
7
8
9
10
Вариант 1
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
    PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "M78 Tag");
        
 
    wl.acquire();   
    //......... 
 
 
        wl.release();




Поискав по интернету узнал что рекомендуют использовать исключения "try-catch-finally"
После того как я использовал этот вариант, предупреждение пропало, но остался вопрос. Почему нужно использовать исключения? И что будет если я не буду их использовать?

Java
1
2
3
4
5
6
7
8
9
10
11
Вариант 2
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
    PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "M78 Tag");
        
    try {
    wl.acquire();   
    //......... 
    }
      finally {
        wl.release();
      }
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2015, 02:53     The release() call is not always reached android
Посмотрите здесь:
Android Debug and release keys
Android Не устанавливается release версия
Get the release certificate fingerprint Android
Android Отличия debug режима от release
Создание app-release.apk для публикации в маркете Android
WhatsApp call receiver Android
Call to super must be first statement in constructor Android
Android Ошибка VKSdk.initialize(Context) must be call from Application#onCreate()
jQuery cannot call methods on dialog prior to initialization; attempted to call method 'close'
Traffic quota limit reached Сети
Java SE Ошибка reached end of file while parsing

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
16.01.2015, 18:03     The release() call is not always reached android #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Потому что блок finally выполнится всегда (ну почти).

Если после acquire выскочит unchecked exception, то release никогда не будет вызван. Именно для этого нужен блок finally.
Yandex
Объявления
16.01.2015, 18:03     The release() call is not always reached android
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru