ios - ASP.NET 检索 iOS 应用程序到期日期

标签 ios asp.net web-services mobile

问题
有什么方法可以使用 ASP.NET 检索 .ipa 文件的过期日期? 我认为我将所有 .ipa 文件(生产)集中在文件服务器中,并允许我的网站读取它们并检索到期日期。

原因
这是因为我有一个生产网站,允许用户访问数据输入和报告。但是,一些数据条目构建为 .ipa 文件(应用程序)。因此,为了让我跟踪哪些文件即将过期,我需要一些跟踪方法。所以我想我的网站 (ASP.NET) 能够检索 .ipa 文件的到期日期对我来说会很好。

最佳答案

我假设您的 ipa 文件是开发人员构建或企业开发的结果,即它们是自签名的。如果是这样,那么是的,我认为这是可能的,如果你对肮脏的黑客没问题,那就没那么复杂了。

ipa 文件实际上只是应用程序文件夹的 ZIP 存档。它包含 Payload 文件夹,里面应该有 embedded.mobileprovision 文件。它的实际格式有点复杂,在 SO 上有一些关于它的讨论(例如参见 How to determine at run-time if app is for development, app store or ad hoc distribution? )

但是,如果您接受肮脏的黑客攻击,您只需在二进制数据中搜索看起来像这样的文本部分

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>

    ... 

    <key>ExpirationDate</key>
    <date>2017-02-08T02:39:06Z</date>

简而言之,embedded.mobileprovision 是一个经过签名的 plist,它本身是一种有点奇怪的基于 XML 的格式 https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/PropertyLists/UnderstandXMLPlist/UnderstandXMLPlist.html

关于ios - ASP.NET 检索 iOS 应用程序到期日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42755487/

相关文章:

ios - 如果在 iOS 设备上单击主页按钮,则关闭应用程序

iOS:动态标签/验证错误的辅助功能支持?

ios - 将 Swift 添加到项目中会显着增加大小。如何以及何时可以避免

javascript - 获取 ASP 文本框的更改值

c# - 如何在 C# 中从源代码创建哈希码?

c# - GridView 排序升序不起作用

web-services - 未捕获的类型错误 : Cannot call method 'request' of undefined in sencha touch2 external webservice

java - 网络服务安全

java - 有关 WSDL 绑定(bind)的详细信息

ios - 自动签名无法解决 "Project"目标权利的问题