Ошибка Android Play Store -505

При загрузке APK в Консоль разработчика Android все идет нормально, но есть определенные подмножества пользователей на Android 5.0 и выше, которые не могут установить или обновить APK. Эти пользователи видят ошибку в Google Play Store 505.

Ответы

Ответ 1

Существует несколько разных ресурсов, которые говорят вам, что ошибка 505 является конфликтом разрешения. Начиная с Android Lollipop, вы больше не можете дублировать пользовательские разрешения с тем же именем https://developer.android.com/about/versions/android-5.0-changes.html#custom_permissions. Если вы проверите stackoverflow для этой ошибки, вы найдете несколько отчетов о том, как люди предлагают это решение. Хотя иногда это может быть причиной этой ошибки, есть несколько других причин, по которым этот и другие конфликты могут произойти.

1. Более одного приложения определяет одно и то же разрешение

Если два совершенно разных приложения определяют одно и то же разрешение, например, если у вас есть приложение пользователя и менеджера, и у обоих из них есть что-то вроде строк:

<permission
        android:name="same.package.name.permission.C2D_MESSAGE"
        android:protectionLevel="signature" />

2. То же приложение, подписанное разными клавишами

У вас есть одно и то же приложение, но подписано разными ключами. Например, если у вас была версия выпуска и отладочная версия, вы столкнетесь с конфликтом, потому что система видит это как два разных приложения, запрашивающих одно и то же разрешение.

3. Конфликтные органы

Но есть совершенно другая ситуация, которая может произойти, что менее очевидно. Ошибка 505 также может возникать в конфликтующих органах. Если два разных приложения объявляют один и тот же провайдер, например

<provider
    android:name=".provider.YourProvider"
    android:authorities="com.roqbot.client.YourProvider"
    android:exported="false" />

Это также может привести к конфликту.

Последний и самый сложный конфликт, который может произойти с Google Play Services 8.1 и выше. Если вы не определяете идентификатор приложения в файле build.gradle, например:

defaultConfig {
    applicationId "com.example.my.app"
}

возможно, что он автоматически сгенерирует поставщика, который может конфликтовать с другими приложениями. Чтобы проверить это, перейдите в свою сборку > промежуточные продукты > манифесты > полный > выпуск > AndroidManifest.xml и найдите

<provider
    android:name="com.google.android.gms.measurement.AppMeasurementContentProvider"
    android:authorities="com.google.android.gms.google_measurement_service"
    android:exported="false" />

Здесь имя авторизации будет конфликтовать с другими приложениями. Если вы добавите applicationId в конфигурацию по умолчанию, он изменит этот авторитет на

<provider
    android:name="com.google.android.gms.measurement.AppMeasurementContentProvider"
    android:authorities="com.example.my.app.google_measurement_service"
    android:exported="false" />

Это очень тонкий и, похоже, ошибка, возникающая в сервисах Google Play 8.1. О проблеме можно судить здесь. https://code.google.com/p/android/issues/detail?id=189079&can=1&q=error%20505&sort=-opened&colspec=ID%20Status%20Priority%20Owner%20Summary%20Stars%20Reporter%20Opened

Следует помнить, что это может быть несколько вещей, и единственное, что вы можете проверить с ошибкой 505, - это конфликт какого-то рода и что это может быть или не обязательно быть пользовательским разрешением конфликт.

Ответ 2

Если вы используете SDK для Facebook и следуете официальному образцу кода, вы также можете столкнуться с проблемой. В моем случае я использовал одно и то же имя поставщика контента в двух разных манифестах приложения.

 <provider
            android:authorities="com.facebook.app.FacebookContentProvider123"
            android:name="com.facebook.FacebookContentProvider"
            android:exported="true" />

Я забыл изменить имя по умолчанию com.facebook.app.FacebookContentProvider123. Наконец, исправлена ​​его добавлением динамического приложения в качестве имени поставщика.

<provider
            android:authorities="com.facebook.app.FacebookContentProvider.${applicationId}"
            android:name="com.facebook.FacebookContentProvider"
            android:exported="true" />

Ответ 3

Имя ошибки: ошибка 505

Проблема. Это необычный код ошибки, который встречается во время обновления или установки приложения из магазина Google Play. В нем отображается сообщение об ошибке "Неизвестный код ошибки во время установки приложения 505".

За этой ошибкой отвечают причины.

• Это чаще всего наблюдается при попытке установить устаревшую версию приложения.

• Ошибка 505 может быть вызвана несовместимостью приложения с версией ОС Android.

• Это может также возникнуть из-за конфликта кеша или сбоя данных в приложении.

• Ошибка 505 также может возникнуть из-за проблемы с синхронизацией с учетной записью Google.

Решение

• Сначала перезапустите Android-устройство, потому что этот шаг обычно работает, чтобы избавиться от любого типа ошибок. Если он не работал, а затем попробуйте эти простые шаги.

• Очистить кеш и данные в Google Play Store, Google Service Framework и диспетчере загрузки. Для этого прежде всего перейдите в Настройки → затем Приложения → выберите Все → затем Google Play Store и очистите кэш и очистите данные. Также очистите кэш и очистите данные для служб Google.