iOS离线打包
预备环境
- iOS开发环境,Mac OS、XCode 7.2以上版本;
- 下载HBuilder离线打包iOS版SDK(5+ SDK下载)。
SDK目录说明
- HBuilder-Hello:离线打包演示应用;
- Feature-iOS.xls:iOS平台各扩展Feature API对应的库文件列表;
- Readme.txt:版本说明文件。
注意:HBuilder运行环境相关库文件已全部包含在HBuilder-Hello演示应用中
配置编译工程
- 从演示应用HBuilder-Hello创建工程
解压SDK包,将演示应用HBuilder-Hello拷贝出来(可对目录进行重命名),进入目录,双击“HBuilder-Hello.xcodeproj”文件打开工程:
- 配置应用标识(Boundle Identifier)
选择左侧“Project Navigator”中应用工程根目录,选中TARGETS下的HBuilder打开工程属性界面,在General下修改Identity的值:
其中Bundle
Identifier为苹果的AppID,必须与应用发布是配置的Profile关联的AppID一致;Version为应用版本号,在App
Store中显示的版本号,推荐与manifest.json中version下的name值一致;Build为编译版本号,App
Store判断升级使用,推荐与manifest.json中version下的code值一致。
- 配置应用名称
在工程属性界面,切换到Info项下修改Bundle display name的值:
- 配置应用图标和启动界面
演示工程中已经配置好应用的图标和启动界面,只需要将对应图片按照指定的分辨率拷贝到对应工程下的icon和splash目录即可:
- 更新应用资源
注意:Pandora目录为folder references引入方式,修改后不会自动更新,需要在模拟器或设备删除应用后再重新运行
注意:拷贝到Pandora目录的www目录中manifest.json需要删除注释
打开pandora -> apps 目录,将下面“HelloH5”目录名称修改为应用manifest.json中的id名称(这步非常重要,否则会导致应用无法正常启动),并将所有应用资源拷贝到其下的www目录中:
- 配置应用信息
打开工程目录下的control.xml文件,修改appid值:
其中appid值为HBuilder应用的appid,必须与应用manifest.json中的id值完全一致;appver为应用的版本号,用于应用
资源的升级,必须保持与manifest.json中的version ->
name值完全一致;version值为应用基座版本号(plus.runtime.innerVersion返回的值),不要随意修改。
- 配置应用使用的5+功能模块(可选)
演示应用中已经引用HBuilder所有扩展的5+ API功能模块,如果在应用中没有使用到,为了减少发布时安装包的大小可以删除不使用的模块。在工程属性界面“Build Settings”下的“Linking”中找到“Other Linker Flags”:
双击弹出值列表:
在“Feature-iOS.xls”文件中查找不使用模块对应的“LinkerFlags”,从列表中删除。
如不使用“百度地图”,则可选中“-llibMap”、“-lbmapimp”、“-lbaidumapapi”,通过列表左下角的减号删除:
- 配置第三方库的参数
如果用到使用第三方库的功能模块(如推送、分享、语音识别、统计),则需要通过“Feature-iOS.xls”文件中查找对应模块的“Info”值,并在工程属性界面“Info”下“Custom iOS Target Properties”中找到对应的项配置:
如百度地图,需要配置在百度云平台申请应用的appkey,找到“baidu”项下的“appkey”,双击后输入正确的appkey值:
注意:新浪微博和微信分享还需要配置应用的URL Schemes,在“URL Types”项下分别输入在各开放平台申请的值:
配置完成编译运行
应用配置完毕,在模拟器上编译运行应用:
正确编译后启动模拟器并运行:
Android平台请参考Android离线打包

