写点什么

AppHub:绕过苹果审核机制更新 iOS App

  • 2015-08-18
  • 本文字数:1045 字

    阅读完需:约 3 分钟

为了保证应用程序的合法性和安全性,苹果公司对每一款应用程序设定了严格的审查制度。每一个软件在发布之前都会经历一段时间的机器或人工审核阶段。这个时间短则几天,多达数周。对于敏捷软件开发团队而言,他们经常面临上一个版本还在审查中,一个新的版本已经完成修改的情况。为了解决如此尴尬的局面,毕业于 MIT 的 Matt Arbesfeld 联合其好友设计了 AppHub ,使得面向 iOS 系统的 React Native 应用能够快速更新。接下来,本文就对 AppHub 进行简要介绍。

首先,作为 Facebook React.js Conf 2015 会议上推出的项目,React Native 利用开源 JavaScript 库和 React.js 进行 iOS 和 Android 原生应用的开发。其优势在于提高了代码和模块的可重用性,并使得代码从服务器端动态更新成为可能。目前,Facebook 已经将 React Native 用于生产环境,并将其进行开源,代码依托在 GitHub 中。

正是基于 React Native 的诸多特性,AppHub 实现了快速更新 React Native 应用的功能。那么,究竟如何利用 AppHub 服务实现应用的快速更新呢?首先,应用开发人员需要下载并解压用于 iOS 的 AppHub SDK,并将其添加到应用程序中。具体做法为:把下载的 AppHub.framework 放入到 Xcode 项目;选择“Copy items to destination’s group folder”复选框;在 Link Binary With Library 的编译阶段添加 libz.dylib;把应用连接到 AppHub。接下来,开发人员就可以不断的使用 dashboard 或者 REST API 把更新发送到 AppHub 服务器中。

在 AppHub 中,开发人员为每一个移动应用程序都创建了一个 App。这个 App 拥有唯一的应用 ID,用来配置 SDK。此外,该 App 会保留移动应用的多个版本。开发人员利用 AppHub 的 dashboard 可以对这些版本进行配置和部署。服务器自动探测 App 的配置,把新的代码替换到到应用中,从而实现客户端应用的自动更新。目前,AppHub 所支持客户端操作系统为 iOS 8.0+,所支持 React Native 库的版本为 v0.7.0+。另外,就开发者所关心的 AppHub 是否是否被苹果公司所允许这一问题,AppHub 官网表示,苹果公司在开发者协议里特别允许了这种做法。本质上,AppHub 应用和 React Native 应用基本相同。而 React Native 应用已被证明是可以被苹果所接受的。因此,AppHub 这种做法肯定也会被苹果公司所接受。


感谢徐川对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-08-18 08:224870
用户头像

发布了 268 篇内容, 共 130.4 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

Android | 音视频方向进阶路线及资源合集

轻口味

android 音视频 9月日更

博睿数据亮相 2021 服贸会,以智能运维赋能数字化体验

博睿数据

为什么行业老大经常和老二合并?

石云升

市场垄断 9月日更

模块7

Geek_ywh40v

浪潮云洲×明风机械:让工业“哑设备”发声

云计算

实时移动通信中基于时空域联合约束的低照度视频增强技术

OpenIM

Go- 数据格式解析

HelloBug

json xml Go 语言 gob

弱网下的极限实时视频通信

声网

音视频 编码 极限视频通信

如何从业务中抽取出通用性模板或框架-通用权限管理框架

张音乐

Java 设计模式 9月日更

华为云GaussDB(for Redis)发布全新版本,两大核心特性正式亮相

华为云数据库小助手

性能调优 GaussDB GaussDB ( for Redis ) 华为云数据库

Go- 文件读写-2

HelloBug

文件读写 Go 语言

灰度再度增持!!!Filecoin可投资吗?Filecoin值得投资吗?

区块链 分布式存储 IPFS 投资filecoin filecoin值得投资吗

TCP传输控制协议(二)

姬翔

9月日更

狂刷《Java权威面试指南(阿里版)》,冲击“金九银十”有望了

Java 编程 架构 面试 程序人生

ipfs矿机挖矿原理是什么?ipfs矿机怎么搭建?

ipfs矿机挖矿原理是什么 ipfs矿机怎么搭建

运维工程师主要是做什么的?和网络工程师有啥区别?

行云管家

云计算 运维 网络 IT运维

模型工厂,让AI算法触手可达 | StartDT Tech Lab 05

奇点云

SEO行业的困境:转型还是夹缝中求生存

石头IT视角

CSS架构之tool层

Augus

9月日更

如何拥有自己的openLooKeng?超详细的安装配置指导看这里

LooK

【VueRouter 源码学习】第六篇 - 路由匹配的实现

Brave

源码 vue-router 9月日更

数据中台是什么?

奔向架构师

数据中台 数据仓库 9月日更

架构1期模块七作业

五只羊

架构实战营

市值管理机器人特点简析,交易所刷交易量机器人搭建

量化系统19942438797

市值机器人 市值管理

模块七作业

Clarke

详解微信异步队列 MQ 2.0 的功能优化及拓展思路

OpenIM

玩转TypeScript 工具类型(上)

有道技术团队

typescript 大前端 客户端

openLooKeng+Ranger+LDAP 认证鉴权能力演示

LooK

大数据 openLooKeng Ranger

【数据库】数据库访问控制策略包含哪些?都一样吗?

行云管家

数据库 阿里云

应急响应篇:windows入侵排查

网络安全学海

黑客 网络安全 信息安全 WEB安全 应急响应

首发10万字Mysql实战文档,几乎涵盖你需要的所有操作|超清PDF

今晚早点睡

Java MySQL 程序员

AppHub:绕过苹果审核机制更新iOS App_移动_张天雷_InfoQ精选文章