Подтвердить что ты не робот

Google Play "Родные платформы", показывающие commons-io-2.4.jar

Я только что столкнулся с очень странной проблемой, когда сборка моего приложения для распространения через бета-канал Google Play отказывалась от развертывания на любых устройствах. Некоторое расследование и некоторая помощь Google показали, что проблема была в том, что при сверлении до детали APK на консоли Google Play:

screenshot of Google Play console

Что могло быть причиной этого? Вот как была определена зависимость в моем build.gradle:

compile 'org.apache.directory.studio:org.apache.commons.io:2.4'

и APK был построен следующим образом:

gradle clean
gradle assembleMarketRelease

где market является одним из ароматов продукта. Приложение устанавливается и работает отлично, когда загружено боком.

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

Связанный: Консоль разработчика Google Play показывает раздел DS_Store в разделе "Нативные платформы" загруженного Apk

4b9b3361

Ответ 1

EDIT: ответ Pang на самом деле правильный fooobar.com/questions/310467/.... Я сохраню этот ответ, поскольку он разрешил аналогичную проблему.

Сегодня я столкнулся с такой же проблемой. Я загрузил свой apk, и консоль рассказала мне, что у apk была собственная платформа "joda-convert-1.5.jar". Удивительно, но я не использовал эту банку прямо. После исследования выяснилось, что банку использовали другую библиотеку, которую я использовал. И это было в папке "lib" этой банки. Поскольку у меня был исходный код этой библиотеки, я перекомпилировал эту библиотеку, поместив эту "joda-convert-1.5.jar" в папку "libs". И очистил и перекомпилировал приложение. Все было исправлено.

Кажется, что все в папке "lib" рассматривается как родная библиотека, и, следовательно, консоль разработчика показывает это так. Убедитесь, что библиотеки находятся в папке "libs".

Надеюсь, что это поможет.