通过扫码自定义链接安装iOS app,版本更新总结。

1、打包ipa,plist
工具:xcode6
证书:企业级开发证书

1.1)xcode6开始企业级打包时不在生成plist,需要自己编写:模版见下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<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>(这里是IPA文件的路径, http路径就可以)</string>
<key>New item</key>
<string></string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>c(这个名字在xcode 中查看)</string>
<key>bundle-version</key>
<string>1.1(app的版本,在xcode中看)</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>(这里是APP的名称)</string>
</dict>
</dict>
</array>
</dict>
</plist>

方案1

2、选择https服务器
plist文件必须放到 https得服务器上。
这里使用七牛的免费域名,需要去七牛的网站上注册。
注册地址:https://portal.qiniu.com/

3、上传ipa,plist

注册完成后,会有一个免费的http域名可以用;
在域名设置-https 在申请一个https的域名,这里需要提交证件照片,等待审核,正常一天内审核通过;

审核通过后,上传plist文件和ipa文件到空间上(ipa也可以当在其他http的服务上)

在文件名右侧的 倒三角可以查看http访问地址:例:
http://7wy3rr.com1.z0.glb.clouddn.com/****.plist


转成https的访问地址为: https://dn-***.qbox.me/****.plist(前提是https的申请通过)


4、代码处理
4.1)代码中判断版本是否为最新
获取当前版本:NSDictionary *localDic =[[NSBundle mainBundle] infoDictionary];

NSString *currVersion =[localDic objectForKey:@"CFBundleShortVersionString"];
获取最新版本:本地数据库保存最新版本号


4.2)更新版本
#define APP_DownloadURL @"itms-services://?action=download-manifest&url=https://dn-*****.qbox.me/gsSales.plist"

NSURL *url = [NSURL URLWithString:APP_DownloadURL];
[[UIApplication sharedApplication] openURL:url];


5)、错误原因
5.1)process launch failed: timed out waiting for app to launch

1、确定plist得外链是否可用,就直接把 哪个https得外链 在 浏览器上打开,如果可以直接现实plist里得内容,这就可以说明 这个链接是没有问题得。
2、plist里面地址配置好,上传得网盘,生成https外链,然后 在苹果手机上输入
itms-services:///?action=download-manifest&url=https://XXXXXX.qbox.me/XXXXX.plist
把红色部分换成你的外链,这样就可以直接下载app了,
如果第一步正确,第二步不出下载,说明是plist可能有问题

如果 出现了下载效果,但下载过程中安装失败,那可能是你app证书得问题。
5.2)安装失败
1、网络原因 下载ipa包时报错 切换其他网络尝试

 方案2:

http://fir.im/

提供app内测服务。

 

参考:

http://jingyan.baidu.com/article/a3aad71aa5fbfbb1fb0096b1.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Flutter iOS应用程序中实现应用程序版本更新,可以按照以下步骤进行操作: 1. 获取当前应用程序版本:在Flutter应用程序中,可以使用`package_info`插件获取当前应用程序的版本信息。可以在`pubspec.yaml`文件中添加以下依赖项: ```yaml dependencies: package_info: ^2.0.0 ``` 然后运行`flutter packages get`命令获取依赖项。 在Flutter代码中,可以使用以下代码获取当前应用程序的版本信息: ```dart import 'package:package_info/package_info.dart'; PackageInfo packageInfo = await PackageInfo.fromPlatform(); String version = packageInfo.version; ``` 2. 获取最新应用程序版本:为了实现应用程序版本更新,需要从服务器或其他途径获取最新应用程序版本信息。可以使用HTTP客户端库(例如`http`或`dio`)向服务器发送请求,并解析响应以获取最新版本信息。 3. 比较应用程序版本:获取当前应用程序版本和最新应用程序版本后,需要将它们进行比较,以确定是否需要进行应用程序版本更新。可以使用以下代码比较版本: ```dart int compareVersion(String currentVersion, String newVersion) { List<String> currentVersionSplit = currentVersion.split('.'); List<String> newVersionSplit = newVersion.split('.'); for (int i = 0; i < currentVersionSplit.length; i++) { int currentVersionPart = int.parse(currentVersionSplit[i]); if (newVersionSplit.length <= i) { return 1; } int newVersionPart = int.parse(newVersionSplit[i]); if (newVersionPart > currentVersionPart) { return 1; } else if (newVersionPart < currentVersionPart) { return -1; } } return 0; } ``` 如果返回值为1,则需要进行应用程序版本更新。 4. 显示应用程序版本更新提示:如果需要进行应用程序版本更新,可以显示一个提示对话框,提示用户进行应用程序版本更新。可以使用Flutter的`flutter_launcher_icons`插件生成应用程序图标,并将应用程序图标添加到提示对话框中。 5. 打开App Store进行应用程序版本更新:如果用户同意进行应用程序版本更新,可以使用Flutter的`url_launcher`插件打开App Store,让用户下载最新版本的应用程序。可以使用以下代码打开App Store: ```dart import 'package:url_launcher/url_launcher.dart'; Future<void> launchAppStore(String appStoreUrl) async { if (await canLaunch(appStoreUrl)) { await launch(appStoreUrl); } else { throw 'Could not launch App Store'; } } ``` 完成以上步骤后,就可以在Flutter iOS应用程序中实现应用程序版本更新了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值