DCloud_App_Array
DCloud_App_Array
  • 发布:2016-10-10 18:31
  • 更新:2024-06-13 19:48
  • 阅读:41731

iOS创建最精简离线打包工程

分类:5+ SDK

ios创建最精简离线打包工程
注意:如果离线打包的是uni-app项目 请点击进入查看如何配置

1 打开Xcode,创建新工程,选择“Single View Application”

2 添加创建工程的名称(注意:最好不要填中文或特殊字符)

3 复制HBuilder-Hello工程的delegate和Controller文件覆盖新创建工程的相应文件

4 拷贝以下文件到新创建工程目录下

iOSSDK/SDK/Bundles/PandoraApi.bundle
iOSSDK/SDK/control.xml
iOSSDK/SDK/Libs/liblibPDRCore.a
iOSSDK/SDK/Libs/libcoreSupport.a
iOSSDK/SDK/Libs/liblibUI.a

5 添加刚才拷贝的文件到工程内

6 拷贝IOS-SDK/SDK/inc目录到新创建工程目录下,并添加到工程内

7 点击Project->TARGETS->Build Settings搜索“Other Linker Flags”,双击搜索到的项双击,在弹出框内添加想“-ObjC”

8 点击Projcet->General->Linked Frameworks and Libraries 添加系统库到工程

系统库
JavaScriptCore.framework
WebKit.framework
CoreTelephony.framework
MobileCoreServices.framework
SystemConfiguration.framework
MediaPlayer.framework
AudioToolbox.framework
Security.framework
QuartzCore.framework
CFNetwork.framework
Foundation.framework
CoreFoundation.framework
CoreGraphics.framework
UIKit.framework
QuickLook.framework
libc++.tbd
libxml2.tbd
libz.tbd
libsqlite3.0.tbd
ImageIO.framework
CoreText.framework
Storekit.framework
UserNotifications 并设置为Optianal

9 点击Project->TARGETS->Build Settings搜索“ARC”,修改"Objective-C Automatic Reference Counting"项的值为"NO", 如果希望使用ARC则需要修改相应的内存管理代码。

10 修改头文件搜索路径

点击Project->TARGETS->Build Settings搜索"Header Search Paths",
双击搜索到的"Header Search Paths"项,将工程目录下的inc目录拖到打开的下拉框

11 修改静态库搜索路径

点击Project->TARGETS->Build Settings搜索"Library Search Paths",
如果"Library Search Paths"项下有值则不需要处理,
如果没有值则双击搜索到的"Library Search Paths"项,将工程目录下的libs目录(静态库所在目录)拖到打开的下拉框

12 修改BitCode

点击Project->TARGETS->Build Settings搜索BitCode
将Enable Bitcode项的值改成 ‘NO’

13 添加Web应用到工程

在工程目录下创建目录”Pandora->apps->[APPID]->www“目录,并将Web应用拷贝到www(小写字母)目录下
APPID为要加入到工程应用mainfest.json文件
添加Pandora目录到工程中

添加后会弹出选择类型框,选择”Create Folder References“

添加后工程内的Pandora目录为蓝色

14 修改control.xml文件

修改control.xml文件的appid节点值为mainfest.json文件的id节点下内容,appver节点内容修改为manifest.json文件的version->name节点下内容

如以上三图红圈标记位置都要一致

15 设置应用的图标

点击project->target->General->App Icons and Launch Images->App Icons Source项右侧小箭头

在新开页面根据提示将对应尺寸的应用图标拖入到虚线框中即可

16 设置应用的splash图片

拷贝HBuider-Hello工程的info.plist文件的UILaunchImages节点到新工程info.plist文件,同时拷贝HBuilder-Hello工程下的splash目录到新工程目录下并将其添加到新工程中
根据图片的尺寸逐个替换splash图片,注意文件名不能修改

17 设置应用显示的应用名

点击project->target->General->Identity->Display Name修改应用的显示名称

18 修改info.plist文件,添加App Transport Security Settings类型为Dictionary,在该项下添加Allow Arbitrary Loads项类型为Boolean,值为YES

IOS 10 需要在info.plist文件中添加隐私权限配置

