2014-12-08 2 views
0

Я использовал isSyncActive(), чтобы проверить, активна синхронизация. Все хорошо работает на версиях Android < 5.0, но на новой версии Android версии 5.0 оно выдает исключение java.lang.IllegalArgumentException: account must not be null. Есть ли решение и почему это происходит только в вышеупомянутой версии Android.ContentResolver.isSyncActive на Android 5.0 бросает IllegalArgumentException

ответ

0

Код для контентообладателя с открытым исходным кодом: https://github.com/android/platform_frameworks_base/blob/master/core/java/android/content/ContentResolver.java Если вы заинтересованы. У меня также возникают проблемы с другими вещами, связанными с обновлением 5.0, поэтому я столкнулся с этим сообщением. Похоже, вам нужно передать действительный объект учетной записи методу, чтобы заставить его работать.

public static boolean isSyncActive(Account account, String authority) { 
    if (account == null) { 
     throw new IllegalArgumentException("account must not be null"); 
    } 
    if (authority == null) { 
     throw new IllegalArgumentException("authority must not be null"); 
    } 

    try { 
     return getContentService().isSyncActive(account, authority, null); 
    } catch (RemoteException e) { 
     throw new RuntimeException("the ContentService should always be reachable", e); 
    } 
} 
Смежные вопросы