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

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 踏江行

要回复文章请先登录注册

1***@163.com

1***@163.com

运行时显示 当前环境无法运行uni-app应用 是什么原因呢,ios端object-c 语言
2023-08-10 09:59
冰小猪鸭

冰小猪鸭

你好 请问怎么在xcode上 运行到手机呢 我是第一次接触xcode这一方面的
2021-07-21 11:37
夜泊

夜泊

回复 2***@qq.com :
请问解决了吗?我也遇到了一样的错误了
2021-07-14 16:03
2***@qq.com

2***@qq.com

回复 zhychen :
我也出现这个问题,请问加在哪里才不会报错
2021-07-08 18:11
4***@qq.com

4***@qq.com

刚接触,创建的是5+ app 按照楼主的方法,但是xcode运行就闪退,报错信息如下:
libc++abi.dylib: terminating with uncaught exception of type NSException
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[WKWebView exchHookMethods]: unrecognized selector sent to class 0x7fff87149a60'
是不是还需要加什么类库?盼回复,谢谢!
2021-03-19 18:07
1***@qq.com

1***@qq.com

xcode12 找不到 Single View Application
2020-12-08 19:22
6***@qq.com

6***@qq.com

iOSSDK@2.8.11.80340_20200907版本,HBuilder-Integrate-Swift.zip解压后,用Xcode(Version 12.0 (12A7209))打开,Build报错,缺少文件,iOSSDK@2.8.11.80340_20200907/SDK/Bundles/weex-main-jsfm.js: No such file or directory

是这个版本的包少放了这个文件,还是什么问题?
2020-09-25 11:39
4***@qq.com

4***@qq.com

ios按照精简打包的教程来离线打包,getSystemInfo()获取的状态栏高度都是20,全面屏应该是44的,底部安全区域也是0,是哪里配置错误了
2020-06-22 09:38
zhychen

zhychen

回复 zhychen :
 我解决了 是我Linked Frameworks and Libraries加的位置不对
2020-06-01 21:24
zhychen

zhychen

```
Undefined symbol: vtable for __cxxabiv1::__class_type_info
Undefined symbol: vtable for __cxxabiv1::__si_class_type_info
Undefined symbol: ___cxa_pure_virtual
Undefined symbol: ___cxa_begin_catch
Undefined symbol: operator new[](unsigned long)
Undefined symbol: operator new(unsigned long)
Undefined symbol: std::terminate()
Undefined symbol: operator delete[](void*)
Undefined symbol: operator delete(void*)
Undefined symbol: ___gxx_personality_v0
```
试了两遍了 还是这些错 ,求大佬执教
2020-06-01 20:19