ionic app androidプラットフォームで自動的にダウンロードしてインストールします
3636 ワード
ゼロ)コンテンツはネットワークから取得してテストして整理したもので,基本的に大部分のニーズに対応できるようになった.一部のエラーを修正し、アップグレードの説明がサーバ側の構成から来るなど、一部の内容を補完し、ダウンロードの進捗バーが に正しく表示されます.サーバ側コードの追加および説明 appアップグレード手順を追加します.
一)必要なプラグインを先にインストールする:
ionic plugin add cordova-plugin-app-version
ionic plugin add cordova-plugin-file
ionic plugin add cordova-plugin-file-transfer
ionic plugin add cordova-plugin-file-opener2
二)app.jsのrunメソッドにコードを追加する
*特に注意したいのは、ブラウザでこのコードをデバッグできないため、依存関係を増やすことです.chrome://inspectionデバッグ
三)バックエンドのver.phpコード
説明:callbackはjsonp呼び出しをサポートするためであり、ver.phpなどがドメイン間で呼び出されるようにする
四)appアップグレード手順:
1.プログラムを修正して、apkをコンパイルして、コンパイルする前に/config.xmlの中のversionを修正することを覚えて、1つのバージョン番号を高めます
2.apkをサーバに指定したパスにアップロードする
3.サーバー側ver.phpコードの変更:$response=array('ver'=>"0.0.3",'desc'=>'1.xxx
2.yyyy
3.zz');
既存の文を注釈し、新しい文を追加することをお勧めします.これは、完全なアップグレード履歴を保持し、新しい文でverとconfig.xmlのversionを変更し、descのアップグレード内容を変更することに相当します.
<>
一)必要なプラグインを先にインストールする:
ionic plugin add cordova-plugin-app-version
ionic plugin add cordova-plugin-file
ionic plugin add cordova-plugin-file-transfer
ionic plugin add cordova-plugin-file-opener2
二)app.jsのrunメソッドにコードを追加する
$ionicPlatform .ready(function () {
//
//
if (ionic.Platform.isAndroid()) {
$http.jsonp('http://www.yourdomain.com/ver.php?callback=JSON_CALLBACK')
.then(function (data) {
var serverAppVersion = data.data.ver;//
$cordovaAppVersion.getVersionNumber()
.then(function (version) {
if (version != serverAppVersion) {
var confirmPopup = $ionicPopup.confirm({
title: ' :' + serverAppVersion,
template: data.data.desc, //
cancelText: ' ',
okText: ' '
});
confirmPopup.then(function (res) {
if (res) {
if (version != serverAppVersion) {
$ionicLoading.show({
template: " , ..."
});
var url = "http://www.yourdomain.com/app.apk";
var targetPath = "file:///mnt/sdcard/Download/app.apk";
var trustHosts = true;
var options = {};
$cordovaFileTransfer.download(url, targetPath, options, trustHosts)
.then(function (result) {
$cordovaFileOpener2.open(targetPath, 'application/vnd.android.package-archive'
).then(function () {
}, function (err) {
});
$ionicLoading.hide();
}, function (err) {
alert(' ');
}, function (progress) {
// ,
var downloadProgress ;
downloadProgress = (progress.loaded / progress.total) * 100;
$ionicLoading.show({
template: ' :' + Math.floor(downloadProgress) + '%'
});
if (downloadProgress > 99) {
$ionicLoading.hide();
}
});
}
}
});
}
});
});
}//if (ionic.Platform.isAndroid()) {
});
*特に注意したいのは、ブラウザでこのコードをデバッグできないため、依存関係を増やすことです.chrome://inspectionデバッグ
三)バックエンドのver.phpコード
<?php
header("Content-type:text/html;charset=utf-8");
$callback = $_GET['callback'];
$response = array('ver'=>"0.0.3", 'desc'=>'1.xxx<br>2.yyyy<br>3.zzz');
$json = json_encode($response);
echo "$callback($json)";
説明:callbackはjsonp呼び出しをサポートするためであり、ver.phpなどがドメイン間で呼び出されるようにする
四)appアップグレード手順:
1.プログラムを修正して、apkをコンパイルして、コンパイルする前に/config.xmlの中のversionを修正することを覚えて、1つのバージョン番号を高めます
2.apkをサーバに指定したパスにアップロードする
3.サーバー側ver.phpコードの変更:$response=array('ver'=>"0.0.3",'desc'=>'1.xxx
2.yyyy
3.zz');
既存の文を注釈し、新しい文を追加することをお勧めします.これは、完全なアップグレード履歴を保持し、新しい文でverとconfig.xmlのversionを変更し、descのアップグレード内容を変更することに相当します.
<