2013-04-26 2 views
0

Мое приложение отлично работает, пока я не подготовил его к развертыванию. У меня есть часть моего приложения, которое проверяет, проверяется ли флажок в настройках. Ну, так как я добавил в качестве библиотеки и запускаю другое приложение (создал бесплатную версию приложения и пытался сохранить свой код в качестве библиотеки), он всегда возвращает false.Android - приложение не будет читать sharedpreferences из библиотеки правильно

 SharedPreferences appPrefs = context.getSharedPreferences("com.company.widget_preferences", Context.MODE_PRIVATE); 
    boolean blNotifications; 
      blNotifications = appPrefs.getBoolean("notifications_new_message", false); 

if (blNotifications) 
{ 
    //always returns false 
} 

Благодарим за помощь.

+0

у вас есть этот ключ там 'notifications_new_message'? Если он не существует, он по умолчанию «false» - можете ли вы это подтвердить? – t0mm13b

+0

опубликуйте прочитанную часть кода. – minhaz

+0

Может быть, это запрещено читать? Вы добавили детали как библиотеку, может ли это сделать другой пакет и тем самым лишить доступа? – cgv

ответ

0

Выяснил это, ребята. По какой-то причине с помощью SharedPreferences appPrefs = context.getSharedPreferences работал в dev, но как только я попал в библиотеку, он больше не понравился. Правильный способ вызова sharepreference по умолчанию следующий.

SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this); 
String value = pref.getString("name_of_my_pref", "default_value"); 

Еще раз спасибо.

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