在ios的开发中, 通过苹果的各种秘钥加密, 我们会生成一个.ipa文件,这就是我们的应用软件的安装包. 这个文件是能被安装到iphone/ipad上的.
可是,如何才能让不在身边的人安装上这个应用呢? 发微信,不可以, QQ,传过去点击安装,不可以, 发布到苹果市场,不容易通过,周期太长.
到底该如何做? 看下面告诉你答案. 5分钟搞定一个ipa,苹果应用发布服务器. 让所有测试人员可以网上更新.

整理必要文件

  1. 下载ipa的首页(index.html)
    这里我们就写一个下载按钮
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="description" content="">
<meta name="keywords" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>哦靠炫衣</title>
</head>
<body>
<a href="itms-services://?action=download-manifest&url=https://achar.coding.me/test/ipa.plist">下载哦靠炫衣ios测试版</a><!--修改这里-->
</body>
</html>

https://achar.coding.me/test/ipa.plist 是我的服务器的ipa.list的路径, 使用时改为自己的即可.

  1. 苹果PLIST文件(ipa.plist)
    这个文件是苹果下载的配置文件
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>https://achar.coding.me/test/okoxy.ipa</string><!--修改这里-->
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.okoxy.beihai</string><!--修改这里-->
<key>bundle-version</key>
<string>1.31.1287</string><!--修改这里-->
<key>kind</key>
<string>software</string>
<key>title</key>
<string>哦靠炫衣</string><!--修改这里-->
</dict>
</dict>
</array>
</dict>
</plist>

注意修改代码为你的软件信息:
https://achar.coding.me/test/okoxy.ipa, 改为你自己的ipa包的网络下载路径. 可以为任意的网络下载路径.(本服务器的,其他服务器的,https,http等都没有限制),建议使用一个下载速度快的服务器上.
com.okoxy.beihai, 改为你的bundle-identifier, 你自己的包名.
1.31.1287, 改为你自己的版本号,其实没有太多关系,随便填就行.
哦靠炫衣, 改为你的应用的名称.

