我试图动态生成Apple iOS清单,而不必指向实际存在的文件。原因是manifest.plist
文件中的IPA链接将包含一个带有安全令牌的URL,该URL在一定时间后将失效。
以下是返回有效清单文件的action方法中的相关代码:
//manifestTemplate is just a string resource, then I insert the correct value for each XML node...
var output = string.Format(manifestTemplate, buildSASUrl, smallIconUrl, largeIconUrl, bundleId, version, title);
var bytes = Encoding.UTF8.GetBytes(output);
return new FileContentResult(bytes, "text/xml") { FileDownloadName = "manifest.plist" };
我试图打开iOS来安装应用程序的链接是:
itms-services://?action=download-manifest&url=https://website.net/Manifest/GetIOSManifest?buildId=fjEf1li1MUuxjVboSj7mVA
我还试图通过将GetIOSManifest
动作重命名为manifest.plist
来使iOS无效,以此来欺骗iOS。
有什么办法可以做到这一点?我正在使用Safari进行测试。
答案 0 :(得分:1)
我通过确保操作方法返回了一个FileContentResult
且没有FileDownloadName
且模仿类型为text/xml
的{{1}}
此外,客户端javascript还必须encodeURIComponent()
链接中使用的itms-services
清单的URL。