Я использую pdf_viewer_plugin и в Android Studio у меня нет проблем, но когда я собираю APK и пытаюсь просмотреть PDF из приложения, приложение вылетает? - PullRequest
0 голосов
/ 30 апреля 2020

Так что я использую Android Studio и Flutter для создания приложения, в котором есть PDF, и я использую pdf_viewer_plugin: ^1.0.0+2 для предварительного просмотра PDF внутри приложения. Когда я подключаю свой телефон с помощью кабеля и запускаю приложение, у меня не возникает проблем с открытием экрана и просмотром PDF, но когда я нажимаю на Build-> APK и устанавливаю APK из созданного файла и go в тот же экран с PDF Viewer все приложение вылетает. Я вижу, как открывается экран, и даже индикатор загрузки, который я установил, вращается, но когда он предполагает открыть PDF, он просто разбивает sh все приложение. Кто-нибудь может мне помочь?

Это мой докер: файл APK, который я создал, чтобы узнать, что происходит?

1 Ответ

1 голос
/ 30 апреля 2020

Создайте файл с именем proguard-rules.pro в вашем каталоге android / app .

Добавьте в него следующую строку кода:

 -keep class com.shockwave.** { *; }

Сейчас в файл build.gradle уровня приложения, добавьте его в свой buildType:

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

, чтобы ваша папка buildType выглядела примерно так:

buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.debug
        }
    }

Затем запустите flutter build apk - buildTypeName

Пример:

flutter build apk --release

ОБЪЯСНЕНИЕ: Proguard, вероятно, блокирует ваше приложение от использования библиотеки средства просмотра PDF. Вероятно, поэтому ваше приложение работает в режиме отладки, но не после сборки apk.

Согласно исходному коду плагина здесь имя пакета - com.example.pdfviewerplugin, поэтому Я добавил com.example в код Proguard.

Попробуйте и посмотрите, работает ли он.

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