Unity Android добавляет com.facebook.FacebookContentProvider, чтобы манифестировать, когда это не нужно - PullRequest
0 голосов
/ 12 ноября 2018

Я разрабатываю тестовое приложение с некоторыми довольно базовыми функциями, чтобы доказать несколько концепций. У меня нет подключаемых модулей Facebook или SDK, и я не хочу их. Я просто хочу протестировать некоторые сервисы Google Play на реальном устройстве Android. Однако, когда я собираю apk и запускаю его из Android Studio, AndroidManifest имеет ряд тегов активности со ссылками на com.facebook и провайдера с именем com.facebook.FacebookContentProvider.

Если я разверну apk на моем устройстве, я получу эту ошибку:

java.lang.RuntimeException: невозможно получить провайдера com.facebook.FacebookContentProvider: java.lang.ClassNotFoundException: не нашел класс "com.facebook.FacebookContentProvider" по пути: DexPathList [[zip-файл «/Data/app/com.DanGame.TestApp-KgL6Jybi9sG1Q0LHnxAnNA==/base.apk"],nativeLibraryDirectories=[/data/app/com.DanGame.TestApp-KgL6Jybi9sG1Q0LHnxAnNA==/lib/arm, /data/app/com.DanGame.TestApp-KgL6Jybi9sG1Q0LHnxAnNA==/base.apk!/lib/armeabi-v7a, / Система / Библиотека]]

Я мог бы просто откусить пулю и включить Facebook SDK или попробовать вручную настроить манифест после его создания. Но что мне действительно нужно знать, так это как заставить Unity перестать генерировать плохой манифест? Должен быть способ построить работающий Android-апк из Unity без Facebook.

1 Ответ

0 голосов
/ 14 ноября 2018

Похоже, проблема была в кешировании. Я собирал APK в Unity и профилировал его из Android Studio. Но Android Studio кэширует APK в каталоге Users, поэтому перекомпиляция apk в Unity не перезагрузит проект Android Studio. Несмотря на то, что я удалил все ссылки на Facebook из своего манифеста в Unity, Android Studio использовала старый apk.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...