更新问题
我设法阅读了info.plist文件,得到了以下回复。我不知道如何解密为XML。
我不确定,我怎么读这个?
实际问题
我想创建一个类似Diawi的应用程序。
为此,我已经完成了Android应用程序上传部分,现在我想在C#中阅读IPA信息,如应用程序名称,应用程序版本,包名等。
我搜索了很多,但找不到任何相关的文档。
有人可以指导我做正确的方法吗?
答案 0 :(得分:2)
IPA文件是ZIP文件,因此您需要做的第一件事就是提取此文件。
解压缩IPA文件后,我们将获得一个名为Payload
的文件夹,扩展名为app
的文件将存储在文件夹Payload
中,
也许这个名为 xxxx.app 的应用程序,以及info.plist
我们可以在此应用程序xxxx.app中找到,与文件夹Payload相关的路径应为 Payload / xxxx.app / info的.plist 强>
// parse info.plist
File plistFile = new File(plistFilePath);
NSDictionary rootDict = null;
try {
rootDict = (NSDictionary) PropertyListParser.parse(plistFile);
// get bundle id
NSString parameter = (NSString) rootDict.objectForKey("CFBundleIdentifier");
ipaInfo.put("CFBundleIdentifier", parameter.toString());
// get application name
parameter = (NSString) rootDict.objectForKey("CFBundleName");
ipaInfo.put("CFBundleName", parameter.toString());
// get version
parameter = (NSString) rootDict.objectForKey("CFBundleVersion");
ipaInfo.put("CFBundleVersion", parameter.toString());
// get bundle display name
parameter = (NSString) rootDict.objectForKey("CFBundleDisplayName");
ipaInfo.put("CFBundleDisplayName", parameter.toString());
// get ios mini. version
parameter = (NSString) rootDict.objectForKey("MinimumOSVersion");
ipaInfo.put("MinimumOSVersion", parameter.toString());
} catch (Exception e) {
e.printStackTrace();
}