Native.js는 강력하고 개방적이지만, 많은 웹 개발자는 네이티브 API에 익숙하지 않아 독립적으로 완성하는 데 어려움을 겪습니다.
이 게시물의 목적은 웹 개발자의 편의를 위해 작성된 다양한 NJS 코드를 요약하는 것입니다.
모두가 불에 연료를 추가하고, 유능한 개발자가 더 많은 NJS 코드를 제출하고, 모두가 좋아요를 줄 것입니다.
Android 플랫폼
바탕화면에 앱 바로가기 생성 및 삭제
见Hello H5+里Native.js部分演示及源码。 或在这里搜索“快捷方式”,http://ask.dcloud.net.cn/docs/ ... le/88调用Android本地分享 获取安卓设备device.uuid 数据读取 打开网络设置 调用系统控件播放视频 调用讯飞的文字转语音功能(TTS) 接收系统广播消息,如监听安装卸载apk的事件 例说明如何使用Native.js进行BroadcastReceiver广播http://ask.dcloud.net.cn/question/7661常驻Android通知栏,不用个推实现本地消息推送(Local Notification) 开启个推推送功能 var pushManager = plus.android.importClass("com.igexin.sdk.PushManager"); var context = plus.android.runtimeMainActivity(); function enable() { pushManager.getInstance().turnOnPush(context); } function disable() { pushManager.getInstance().turnOffPush(context); } 感谢yeahcheung分享 利用native.js获取手机gps是否开启http://ask.dcloud.net.cn/question/11890通过native.js设置系统墙纸http://ask.dcloud.net.cn/article/651iOS平台 获取包名 var NSBundle = plus.ios.importClass('NSBundle'); var bundle = NSBundle.mainBundle(); console.log(bundle.bundleIdentifier()); plus.ios.deleteObject(bundle); 获取设备名 native.js登入game center 见Hello H5+里Native.js部分演示及源码。 或在这里搜索“game center”,http://ask.dcloud.net.cn/docs/ ... le/88设置获取内容到系统粘贴板 base64数据保存为图片http://ask.dcloud.net.cn/question/6190设置webview滑动减速度 var webview = plus.ios.currentWebview(); var scrollView = webview.plusGetAttribute("scrollView"); scrollView.plusSetAttribute("decelerationRate:",0.99); 打开ios的Wifi设置页面 http://ask.dcloud.net.cn/article/188ios获取系统的时区id var NSTimeZone = plus.ios.importClass("NSTimeZone"); var sys = NSTimeZone.systemTimeZone(); console.log(sys.plusGetAttribute("name")); 状态栏显示网络请求雪花 var UIApplication = plus.ios.import("UIApplication"); var sharedApplication = UIApplication.sharedApplication(); sharedApplication.setNetworkActivityIndicatorVisible(true); plus.ios.deleteObject(sharedApplication); 获取GPS授权状态 var CLLocationManager = plus.ios.import("CLLocationManager"); var authorizationStatus = CLLocationManager.authorizationStatus(); switch(authorizationStatus) { case 0: /// User has not yet made a choice with regards to this application break; case 1: // This application is not authorized to use location services. Due // to active restrictions on location services, the user cannot change // this status, and may not have personally denied authorization break; case 2: // User has explicitly denied authorization for this application, or // location services are disabled in Settings. break; case 3: // User has granted authorization to use their location at any time, // including monitoring for regions, visits, or significant location changes. break; case 4: // User has granted authorization to use their location only when your app // is visible to them (it will be made visible to them if you continue to // receive location updates while in the background). Authorization to use // launch APIs has not been granted. break; case 5: // This value is deprecated, but was equivalent to the new -Always value. break; defalut: break; } 获取手机存储空间 var BundleClass = plus.ios.importClass("NSBundle"); var BundleObj = BundleClass.mainBundle(); var filenamagerobj = plus.ios.newObject("NSFileManager"); var FileAttr = plus.ios.invoke(filenamagerobj,"attributesOfFileSystemForPath:error:",BundleObj.bundlePath(),null); // NSFileSystemFreeSize 参数获取剩余空间 // NSFileSystemSize 获取手机总存储空间 var freeSpace = plus.ios.invoke(FileAttr,"objectForKey:","NSFileSystemFreeSize"); var numberFormatterObj = plus.ios.newObject("NSNumberFormatter"); var FreeSpaceStr = plus.ios.invoke(numberFormatterObj,"stringFromNumber:",freeSpace); var freeSpace = FreeSpaceStr / 1024/1024/1024; 看完这些例子,是不是觉得JS特别强大? 赶快拿去用起来吧!
위는 JavaScript 향상 튜토리얼-Native.js 예제를 요약한 것입니다. 더 많은 관련 내용을 보려면 PHP 중국어 웹사이트(m.sbmmt.com)를 주목하세요!