• Stars
    star
    114
  • Rank 308,031 (Top 7 %)
  • Language
    Objective-C
  • Created over 7 years ago
  • Updated almost 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

HTML5 Plus for iOS

iOS平台5+App/uni-app运行环境开源项目

重要:请使用HBuilderX2.4.6-20191210生成本地打包App资源,否则uni-app项目可能提示“运行环境版本和编译器版本不一致”,详情参考https://ask.dcloud.net.cn/article/35627

说明

此次更新梳理了工程结构,现在开发者可以直接修改引擎中的代码,自主编译出新的引擎。

如果开发者要修改本工程源码,请注意“引擎”和“插件”的分界线。 “引擎”是对5+/uni-app规范的实现,修改引擎源码可以优化对规范的实现,但不是提供规范外的功能。规范外的功能,应该做成“插件”。如需公开,则放到插件市场。 比如扫码,5+/uni-app的规范已经存在,但开发者对扫码效率不满意,提供自己更好的实现,则可以改动本源码,重新Build引擎。 而如果是想新增一个ar功能,则应该做成插件,而不是加入到本工程中。即,开发者不能自主新增5+/uni-app的js API规范。

任何一个项目的源码,吃透整体都不是一件容易的事情。一般开发者有改动需求,也多集中在一些能力或SDK的实现上。 比如扫码、视频、地图、直播、摄像头、相册、蓝牙等,以及某些界面的文字。 只关注某些能力模块,吃透和修改会更加容易。

受精力所限,某些模块,比如DCloud定制过的weex源码,还未规整好,暂时以库的方式提供,未来会提供完整源码。不过这不影响开发者修改其他源码和编译工程。

模块与源码对应关系

功能模块 源码目录 5+APP项目 uni-app项目
Accelerometer(加速度传感器) libAccelerometer plus.accelerometer https://uniapp.dcloud.io/api/system/compass
Audio(音频) libMedia plus.audio https://uniapp.dcloud.io/api/media/record-manager https://uniapp.dcloud.io/api/media/audio-context
Barcode(二维码) libBarcode plus.barcode https://uniapp.dcloud.io/api/system/barcode
Bluetooth(低功耗蓝牙) libBlueTooth plus.bluetooth https://uniapp.dcloud.io/api/system/bluetooth
Camera(摄像头) libCamera plus.camera https://uniapp.dcloud.io/api/media/image
Contacts(通讯录) libContacts plus.contacts https://uniapp.dcloud.io/api/system/contact
Fingerprint(指纹识别) libFingerprint plus.fingerprint https://uniapp.dcloud.io/api/other/authentication
Geolocation(系统定位) libGeolocation plus.geolocation https://uniapp.dcloud.io/api/location/location
Geolocation(百度定位) BaiduLocationPlugin plus.geolocation https://uniapp.dcloud.io/api/location/location
iBeacon libBeacon plus.ibeacon https://uniapp.dcloud.io/api/system/ibeacon
IO(文件系统) libIO plus.io https://uniapp.dcloud.io/api/file/file
Maps(地图基础库) libMap plus.map https://uniapp.dcloud.io/api/location/map
Maps(高德德图) AMapImp plus.map https://uniapp.dcloud.io/api/location/map
Maps(百度地图) bmapimp plus.map https://uniapp.dcloud.io/api/location/map
Messaging(短彩邮件消息) libMessage plus.messaging
Oauth(登录基础库) libOauth plus.oauth https://uniapp.dcloud.io/api/plugins/login
Oauth(小米登录) MiOauth plus.oauth https://uniapp.dcloud.io/api/plugins/login
Oauth(QQ登录) QQOauth plus.oauth https://uniapp.dcloud.io/api/plugins/login
Oauth(新浪微博登录) SinaWBOauth plus.oauth https://uniapp.dcloud.io/api/plugins/login
Oauth(微信登录) WXOauth plus.oauth https://uniapp.dcloud.io/api/plugins/login
Orientation(设备方向) libOrientation plus.orientation
Payment(支付基础库) libPayment plus.payment https://uniapp.dcloud.io/api/plugins/payment
Payment(支付宝支付) alixpayment plus.payment https://uniapp.dcloud.io/api/plugins/payment
Payment(苹果应用内支付) IAPPay plus.payment https://uniapp.dcloud.io/api/plugins/payment
Payment(微信支付) wxpay plus.payment https://uniapp.dcloud.io/api/plugins/payment
Push(推送基础库) libPush plus.push https://uniapp.dcloud.io/api/plugins/push
Push(个推推送) GeTuiPush plus.push https://uniapp.dcloud.io/api/plugins/push
Push(小米推送) XiaomiPush plus.push https://uniapp.dcloud.io/api/plugins/push
Push(UniPush推送) UniPush plus.push https://uniapp.dcloud.io/api/plugins/push
Proximity(距离传感器) libPGProximity plus.proximity
Share(分享基础库) libShare plus.share https://uniapp.dcloud.io/api/plugins/share
Share(QQ分享) QQShare plus.share https://uniapp.dcloud.io/api/plugins/share
Share(新浪微博分享) SinaShare plus.share https://uniapp.dcloud.io/api/plugins/share
Share(微信分享) weixinShare plus.share https://uniapp.dcloud.io/api/plugins/share
Speech(语音识别基础库) libSpeech plus.speech https://uniapp.dcloud.io/api/plugins/voice
Speech(百度语音识别) baiduSpeech plus.speech https://uniapp.dcloud.io/api/plugins/voice
Speech(讯飞语音识别) iflySpeech plus.speech https://uniapp.dcloud.io/api/plugins/voice
Statistic(友盟统计) libStatistic plus.statistic
VideoPlayer(视频播放) libVideo plus.video.VideoPlayer https://uniapp.dcloud.io/api/media/video
XHR(网络请求) libXHR plus.net https://uniapp.dcloud.io/api/request/request?id=request
storage(本地数据存储) libStorage plus. storage https://uniapp.dcloud.io/api/storage/storage?id=setstorage
Zip(文件压缩和解压) libZip plus.zip
nvue原生组件: barcode(二维码) DCUniBarcode 不支持 https://uniapp.dcloud.io/component/barcode
nvue原生组件: map(地图基础库) DCUniMap 不支持 https://uniapp.dcloud.io/component/map
nvue原生组件: map(高德地图) DCUniAmap 不支持 https://uniapp.dcloud.io/component/map
nvue原生组件: video(视频) DCUniVideo 不支持 https://uniapp.dcloud.io/component/video
nvue原生组件: canvas DCUniCanvas 不支持 https://github.com/dcloudio/NvueCanvasDemo
nvue原生模块: FaceID DCUniFaceID 不支持 https://uniapp.dcloud.io/api/other/authentication