iOS离线打包的更多相关文章
- uni-app hbuilderX ios离线打包,启动图修改没反应
最后还是没反应 删除app从新安装, 可参考https://www.jianshu.com/p/47c1377c61d6
- ios离线打包报错Showing Recent Messages :-1: HBuilder has conflicting provisioning settings. HBuilder is automatically signed for development, but a conflicting code signing identity iPhone Distribution has
1.解决方案找到项目工程文件右击->显示包内容->双击project.pbxproj->搜索distribution改写成Developer
- Mac Jenkins+fastlane 简单几步实现iOS自动化打包发布 + jenkins节点设置
最近在使用jenkins 实现ios自动化打包发布蒲公英过程实践遇到了一些坑,特意记录下来方便有需要的人. 进入正题: 一.安装Jenkins 1.Mac上安装Jenkins 遇到到坑 因为 Jenk ...
- Sencha Toucha 2 —1.环境安装配置、在线打包、离线打包
环境安装配置 1. 下载 1.1 Sencha Touch 下载 http://cdn.sencha.com/touch/sencha-touch-2.2.1-gpl.zip 1 ...
- iOS企业版打包(转载)
转自 http://www.cnblogs.com/shenlaiyaoshi/p/5472474.html 神来钥匙-陈诗友 iOS 企业版 打包 使用 iOS 企业版的证书发布应用可以跳过 A ...
- 关于 iOS 批量打包的总结
关于 iOS 批量打包的总结 本文作者: 伯乐在线 - Tsui YuenHong .未经作者许可,禁止转载!欢迎加入伯乐在线 专栏作者. 如果你曾经试过做多 target 的项目,到了测试人员要 ...
- [转载]IOS项目打包除去NSLog和NSAssert处理之阿堂教程
原文链接地址:http://blog.sina.com.cn/s/blog_81136c2d0102v1ck.html 原文地址:IOS项目打包除去NSLog和NSAssert处理之阿堂教程作者:时空 ...
- ios自动打包-fastlane 安装、使用、更新和卸载
ios自动打包使用fastlane 1.首先安装xcode 首先检查是否已经安装 Xcode 命令行工具,fastlane 使用 xcodebuild 命令进行打包,运行 xcode-select - ...
- hbuilder IOS APP 打包与发布2
在上一篇的<hbuilder IOS APP 打包与发布>中,请求 的 是APP ids . ios开发证书 .和开发配置文件 , 这一篇中就不写发布证书和配置文件的请求,因为流程 ...
随机推荐
- TJU 2944 Mussy Paper 最大权闭合子图
传送门 给你一些东西, 每个东西有一个值,有正有负. 在给一些关系, 选了其中一个物品, 和他有关系的也必须全都选上, 关系是单向的. 问最后的最大价值是多少, 如果小于0输出“ **** ”( ...
- Java NIO read/write file through FileChannel
referee: Java NIO FileChannel A java nio FileChannel is an channel that is connected to a file. Usi ...
- 服务启动项 Start类型详解
注册表的服务启动项 Start类型详解 HKLM\SYSTEM\CurrentControlSet\services\ 下的服务项.不论有没有在services.msc服务管理控制台中显示,在注册表中 ...
- 几篇SIEM文章
http://infosecnirvana.com/tag/siem-rule-types/ http://www.tripwire.com/state-of-security/security-da ...
- Pro/Engineer wildfire 5.0 野火版系列下载及安装方法
三.PTC Pro/Engineer wildfire 5.0 M030 野火版最新版 DVD 下载(多国语言) 1.野火下载站下载32&64位下载:[32位] http://down.pro ...
- Android 5.x新特性之elevation(阴影),tinting(着色)以及clipping(剪裁)
快过年了,公司也没事做了, 自己也闲了下来,一天天呆着真没意思,闲来没事自己研究研究了Google I/O 2014 发布 Material Design设计,人性化的风格,丰富的色彩,使人机交互更完 ...
- 优步uber司机怎么注册不了?注册优步司机问题要点
第一,可能是你的车型不符全要求,看是不是5年内的车型,同时要求车价8W以上:第二,你的驾驶年限不够,要求驾驶证年限1年以上的,如果不够的怎么办,告诉你个方法,PS啊!优步可查不了车管所的系统,所以这类 ...
- 关于给javascript对象添加、删除、修改对象的属性
以下是自己总结的几种方法 利用动态特性 function Person(){}; var person = new Person(); person.name = 'yy'; person.gende ...
- Linux Shell 学习笔记 一 目录结构
以Red Hat Enterprise Linux 各版本为例,RHEL中目录具体作用如下, /bin 存放普通用户使用的命令 /sbin 存放管理员可以执行的命令 /home ...
- 初识EF
1. EF是Entity Framework的缩写,全称是(ADO.Net Entity Framework),是以ADO.Net为基础所发展出来的对象关系对应(O/R Mapping)解决方案,早起 ...