Error
Причина: java.lang.SecurityException: uid 10184 не может получить секреты
для счетов типа:
Код
@Nullable
public static Account getSyncAccount(Context context)
{
AccountManager accountManager = (AccountManager) context.getSystemService(Context.ACCOUNT_SERVICE);
Account newAccount = new Account(context.getString(R.string.app_name), context.getString(R.string.content_authority));
assert accountManager != null;
if(null == accountManager.getPassword(newAccount))
{
if(!accountManager.addAccountExplicitly(newAccount,"",null)) //Error here
{
return null;
}
onAccountCreated(newAccount,context);
}
return newAccount;
}
Сервис аутентификации
<service android:name=".sync.ProductAuthenticatorService">
<intent-filter>
<action android:name="android.accounts.AccountAuthenticator"/>
</intent-filter>
<meta-data android:name="android.accounts.AccountAuthenticator"
android:resource="@xml/authenticator"/>
</service>
<!-- Sync Adapter Service -->
<service android:name=".sync.ProductSyncService"
android:exported="true"
>
<intent-filter>
<action android:name="android.content.SyncAdapter"/>
</intent-filter>
<meta-data android:name="android.content.SyncAdapter"
android:resource="@xml/syncadapter"/>
</service>