运行时如果提示“打包时未添加XXX模块”,(非中文提示时需要配置国际化),请参考SDK/Feature-ios.xls文件,查找对应插件名需要引入的5+库文件和系统库文件,添加到工程即可

Android创建最精简离线打包工程

17 关注 分享
Trust zhaomenghuan wenju CFee badfl Runic 3***@qq.com 雨沫 x***@163.com w***@126.com 木子喵 l***@orange100.cn Neil_HL 4***@qq.com skysowe 8***@qq.com 踏江行

要回复文章请先登录注册

chuyin

chuyin

回复 我是用户名 :
我的情况 跟你一样,解决了么???
2017-03-29 17:48
chuyin

chuyin

回复 Costword :
ios的内存管理机制,ARC为自动管理内存
2017-03-29 16:46
c***@163.com

c***@163.com

唉,照着文档配置还报那么多错,怪我智商不够嘛
2017-03-13 21:33
骁骑

骁骑

检查一下第 7 8 9 三步, 主要是第7步的 -ObjC的大小写要注意
2017-02-22 18:21
freemudHB

freemudHB

回复 骁骑 :
我也遇到这样的问题了,manifest.json文件符合json文件格式,还是没解决
2017-02-20 13:43
骁骑

骁骑

回复 我是用户名 :
检查应用的manifest.json文件是否符合json文件格式
2017-02-04 15:29
我是用户名

我是用户名

xocde8刚启动崩溃:
*** First throw call stack:
(
0 CoreFoundation 0x000000010b95534b __exceptionPreprocess + 171
1 libobjc.A.dylib 0x000000010e9e221e objc_exception_throw + 48
2 CoreFoundation 0x000000010b9c4f34 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132
3 CoreFoundation 0x000000010b8dac15 ___forwarding___ + 1013
4 CoreFoundation 0x000000010b8da798 _CF_forwarding_prep_0 + 120
5 DMSHBuilder 0x0000000109383870 -[PDRCoreAppCongfigParse load] + 350
6 DMSHBuilder 0x0000000109360a50 -[PDRCoreApp load] + 1104
7 DMSHBuilder 0x0000000109353bda -[PDRCoreAppManager load] + 211
8 DMSHBuilder 0x000000010934b63b -[PDRCore load] + 986
9 DMSHBuilder 0x000000010934adcb +[PDRCore initEngineWihtOptions:withRunMode:withAppManager:] + 119
10 DMSHBuilder 0x000000010931607a -[AppDelegate application:didFinishLaunchingWithOptions:] + 58
11 UIKit 0x00000001098fc68e -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 290
12 UIKit 0x00000001098fe013 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 4236
13 UIKit 0x00000001099043b9 -[UIApplication _runWithMainScene:transitionContext:completion:] + 1731
14 UIKit 0x0000000109901539 -[UIApplication workspaceDidEndTransaction:] + 188
15 FrontBoardServices 0x000000010f8f476b __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 24
16 FrontBoardServices 0x000000010f8f45e4 -[FBSSerialQueue _performNext] + 189
17 FrontBoardServices 0x000000010f8f496d -[FBSSerialQueue _performNextFromRunLoopSource] + 45
18 CoreFoundation 0x000000010b8fa311 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
19 CoreFoundation 0x000000010b8df59c __CFRunLoopDoSources0 + 556
20 CoreFoundation 0x000000010b8dea86 __CFRunLoopRun + 918
21 CoreFoundation 0x000000010b8de494 CFRunLoopRunSpecific + 420
22 UIKit 0x00000001098ffdb6 -[UIApplication _run] + 434
23 UIKit 0x0000000109905f34 UIApplicationMain + 159
24 DMSHBuilder 0x00000001093163f3 main + 99
25 libdyld.dylib 0x000000010efde68d start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
2017-01-19 14:29
rein

rein

-canOpenURL: failed for URL: "hbuilder://" - error: "This app is not allowed to query for scheme builder"

有知道这个怎么解决的吗?这是什么错误?
2017-01-11 09:27
Costword

Costword

MRC是什么鬼,我们用ARC模式需要修改什么地方呀
2017-01-10 17:56
rein

rein

为什么我的应用到了启动的那一步了,却一直在显示等待,不能进入首页?
2017-01-10 17:28