ionic3 ios 在线更新

230 阅读1分钟

 更新原理:app内部打开safari浏览器,通过itms-services协议,直接安装IOS应用程序。

<plist version="1.0">
  <dict>
    <key>items</key>
    <array>
      <dict>
        <key>assets</key>
        <array> 
         <dict> 
           <key>kind</key>
            <string>software-package</string>
            <key>url</key>
            <string>https://127.0.0.1/MyApp.ipa</string> // ipa文件位置 
         </dict>
          <dict>
            <key>kind</key>
            <string>display-image</string>
            <key>url</key>
            <string>https://127.0.0.1/icon512.png</string> // icon图片位置
          </dict>
        </array>
        <key>metadata</key>
        <dict> // ipa 文件相关
         <key>bundle-identifier</key>
          <string>****</string> 
         <key>bundle-version</key> 
         <string>版本号</string> 
         <key>kind</key> 
         <string>software</string>   
         <key>title</key>
         <string>app名称</string> 
       </dict> 
     </dict>
    </array>
  </dict>
</plist>

安装打开safari浏览器插件

$ ionic cordova plugin add cordova-plugin-inappbrowser
$ npm install --save @ionic-native/in-app-browser@4

app.module.ts
import { InAppBrowser } from '@ionic-native/in-app-browser';providers:[InAppBrowser]
user.ts
import { InAppBrowser } from '@ionic-native/in-app-browser';
constructor(    public iab: InAppBrowser, // 立即更新  ) {}
// 更新app方法updateApp() {
      const browser = this.iab.create('itms-services://?action=download-manifest&url=https://127.0.0.1/**.plist', '_system'); // 默认浏览器系统打开      browser.show();
}