Native.js入门:东华医院信息平台的JavaScript交互
需积分: 12 2 浏览量
更新于2024-08-09
收藏 664KB PDF 举报
"本文档是关于DCloud的Native.js(NJS)的入门指南,讲述了如何开始使用NJS来扩展HTML5的能力,实现与手机操作系统原生对象的交互。NJS使得开发者无需原生开发环境,仅用JavaScript就能实现原本需要原生插件或混合应用才能完成的功能,提升了开发效率和Web工程师的角色地位。文档详细介绍了平台判断、类型转换等关键知识点,并提供了示例代码。"
在HTML5+环境中,Native.js(NJS)是一种关键技术,它允许开发者使用JavaScript直接访问和控制手机操作系统的原生功能。NJS的核心价值在于它扩展了HTML5的边界,让开发者可以用纯JS实现原本只能通过原生代码或混合应用(Hybrid App)才能完成的任务,同时减少了开发团队的需求,例如,只需要一个Web工程师就能完成原本需要iOS、Android和Web工程师合作的工作。
要开始使用NJS,首先需要判断当前运行的平台,这是由于Native API通常具有平台依赖性。通过`plus.os.name`属性可以获取设备的操作系统名称,然后使用`switch`语句进行条件判断。例如:
```javascript
function judgePlatform() {
switch (plus.os.name) {
case "Android":
// 在Android平台上执行的代码
break;
case "iOS":
// 在iOS平台上执行的代码
break;
default:
// 其他平台的处理
break;
}
}
```
在NJS中,不同类型的数据在调用Native API或接收返回数据时会自动进行转换。以下是一些主要类型的对应关系:
- 基本数据类型:如byte、short、int、long、float、double等在Objective-C、Java和JavaScript中分别对应不同的类型,但它们在NJS中统一为JavaScript的`Number`类型。
- 字符:Objective-C的char和Java的char类型在JavaScript中转换为`String`。
- 字符串:Objective-C的NSString、Java的String和JavaScript的`String`互相兼容。
- 数组:Objective-C的NSArray、Java的数组在JavaScript中表示为数组实例对象(InstanceObject)。
- 类和对象:Objective-C的@interface和Java的ClassObject在JavaScript中映射为`InstanceObject`。
- 空对象:nil、null在JavaScript中统一为`null`。
- 其他类型如Protocol、Interface、Object(JSON)等也有相应的转换规则。
此外,对于Android平台,可以通过`plus.android.runtimeMainActivity()`获取应用的主Activity对象。这个方法适用于那些在代码中没有显式创建,但在应用启动时自动创建的Activity。
NJS的这些特性极大地简化了HTML5应用与原生功能的集成,同时也降低了开发的复杂性和成本。通过HBuilder工具,开发者可以方便地调试和打包应用,无论是否拥有mac和xcode,都可以开发iOS应用。然而,使用NJS需要开发者对Native API有一定的了解,以便知道如何调用和转换相应的原生功能。
2017-05-17 上传
2021-10-24 上传
2021-10-24 上传
2021-04-22 上传
sun海涛
- 粉丝: 36
- 资源: 3847
最新资源
- SSM Java项目:StudentInfo 数据管理与可视化分析
- pyedgar:Python库简化EDGAR数据交互与文档下载
- Node.js环境下wfdb文件解码与实时数据处理
- phpcms v2.2企业级网站管理系统发布
- 美团饿了么优惠券推广工具-uniapp源码
- 基于红外传感器的会议室实时占用率测量系统
- DenseNet-201预训练模型:图像分类的深度学习工具箱
- Java实现和弦移调工具:Transposer-java
- phpMyFAQ 2.5.1 Beta多国语言版:技术项目源码共享平台
- Python自动化源码实现便捷自动下单功能
- Android天气预报应用:查看多城市详细天气信息
- PHPTML类:简化HTML页面创建的PHP开源工具
- Biovec在蛋白质分析中的应用:预测、结构和可视化
- EfficientNet-b0深度学习工具箱模型在MATLAB中的应用
- 2024年河北省技能大赛数字化设计开发样题解析
- 笔记本USB加湿器:便携式设计解决方案