В настоящее время поддерживает Android (статистика обновлений, собственные отчеты об исключениях, отчеты об исключениях флаттера), iOS (статистика, собственные отчеты об исключениях, отчеты об исключениях флаттера).
адрес проекта:GitHub.com/craze coder/…
1. Введение
//androidx
dependencies:
flutter_bugly:
git:
url: git://github.com/crazecoder/flutter_bugly.git
//support
dependencies:
flutter_bugly: ^0.1.1
Во-вторых, конфигурация проекта
Добавить под андроид android/app/build.gradle
defaultConfig {
ndk {
//设置支持的SO库架构
abiFilters 'arm64-v8a', 'x86'//, 'armeabi-v7a', 'x86_64'
}
}
3. Используйте
import 'package:flutter_bugly/flutter_bugly.dart';
//使用flutter异常上报
void main()=>FlutterBugly.postCatchedException((){
runApp(MyApp());
});
FlutterBugly.init(androidAppId: "your android app id",iOSAppId: "your iOS app id");
В-четвертых, релизная упаковка (Android)
64-bit
flutter build apk --release --target-platform android-arm64
32-bit
flutter build apk --release --target-platform android-arm
Пять, атрибуты поддержки (Android)
bool autoCheckUpgrade = true,//自动检查更新开关
bool autoDownloadOnWifi = false,//设置Wifi下自动下载
bool enableNotification = false,//官方没有适配8.0,配合targetSdkVersion使用
bool showInterruptedStrategy = true, //设置开启显示打断策略
bool canShowApkInfo = true, //设置是否显示弹窗中的apk信息
int initDelay = 0, //延迟初始化,单位秒
int upgradeCheckPeriod = 0, //升级检查周期设置,单位秒
//手动检查更新
checkUpgrade({
bool isManual = false,//用户手动点击检查,非用户点击操作请传false
bool isSilence = false,//是否显示弹窗等交互,[true:没有弹窗和toast] [false:有弹窗或toast]
})
Шесть, пользовательское всплывающее окно (Android)
Получите информацию о стратегии обновления с помощью FlutterBugly.getUpgradeInfo(), заполните пользовательский виджет флаттера и откройте окно вручную.
Параметры UpgradeInfo:
String id = "";//唯一标识
String title = "";//升级提示标题
String newFeature = "";//升级特性描述
long publishTime = 0;//升级发布时间,ms
int publishType = 0;//升级类型 0测试 1正式
int upgradeType = 1;//升级策略 1建议 2强制 3手工
int popTimes = 0;//提醒次数
long popInterval = 0;//提醒间隔
int versionCode;
String versionName = "";
String apkMd5;//包md5值
String apkUrl;//APK的CDN外网下载地址
long fileSize;//APK文件的大小
String imageUrl; // 图片url
Семь описание (Android)
Инструкции по отчету об исключениях
1. Отчет об исключениях флаттера не является сбоем, поэтому, если вы хотите просмотреть отчет об исключениях флаттера, просмотрите его на вкладке [Анализ ошибок].
2. Тестирования отчетов об исключениях iOS не так много. Если есть проблема, отправьте
Текущие известные проблемы
1. После получения политики обновлений в первый раз всплывающего окна не будет, даже если вы вручную проверите обновление, вам нужно выйти из приложения, а затем войти, будет всплывающее окно (решено)
2. Официальное уведомление не адаптируется к 8.0, поэтому, если вам нужно использовать уведомление, закройте его (по умолчанию закрыто), напишите соответствующую бизнес-логику самостоятельно или напрямую установите targetSdkVersion в gradle ниже 26 (см. пример метода)