bundle-identifier的位置

  1. 准备ipa文件
    Xcode, 选择编译为Generic iOS Device, 菜单Product->Archive, 按钮"export...", 选择Save for AD Hoc Deployment, 按钮Next, 选择账号,点Choose,选择"Export one app for all compatible device", 按钮Next, 按钮Next,选择一个存储的目录,导出完成.
    导出的ipa如果名称包含中文,建议改为英文名称.
    更详细的教程请问度娘吧.
  2. 来一个全家福
    所有所需的文件列表

    注册Coding.net账号,启用Pages服务

    理论上是Github账号更好. 但是这里有个问题是, Github的pages服务是基于http的. 而Coding.net的服务是基于https的. 主要的是, 都是免费Free.
    新建一个项目.
    打开代码页面,点击"Pages服务"

    选择分支, 点保存

    开通成功, 可以点上面的链接访问(原本链接是: http://achar.coding.me/test), 此截图是开通https的截图.

    开通https服务, 强制启用. 开启成功后访问地址变为https

    上传文件

    通过git, clone下刚才在git上创建的项目, 将三个文件(html, plist, ipa)放入项目并提交push. 注意分支是master.
    提交完成后刷新接口看到最新页面.

    测试下载

    在苹果手机的Safari浏览器打开刚才生成的地址.如: https://achar.coding.me/test 点击下载. 而后按Home键返回,即可看到正在安装的应用.


吐槽的后话

我其实不想搭建这个服务器的. 虽然简单,但是蓝牙.
给我力量的是牛掰的蒲公英. 赐予我力量吧!我是蒲公英的付费用户.
原本用蒲公英的免费版,做ipa应用发布服务器. 用着还可以.
可恶的我,应为上线app store被拒后,依然购买了蒲公英的ios企业版服务600大元(X宝上企业IPA签名可以到200).
第一次用企业签名, 蒲公英小哥说跟app store一样, 只是从蒲公英上下载. 安装后才知道,还要信任蒲公英的企业签名, 难道让我一个一个告诉我的小白用户如何操作.
这个我认了.
一个月后(蒲公英企业签名服务有效期一个月), 我要发布一个测试包软件, XX, 又让我掏600, 说了多次,我不是让所有人用,我只要我的测试人员使用,只需要蒲公英免费版的功能,就可以了. 小哥很坚持, 交600就可以了. 我去.
下午用1个小时搞定服务器. 我挥一挥衣袖, 愤然离蒲公英而去.
脑袋里萦绕着一句话: "技术何苦为难技术"

项目公开地址为:
https://git.coding.net/achar/test.git
项目测试网页地址为:
https://achar.coding.me/test
欢迎留言炮轰.

https://www.cnblogs.com/acharless/p/7810626.html

5分钟快速构建苹果IPA免费发布服务器的更多相关文章

  1. 【Fungus入门】10分钟快速构建Unity中的万能对话系统 / 叙事系统 / 剧情系统

    我真的很久没有写过一个完整的攻略了(笑),咸鱼了很久之后还是想来写一个好玩的.这次主要是梳理一下Unity的小众插件Fungus的核心功能,并且快速掌握其使用方法. 官方文档:http://fungu ...

  2. 带你十分钟快速构建好 SpringBoot + SSM 框架

    目前最主流的 java web 框架应该是 SSM,而 SSM 框架由于更轻便与灵活目前受到了许多人的青睐.而 SpringBoot 的轻量化,简化项目配置, 没有 XML 配置要求等优点现在也得到了 ...

  3. 快速构建CLI程序并发布到PyPi

    构造一个简单的CLI程序 typer 这个从去年就被各种营销号吹成Web框架的 第三方库, 与 FastAPI 同出一人之手,它不是Web框架,它是一个用来构建CLI程序的库,我们就简单搞个例子 # ...

  4. 【容器云】十分钟快速构建 Influxdb+cadvisor+grafana 监控

    本文作者:七牛云布道师@陈爱珍,DBAPlus社群联合发起人.前新炬技术专家.多年企业级系统的应用运维及分布式系统实战经验.现专注于容器.微服务及DevOps落地的研究与实践. 安装过程 三个都直接下 ...

  5. 快速构建Windows 8风格应用36-商店应用发布流程

    原文:快速构建Windows 8风格应用36-商店应用发布流程 引言 在发布应用之前,我们需要注册开发者账号才能够发布应用.我们可以登录https://appdev.microsoft.com/Sto ...

  6. 快速构建Windows 8风格应用3-打包发布应用

    原文:快速构建Windows 8风格应用3-打包发布应用 本篇博文主要介绍如何打包应用程序,成功后如何部署应用程序,最后介绍如何发布应用程序到应用商店中. 如何打包Windows 8风格应用程序呢? ...

  7. 快速构建Windows 8风格应用37-常见发布注意事项

    原文:快速构建Windows 8风格应用37-常见发布注意事项 引言 通常我们发布Windows Store应用失败后,会返回一些错误需要我们去修改.我之前在给学生做培训的时候发现大部分同学应用被打回 ...

  8. (转)10 分钟内快速构建能够承载海量数据的 nginx 日志分析与报警平台

    10 分钟内快速构建能够承载海量数据的 nginx 日志分析与报警平台 原文:https://blog.qiniu.com/archives/8713

  9. Expo大作战(十八)--expo如何发布成独立应用程序,打包成apk或者ipa,发布到对应应用商店

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

随机推荐

  1. linq 分组

    var data = from r in listRecords group r by new { r.CampaignId, r.CityId, r.Gift_DistributorId, r.Pr ...

  2. PHP常用的一些函数:

    背景:这一次是对一些函数进行整理,方便以后的使用. 1.date(); date()函数的作用是获取当前日期时间,由于PHP 5.0对date()函数进行了重写,因此,当前的日期时间函数比系统时间少了 ...

  3. jquery ajax在IE9以下进行跨域请求时无效的问题

    第一步:设置浏览器安全属性,启用[通过域访问数据源]选项: 1.选择Internet选项 2.选择安全---自定义级别 3.找到其他---通过域访问数据源,选择启用,然后确定就可以了. 第二步:调用a ...

  4. RAID技术简单分析

    RAID技术解析 RAID:独立磁盘冗余阵列(Redundant Array of Independent Disks) RAID技术就是将许多块硬盘设备组合成一个容量更大.更安全的硬盘组,可以将数据 ...

  5. Linux Shell ssh登录脚本

    Linux 登陆服务器敲命令太多,某时候确实不便,所以就用shell写了一个  我的blog地址: http://www.cnblogs.com/caoguo 一.说明 支持秘密和密钥两种格式 用户名 ...

  6. 中望CAD VBA检测文件是否存在

    Option Explicit Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "Path ...

  7. centos安装指定mysql

    mysql下载地址:http://repo.mysql.com/ nginx下载地址 我下载是这个 http://nginx.org/packages/centos/7/noarch/RPMS/ngi ...

  8. 【转载】使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化

    一.创建一个空的项目作为存放整个项目的路径 1.选择 File——>new——>Project ——>Empty Project 2.WorkspaceforTest为项目存放文件夹 ...

  9. [如何在Mac下使用gulp] 1.创建项目及安装gulp

    1.创建项目 2.安装gulp 3.创建gulpfile.js文件 4.运行gulp 创建项目 -创建项目文件夹命名为firstGulp,并在firstGulp目录下运行 npm init .npm ...

  10. 推荐系统相关比赛-kaggle

    from: 七月在线 电商推荐与销量预测相关案例 一.预测用户对哪个事件感兴趣(感兴趣不一定去参加) 用户历史参加事件.社交信息.浏览信息(app).要预测的事件 recall:召回率 准确率: 协同 ...