참고 : 별도의 규정이없는 한, 떨림 버전과 다트 버전은 다음과 같습니다 :
- 플러터 버전 : 1.12.13 + hotfix.5
- 다트 버전 : 2.7.0
응용 프로그램 업그레이드 기능은 사용자의 원인이됩니다이 기능, 버그의 새 응용 프로그램 기능을 업그레이드 할 수없는 오래된 고객이 터치 업, 사용자의이 부분도 상실 할 수없는 경우, 응용 프로그램의 기본 기능 중 하나입니다.
응용 프로그램 업그레이드 기능의 중요성은 여기 플랫폼에서 말하기 응용 프로그램 업그레이드 기능에 따라 몇 가지 방법이 있으며, 말을 할 필요가 없습니다 :
- IOS 플랫폼, 응용 프로그램 업그레이드 기능은 앱 스토어로 이동하여 업그레이드 할 수 있습니다.
- 안드로이드 플랫폼은 모두 시장 응용 프로그램으로 이동하여 업그레이드 할 수 있습니다, 당신은 또한 APK 패키지 업그레이드를 다운로드 할 수 있습니다.
각각, 그리고 의무적에서 비 필수 업그레이드를 업그레이드하도록 강요 할 수있다 :
- 필수 업그레이드 : 사용자가, 사용자가 분노를 일으킬 수 있습니다 매우 필요하지 이러한 강력한 방법의 사용을 권장하지 않을 경우, 앱을 계속 사용하려면 업그레이드해야한다는 것입니다.
- 비 필수 업그레이드는 사용자가 클릭 앱을 계속 사용하려면 "취소"를 허용하는 것입니다.
다음은 IOS와 안드로이드를 업그레이드 과정을 소개했다.
IOS 업그레이드 과정
다음과 같은 IOS 업그레이드 프로세스는 다음과 같습니다
공정 설명 :
- 이 사용자는 "업그레이드"버튼을 제공하는 전용의 경우는 현재 버전이 "필수 업그레이드"여부를 확인하는 팝업 상자의 새 버전이있는 경우 일반적으로 우리는 "다른 사용자에게 제공, 새로운 버전의 여부를 얻기 위해 백 엔드 인터페이스에 액세스 할 수있는 것 업그레이드 "와" "버튼을 취소 할 수 있습니다.
- 선택 프롬프트 상자가 사라을 "취소"경우 시스템 프롬프트 후 사용자가 선택하면 업그레이드 할 수있는 앱 스토어로 이동 "업그레이드", 업그레이드할지 여부를 선택합니다.
안드로이드 업그레이드 과정
아이폰 OS 업그레이드 프로세스에 비해 약간 복잡에 안드로이드는, 플로우 차트는 다음입니다 :
공정 설명 :
- 액세스 인터페이스는 IOS의 새로운 버전의 경우 배경을 얻을, 여기에 동일, 팝업 메시지 박스 업그레이드를,이 사용자는 "업그레이드"버튼을 제공하는 전용의 경우는 현재 버전이 "필수 업그레이드"여부를 확인하는 방법이있다, 그렇지 않으면 사용자에게 제공 "취소"버튼을 "업그레이드"와.
- 선택 프롬프트 상자가 사라을 "취소"경우 시스템 프롬프트 사용자 후 APK를 다운로드하여 업그레이드 할 시장 또는 응용 프로그램 업그레이드를 판단하기 위해 이동 당신이 선택하는 경우 "업그레이드", 업그레이드할지 여부를 선택합니다.
- 다운로드 APK를 업그레이드하는 경우, 다운로드 APK를 시작 다운로드 후 APK는 부팅 인터페이스를 설치하는 완벽한 점프입니다.
- 응용 프로그램 업그레이드하는 경우 해당 응용 프로그램 시장, 예를 들어, 단지 화웨이 응용 프로그램 시장 선반, 당신은 당신이, 그것은 사용자를 기반으로해야 시장을 강타하는 많은 응용 프로그램이있는 경우에도, 화웨이의 응용 프로그램 시장이 시간 점프에 지정해야하는지 여부를 결정하기 위해 시장으로 이동 사용자가 응용 프로그램 시장을 선택할 수 있도록 전화 설치된 응용 프로그램 시장 지정된 응용 프로그램 시장은 좋은 경험이 아니라, 사용자들은에 시장 업데이트, 사용자가 선택하는 당신이 응용 프로그램이없는 시장의 선반이있는 경우, 더 당황 것 모른다.
- 지정된 인터페이스 애플리케이션 후 특정 응용 프로그램 시장 업데이트로 직접 이동합니다.
업그레이드 과정을 통해 소개 된 주인공은 마침내했다.
도입을 사용하여 응용 프로그램 업그레이드 기능
그냥 집에서 initState
업그레이드 검출 방법을 호출 :
@override
void initState() {
AppUpgrade.appUpgrade(
context,
_checkAppInfo(),
iosAppId: 'id88888888',
);
super.initState();
}
_checkAppInfo
액세스 백엔드 인터페이스 방법은 구하는 경우 정보, 반환의 새로운 버전 Future<AppUpgradeInfo>
유형, AppUpgradeInfo
업그레이드 버전을 강제할지 여부를 제목, 업그레이드, APK 다운로드 URL을 포함.
iosAppId
앱 스토어에 점프에 대한 매개 변수.
_checkAppInfo()
다음과 같은 방법은 일반적으로 인터페이스, 직접 다시 여기에 새로운 버전 정보를 무대 액세스 할 수 있습니다 :
Future<AppUpgradeInfo> _checkAppInfo() {
return Future.value(AppUpgradeInfo(
title: '新版本V1.1.1',
contents: [
'1、支持立体声蓝牙耳机,同时改善配对性能',
'2、提供屏幕虚拟键盘',
'3、更简洁更流畅,使用起来更快',
'4、修复一些软件在使用时自动退出bug',
'5、新增加了分类查看功能'
],
apkDownloadUrl: '',
force: false,
));
음, 업그레이드의 기본 기능은 다음과 같이 완료, 팝업 상자 효과입니다 :
서로 다른 플랫폼간에 자동으로 차별화 "경험"을 클릭, "나중에"프롬프트 상자가 사라 클릭합니다.
배경 정보 액세스 인터페이스는 현재 앱의 패키지 이름과 버전의 일반적인 요구 사항의 새 버전을 얻기 위해, 쿼리 방법은 다음과 같습니다 :
await FlutterUpgrade.appInfo
수익을 입력 AppInfo
:
- versionName을 : 버전 번호와 같은 1.0.0.
- versionCode를 : 안드로이드 고유의 버전 번호, versionCode를에서 해당 안드로이드 build.gradle, IOS는 "0"으로 돌아
- 여기서 packageName : 패키지 이름, 안드로이드 build.gradle 애플리케이션 ID에 해당하는 BundleIdentifier의 IOS.
아이폰 OS 플랫폼 업그레이드
아이폰 OS 앱 스토어 플랫폼은 관련 페이지로 바로 이동합니다 iosAppId
그렇지 않으면 앱 스토어 응용 프로그램을 찾을 수 없습니다 설정해야합니다.
안드로이드 플랫폼 다운로드 APK
다음과 같이 안드로이드 플랫폼은 직접 다운로드 APK 다운로드를 설정하는 경우 APK 다운로드 URL인지, 그 효과가 결정합니다 :
다운로드가 완료 점프 인터페이스 장착 가이드 APK 효과에 직접 때와 다음입니다 :
사용자가 다음과 같은 인터페이스를 허용을 클릭합니다 :
설치를 계속하려면 클릭, 설치 부팅 화면은 시스템 인터페이스 위에, 다른 휴대폰이나 다른 안드로이드 버전은 약간 다를 수 있습니다.
점프 안드로이드 플랫폼의 응용 프로그램 시장
다음과 같이 APK 다운로드 주소를 제공하지 않는 경우, 응용 프로그램 시장에 뛰어 것은 "경험"을 클릭, 시장이 지정되지 않은 메시지 상자가 사용자가 애플리케이션 시장을 선택할 수 있도록 나타납니다, 효과는 다음과 같습니다
현재 응용 프로그램이이 시장 선반 "인터페이스를 찾을 수 없습니다"가 나타납니다에없는 경우 팁 상자에 전화 시장에 설치된 모든 응용 프로그램을 포함, 사용자가 선택한 해당 응용 프로그램 시장 한 다음, 인터페이스의 세부 사항으로 이동합니다.
지정 응용 프로그램 시장은 일반적으로이 응용 프로그램 시장에 설치된 전화를 알고 사용자가 필요 쿼리는 다음과 같습니다 :
_getInstallMarket() async {
List<String> marketList = await FlutterUpgrade.getInstallMarket();
}
방금 추가, 예를 들어, 구글 플레이, 다른 응용 프로그램 시장을 감지해야하는 경우 기장, MEIZU, 생체, OPPO, 화웨이, ZTE, 360 조수, 응용 프로그램의 보물, PP 보조, 완두콩 포드를 포함하여 일반적으로 중국 시장에서 사용되는 플러그인 구축 된 응용 프로그램, 플레이 패키지 이름을 GOOGL :
_getInstallMarket() async {
List<String> marketList = await FlutterUpgrade.getInstallMarket(marketPackageNames: ['google play 包名']);
}
당신이 대략 내장 된 응용 프로그램 시장, 당신이 얻을 수있는 정보를 지정하려면 방법은 시장 응용 프로그램 지정 점프 설치된 응용 프로그램 시장에 따르면, 전화 시장에 설치된 응용 프로그램을 반환 내장 된 응용 프로그램 시장, 패키지 이름에 따라 :
AppMarketInfo _marketInfo = AppMarket.getBuildInMarket(packageName);
화웨이는 응용 프로그램 시장을 지정 :
AppUpgrade.appUpgrade(
context,
_checkAppInfo(),
iosAppId: 'id88888888',
appMarketInfo: AppMarket.huaWei
);
기본 제공하지-에서 응용 프로그램 지정 시장은 다음과 같습니다 :
AppUpgrade.appUpgrade(
context,
_checkAppInfo(),
iosAppId: 'id88888888',
appMarketInfo: AppMarketInfo(
'应用市场名称(选填)','应用市场包名','应用市场类名'
),
);
팁 박스 스타일의 사용자 정의
기본 사용자의 요구에 부합하지 않는 메시지 상자를 업그레이드하는 경우 업그레이드 메시지 상자를 사용자 정의 할 수 있습니다.
제목과 텍스트 스타일 업그레이드 :
AppUpgrade.appUpgrade(context, _checkAppInfo(),
titleStyle: TextStyle(fontSize: 30),
contentStyle: TextStyle(fontSize: 18),
...
)
으로 titleStyle
하고 contentStyle
그 스타일을 설정, 당신은 글꼴 크기, 색상, 대담 등을 설정할 수 있습니다.
설정 및 "업그레이드 버튼을"텍스트 스타일 "취소"를 :
AppUpgrade.appUpgrade(context, _checkAppInfo(),
cancelText: '以后再说',
cancelTextStyle: TextStyle(color: Colors.grey),
okText: '马上升级',
okTextStyle: TextStyle(color: Colors.red),
...
)
버튼 텍스트가 "나중에"기본 버튼 텍스트가 "업그레이드"이며 "취소"기본 "즉각적인 경험."
로 설정 왼쪽에서 오른쪽으로 솔리드 색상을 설정하기 위해, 단지 2 색이 같은 색, 기본 컬러 시스템으로 설정할 수 있습니다하려면 버튼의 배경색, 당신은, 두 가지 색상, 그라데이션 선형 두 가지 색상이 필요합니다 "업그레이드" primaryColor
:
AppUpgrade.appUpgrade(context, _checkAppInfo(),
okBackgroundColors: [Colors.blue, Colors.lightBlue],
...
)
진행 표시 줄의 색상을 설정합니다 :
AppUpgrade.appUpgrade(context, _checkAppInfo(),
progressBarColor: Colors.lightBlue.withOpacity(.4),
...
)
업그레이드 반경 풍선 세트, 기본값은 20입니다 :
AppUpgrade.appUpgrade(context, _checkAppInfo(),
borderRadius: 15,
...
)
환경적인 이유로 들어, 현재 소스 코드도 GitHub의와 술집에 게시 할 수 없습니다, 오픈 소스는 물론, 내가 소스 코드를 얻기 위해 "업그레이드 플러터"답장, 공공 숫자에 초점을 맞출 수 있습니다, 후속 될 것입니다.
플러터 마이크로 편지 교환기 (마이크로 편지 : laomengit)에 오신 것을 환영합니다, 함께 배우고 고민뿐만 아니라시와보다 함께 앞에 라이브 진행 "먼."
개인적으로, 나는 당신이 대중 번호에 대해 우려하고 있음을 매우 희망, 오, 당신을 기다리고 다양한 혜택이 있습니다.