运行方式

  1. 将工程 clone 到本地(或直接下载zip);

  2. 由于源码依赖了一些第三方库超过限制,无法上传请下载 离线sdk 包并解压,打开 SDK/Libs 目录,将以下库复制到本工程的 SDK/Libs 下,然后编译运行即可

    • libBaiduSpeechSDK.a
    • liblibWeex.a
    • MAMapKit.framework
    • IJKMediaFramework.framework

许可协议

本工程大部分源码开源,使用者可以自主修改已公开的源码,编译新版本。 但注意:

  1. 您不能破解、反向工程、反编译本项目下未开源的各种库文件。
  2. 未经DCloud书面许可,您不得利用本项目的全部或部分源码、文件来制作与DCloud根据本项目提供的服务相竞争的产品,例如提供自主品牌的开发者服务。
  3. DCloud所拥有的知识产权,包括但不限于商标、专利、著作权,并不发生转移或共享。
  4. 您基于本项目,自主开发的代码及输出物,其知识产权归属您所有。除非您通过提交pull request的方式将自己的代码开源。
  5. 如果您没有违反本许可协议,那么你使用本项目将无需为DCloud支付任何费用。

More Repositories

1

uni-app

A cross-platform framework using Vue.js
JavaScript
39,977
star
2

mui

最接近原生APP体验的高性能框架
JavaScript
13,472
star
3

hello-uniapp

uni-app框架演示示例
Vue
2,713
star
4

uni-ui

基于uni-app的、全端兼容的、高性能UI框架
Vue
1,856
star
5

casecode

DCloud开源项目集锦
JavaScript
1,432
star
6

test-framework

框架测试汇总
JavaScript
381
star
7

uni-preset-vue

uni-app preset for vue
JavaScript
300
star
8

nml

278
star
9

H5P.Server

PHP
268
star
10

uni-template-news

基于uni-app开发的新闻/资讯类App模板
Vue
254
star
11

H5P.Android

HTML5 Plus for Android
Java
249
star
12

uni-admin

基于 uni-app,uniCloud 的 admin 管理项目模板
Vue
240
star
13

uni-template-login

基于uni-app框架的登录模板
Vue
234
star
14

uni-template-picture

基于uni-app框架的看图模板
Vue
219
star
15

uni-migration

统一转换器,可实现将小程序项目转换为快应用项目
JavaScript
142
star
16

H5P.Core

HTML5 plus runtime
HTML
138
star
17

uni-template-one

基于uni-app 的高仿「ONE·一个」
Vue
117
star
18

native-docs

uni小程序SDK & 5+ SDK 原生开发文档
80
star
19

HBuilderRubyBundle

HBuilder
Ruby
71
star
20

WebFrameworkGrammar

JS Framework Grammar
JavaScript
69
star
21

HBuilderX

59
star
22

quickapp

快应用开发相关
CSS
57
star
23

RichAlert

uni-app原生插件:富文本提示框
Objective-C
56
star
24

HelloH5plus

HTML
50
star
25

plusto

JavaScript
46
star
26

wap2app

将M站快速转换成App的开发框架
JavaScript
43
star
27

BlurEffectDemo

JavaScript
38
star
28

hbuilderx-extension-docs

HBuilderX使用文档、以及插件开发文档
JavaScript
36
star
29

unidocs-zh

uni-app官方文档
30
star
30

NvueCanvasDemo

nvue canvas demo for uni-app.
JavaScript
28
star
31

UniPluginPackage

uni原生插件离线打包示例
JavaScript
23
star
32

HBuilder-opensource

Java
19
star
33

hbuilderx-extension-samples

JavaScript
14
star
34

unidocs-en

A cross-platform framework using Vue.js
12
star
35

dcloudio.github.io

wiki
CSS
9
star
36

UniMPExample

uni小程序示例工程
CSS
6
star
37

ask

DCloud问答社区问题案例
JavaScript
6
star
38

hello-quickapp-native

快应用测试工程
Vue
6
star
39

hello-i18n

演示uni-app的国际化实现
Vue
3
star
40

hbuilderx-for-uniapp-test

HBuilderX uni-app自动化测试插件
JavaScript
2
star
41

hbuilderx-language-packs

JavaScript
1
star
42

uniCloud-function-example

uniCloud云函数代码示例
CSS
1
star