iOS企业版应用发布(部分低版本系统)无法安装到最新版app的问题-缓存导致

通过自己网站发布企业版app时,经过测试发现在部分已安装过旧版app的低版本ios手机存在这样的问题 :扫码覆盖安装新版app,安装到的仍然是就版本的app。这样就导致部分用户一直无法更新到最新版本。经排查发现是由于手机缓存导致:这里缓存主要有两部分,一是页面下载plist的资源路径,二是plist指向ipa包的下载路径:

一、发布企业应用的主要流程如下

  1. 使用企业证书打包应用ipa文件并发布到资源服务器;
  2. 生成plist文件,在文件配置汇中设置ipa文件路径,指向上一步中生成ipa文件下载路径,发布plist文件;
  3. 创建下载页面,页面中添加<a>标签下载安装按钮,href指向上一步汇总plist文件url,发布页面;

二、在下载路径中加入随机字符防止缓存导致不能下载安装新版应用

  1. 在下载按钮链接中添加一个随机字符串
  2. 在plist文件下载ipa文件路径中加一个随机字符串

原文地址:https://www.cnblogs.com/pangys/p/9498839.html

时间: 2024-10-06 06:44:56

iOS企业版应用发布(部分低版本系统)无法安装到最新版app的问题-缓存导致的相关文章

低版本系统兼容的ActionBar(二)ActionProvider+分离式ActionBar+分离式的ActionMode

       这篇文章主要讲的是在低版本兼容的ActionBar中实现自定义的ActionProvider,ShareActionProvider的使用方法,如何实现分离式ActionBar,外加在分离式ActionBar上的ActionMode的效果. 一.自定义ActionProvider 建立一个类,继承android.support.v4.view.ActionProvider,然后复写里面的方法即可.主要就是初始化视图和相应点击事件. 范例一: SettingsActionProvid

低版本系统兼容的ActionBar(三)自定义Item视图+进度条的实现+下拉导航+透明ActionBar

       一.自定义MenuItem的视图 custom_view.xml (就是一个单选按钮) <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android

低版本系统兼容的ActionBar(四)添加Tab+添加自定义的Tab视图

在ActionBar中添加Tab是很有用的技巧.在support V7库的支持下,我们几乎可以用和之前一样的方式来添加Tab,对于Tab来说,我们可以和MenuItem一样,给他定义自己的视图.我这里定义了个进度条,主要是来说明这个问题.本系列的博文也将接近尾声了,后面就是个定义ActionBar样式和一个仿照微信的实例,顺便讲解下Fragment和ViewPager的用法. activity_main.xml(定义了一个Fragment) <RelativeLayout xmlns:andro

低版本系统兼容的ActionBar(六)用Fragment+ViewPager+Tab实现快速导航

Tab经常和Fragment结合使用,这一讲我们用3种方式来实现这种快捷导航. 0.重要的两个监听器 MyTabListener,这个我们之前已经接触过了 package com.kale.actionbar05; import android.support.v4.app.FragmentTransaction; import android.support.v4.view.ViewPager; import android.support.v7.app.ActionBar; import a

hyperscan在低版本系统应用问题

编译环境:centos6.3 32位/64位 由于hyperscan使用许多C++11特性,在低版本系统gcc版本不能编译.后来发现在runtime时也就是hs_scan时只需要依赖libhs_runtime.a这个库,是由c文件编译成的.所以想到直接编译出libhs_runtime.a,先执行cmake,再在生成的MakeFile文件中找到runtime库生成脚本,单提取出来执行,编译生成成功. 而后直接使用libhs_runtime.a编译运行时部分,程序能够正常运行了.哈哈哈

Android 高版本API方法在低版本系统上的兼容性处理

Android 版本更替,新的版本带来新的特性,新的方法. 新的方法带来许多便利,但无法在低版本系统上运行,如果兼容性处理不恰当,APP在低版本系统上,运行时将会crash. 本文以一个具体的例子说明如何在使用高API level的方法时处理好兼容性问题. 例子:根据给出路径,获取此路径所在分区的总空间大小. 在安卓中的文件存储使用参考中提到: 获取文件系统用量情况,在API level 9及其以上的系统,可直接调用File对象的相关方法,以下需自行计算 一般实现 就此需求而言,API leve

低版本系统兼容的ActionBar(五)设置ActionBar的全套样式,从未如此简单过

     设定ActionBar的样式,是我们必须掌握的技能,在之前我们可能都需要一行一行的写代码,然后在模拟器上测试效果,但是现在我们有个一个很棒的工具来设定样式.设定ActionBar样式的工作从未如此简单过! http://romannurik.github.io/AndroidAssetStudio/index.html 进入后我们就可以直接在可视化的界面中进行修改了,设定好后直接下载压缩包.复制到res目录下即可.最后要记得把Application或者Activity的主题修改为你做的

GridView.setChoiceMode(GridView.CHOICE_MODE_MULTIPLE_MODAL)不兼容低版本系统解决方案

项目开发中需要使用GridView批处理操作,多项选择. 但是GridView.setChoiceMode(GridView.CHOICE_MODE_MULTIPLE_MODAL)不兼容低版本. 找解决方案,查看android sdk提供的demo里介绍的GridView多项选择的方法 public class Grid3 extends Activity { GridView mGrid; @Override protected void onCreate(Bundle savedInstan

高版本api在低版本中的兼容

直接上例子,看如何避免crash. eg:根据给出路径,获取此路径所在分区的总空间大小. 文档说明:获取文件系统用量情况,在API level 9及其以上的系统,可直接调用File对象的相关方法,以下需自行计算 API level 9及其以上,调用 File.getTotalSpace() 即可, 但是在API level 8 以下系统File对象并不存在此方法 //如下 /** * Returns the total size in bytes of the partition contain