使用“提供更新的应用程序”;为iOS设备分发企业应用程序';?
我正在使用苹果的 在我的应用程序中,更新旧版本以防止访问过期信息非常重要。因此,我实现了如下的应用程序更新机制 当用户启动应用程序时,每次我通过请求我在自己的服务器上创建和托管的web服务,将安装的构建版本代码与服务器上的版本代码进行比较。如果找到更新,我会要求用户通过使用“提供更新的应用程序”;为iOS设备分发企业应用程序';?,ios,uialertview,updates,in-house-distribution,Ios,Uialertview,Updates,In House Distribution,我正在使用苹果的 在我的应用程序中,更新旧版本以防止访问过期信息非常重要。因此,我实现了如下的应用程序更新机制 当用户启动应用程序时,每次我通过请求我在自己的服务器上创建和托管的web服务,将安装的构建版本代码与服务器上的版本代码进行比较。如果找到更新,我会要求用户通过UIAlertView升级应用程序,当用户点击更新按钮时,我会按照建议在我的服务器上启动指向.plist的URL NSString*appUpgradeUrl=[nsstringstringwithstring:@”http://
UIAlertView
升级应用程序,当用户点击更新按钮时,我会按照建议在我的服务器上启动指向.plist的URL
NSString*appUpgradeUrl=[nsstringstringwithstring:@”http://domain.com/manifest.plist"];代码>
NSURL*url=[[NSURL alloc]initWithString:[NSString stringWithFormat:@“itms服务:/?操作=下载清单&url=%@”,appUpgradeUrl]]代码>
[[UIApplication sharedApplication]openURL:url]代码>
现在,屏幕上弹出一个UIAlertView
,通过底部的两个按钮询问用户确认,取消和安装。当用户点击Install时,它会被更新的版本替换,当用户点击Cancel时,它会消失,什么也不做
现在我的问题是:我想强制用户更新应用程序,正如我所说的,更新到较新版本以防止访问过期信息非常重要。不幸的是,我不能这样做。我想得到取消按钮点击事件的通知,这样我就可以通过UIAlertView
再次请求应用程序更新,从而强制用户更新应用程序。我可以这样做吗
让我知道是否有比这更好的办法来强制更新应用程序。在创建UIAlertView
时,将控制器指定为代理
当用户单击警报视图上的按钮时,将调用alertView:ClickedButtonIndex:
。您可以根据单击的按钮的索引决定要执行的操作,并使用所需的任何按钮设置UIAlertView
。(请参阅。)如其他答案中所述,您不能成为系统警报的代表。但是,由于您的应用程序现在知道它已过期,因此它可以更改自己的UI,例如,仅将清单url显示为按钮,并且在应用程序与某个版本匹配之前不允许用户执行任何操作。因为我们无法访问代理以获取系统生成的警报。我使用的解决方案是,我将用户重定向到更新屏幕。除非用户更新应用程序,否则他无法使用应用程序的功能。如果必须更新,为什么要提供选择?i、 e.打开一个对话框,说明应用程序必须更新,并且在完成之前不允许任何用户活动。@Bejmax您是对的。为此,我需要创建另一个UIViewController
,并将用户重定向到它,其中将显示一条消息,用更新按钮更新应用程序。我正在寻找一个可以管理系统生成的UIAlertView
按钮行为的选项。无论如何,谢谢你的快速回复。我想你没有正确理解我的问题。在我的例子中,系统会显示UIAlertView
,询问用户是否要安装应用程序。所以我不能得到它的按钮点击的委托。这里也有同样的问题。确定如何处理“取消”点击的任何运气。