Bien que Native.js soit puissant et ouvert, de nombreux développeurs Web ont du mal à le réaliser de manière indépendante car ils ne sont pas familiers avec les API natives.
Le but de cet article est de résumer divers codes NJS écrits pour la commodité des développeurs Web.
Tout le monde ajoute de l'huile sur les flammes. Les développeurs compétents peuvent soumettre du code NJS et tout le monde vous donnera des likes
Plateforme Android
Créez et supprimez des raccourcis d'application sur le bureau
见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特别强大? 赶快拿去用起来吧!