java语言生成plist下载ipa文件

在通过html页面下载ipa文件安装,需要通过plist文件下载,并且还要遵循 itms-services协议。 

也就说我们需要生产plist文件,然后通过html页面链接指向plist文件。

下面是通过java语言生成plist文件:

public static String createPlist(String url,String version,String title) throws IOException{
        log.info("==========开始创建plist文件");
        //这个地址应该是创建的服务器地址,在这里用生成到本地磁盘地址
        final String path = GetPropertiesValue.getValues("ios_plists_path");
        File file = new File(path);
        if (!file.exists()) {
            file.setWritable(true);//赋予文件权限
            file.mkdirs();
        }
        String plistFile = GetPropertiesValue.getValues("plists_name");//文件名称
        final String PLIST_PATH = path + plistFile;
        file = new File(PLIST_PATH);
        if (!file.exists()) {
            try {
                file.createNewFile();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        String sub_title = GetPropertiesValue.getValues("plists_sub_title");
        String plist = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
                 + "<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n"
                 + "<plist version=\"1.0\">\n" + "<dict>\n"
                 + "<key>items</key>\n" 
                 + "<array>\n" 
                 + "<dict>\n"
                 + "<key>assets</key>\n" 
                 + "<array>\n" 
                 + "<dict>\n"
                 + "<key>kind</key>\n"
                 + "<string>software-package</string>\n"
                 + "<key>url</key>\n"
                 //你之前所上传的ipa文件路径
                 + "<string>"+url+"</string>\n" 
                 + "</dict>\n" 
                 + "</array>\n"
                 + "<key>metadata</key>\n"
                 + "<dict>\n"
                 + "<key>bundle-identifier</key>\n"
                 //这个是开发者账号用户名,也可以为空,为空安装时看不到图标,完成之后可以看到
                 + "<string></string>\n"
                 + "<key>bundle-version</key>\n"
                 + "<string>"+version+"</string>\n"
                 + "<key>kind</key>\n"
                 + "<string>software</string>\n"
                 + "<key>subtitle</key>\n"
                 + "<string>"+sub_title+"</string>\n"
                 + "<key>title</key>\n"

上面重要的地方有两点

  1. url:这个参数是为了找到你自己上传的ipa文件;
  2. bundle-identifier:这个参数是开发者账号用户名,可以为空或任意,区别在于安装的过程中有无图标和进度

下面是生成html文件,通过html的方式下载这个ipa文件。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>下载</title>
<script type="text/javascript">
var url = 'https://127.0.0.1:8080//upload/plists/20160606143426371_63551_1.plist';
window.location.href = "itms-services://?action=download-manifest&url=" + url;
</script>
</head>
<body></body>
</html>
注意:访问这个plist文件的时候必须是基于HTTPS的,所以这就需要有一台https服务器 。
这样只要我们只要访问这个html地址,就可以自动下载ipa文件了。 

猜你喜欢

转载自blog.csdn.net/chenrisheng1/article/details/79913116
今日推荐