使用YOURAPP做移动应用开发
一、简单介绍:
YourAPP是一款执行在智能设备上的程序和模块。
它将设备底层的某些操作封装成能够供JavaScript语言调用的方式。同一时候将界面的设计和开发以Web的形式开放给使用者。
从而将底层的数据操控和灵活的界面设计方式相结合。
JavaScript语言是一门较流行的编程语言。
它不仅支持前端程序的开发,通过一些良好的构架也能支持server端和client的开发。
但JavaScript语言通常仅仅支持在浏览器中执行。
通过预先安装一套JavaScript的构架套件(比如PhoneGap等),也可以脱离浏览器执行。但须要有一个使用学习的过程。
YourAPP模块提供了相关的应用程序接口API,简称AJI。即Access JavaScript Interface。该接口提供了JavaScript语言没有权限进行的操作和相关设备的訪问。

YourAPP模块是一个程序,也是一个容器。它是一个以浏览器为基础,将相关权限和程序开放给JavaScript开发人员的一套API接口。在YourAPP的模块中,开发人员可以专注于前端界面和应用功能的设计开发。无需关注设备底层的操作和数据的获取。
使用者仅仅需通过简单的API接口调用就行获得相关的传感器数据或者设备操作。
前端的全部显示和交互都通过嵌入式的浏览器进行。

YourAPP主要针对移动设备的支持,比如智能手机、平板电脑等。
当前版本号支持Android系统。
详细支持系统版本号清单能够见YourAPP用户手冊附录一。
通过YourAPP可以直接进行的訪问包含:
- 获得传感器数据。
支持移动智能设备的多数传感器,调用AJI接口能够直接获得传感器数据。
一般经常使用的传感器设备有:
温度传感器、方位传感器、磁力传感器、加速度传感器、光线传感器等。
详细支持的传感器类型见YourAPP用户手冊附录二。
- 获得位置数据。
移动智能设备获取位置的方式包含使用网络信号获得位置数据、使用GPS信号获得位置数据。获得的位置数据是一串代表位置的数字,须要与电子地图相结合显示才更直观。
在AJI中并不区分何种方式获得的位置数据。而位置数据输出的格式是以经纬度的形式输出,单位为度。
- 调用智能设备的摄像头。
在AJI中调用智能设备的摄像头应用进行各种操作。
在某些型号的设备中AJI提供直接调用底层的摄像头操作,而某些型号的设备提供调用原生的摄像头应用进行操作。
- 调用智能设备的振动组件。
针对于智能手机(振动组件在大多数的智能手机中存在)。
调用AJI可以控制振动组件进行振动,同一时候也能控制振动的时间长短。
通过调整振动频率的长短。可以实现多种振动效果。
二,怎样使用:
1。登陆站点或者扫描二维码下载安装YourAPP程序:
网址:站点下载地址

2,执行YourAPP。并注冊:
刚安装YourAPP之后执行。能够看到下面提示:

能够点击界面中的Login or Register进行登录注冊。
或者点击YourAPP右上角的Login菜单进行登录注冊。

点击Login进行注冊
若有不论什么问题,能够通过邮件postmaster@yourtechnic.com进行联系。点击About也可获得联系方式。

3,注冊完毕,登录YourAPP管理应用程序:
若已经注冊完毕,登录之后则显示眼下的用户和程序状态。

上图为登录之后显示的用户状态信息。点击“Refresh APP List”button之后用户的应用程序信息也显示在YourAPP程序中。
用户上传应用程序的信息以列表形式输出。分别代表:
Name:应用程序名称。
Size:应用程序大小。
Modified Date:应用程序最后一次改动时间。
4,下载或删除应用程序:
点击应用程序名称Name。进入每一个应用的具体列表。能够下载或者删除应用程序。

上图是点击进入传感器应用的管理界面
点击download,能够下载选中的应用,点击deletion,能够删除选中的应用。
而点击链接Go to Current APP,可以不下载直接进入到选中的应用。
5,创建一个新的应用:
1)编写新的应用程序。使用JavaScript和HTML等前端编程语言。在程序编写过程中能够调用AJI接口获得数据。
程序能够在各种电脑的浏览器中执行,而仅仅有在YourAPP中调用AJI获得的是正确数据,在其它类型的平台上(如IE。chrome等桌面电脑)获得的是模拟数据。
2)压缩应用程序。将程序文件及用到的相关资源文件压缩成zip文件格式。
程序的入口文件名须要与压缩文件名一致。如入口文件名为sample.html,则压缩文件名应为sample.zip。
3)登录YourTechnic站点上传应用程序。
站点地址为:上传地址
进入之后使用注冊邮件地址登录。在应用管理界面中点击Add New APP,进入加入程序的流程。

使用桌面浏览器登录管理界面
在APP Name中填写新添加的应用名称。须要注意的是应用名称须要与应用的入口文件名一致。
APP Name填写完毕,点击Create New APPbutton,进入上传应用界面。
在上传应用界面中能够相应用的功能做一个简单的描写叙述(Description)。
同一时候能够上传相关应用程序。

上图是上传sensor应用
4)上传完成。
使用YourAPP程序登录应用管理界面,下载上传的新应用并执行。
正常下载之后,会自己主动跳转到新下载的程序并执行。
假设须要下载其它的应用,则能够再通过Login登陆之后下载。

图为sensor的应用
三、使用进阶:
YourAPP的用法非常easy掌握。
接下来须要编写自己的应用代码。在应用中会调用到AJI接口。全部须要调用到AJI接口的代码均用JavaScript语言编写。
代码须要在YourAPP框架中执行才干得到真实的相关数据和操作。
更具体的YourAPP用户使用手冊请下载下面链接:
YourAPP用户手冊 V1.0
关于AJI的操作调用方法參考手冊,下面链接:
優態客(YourTechnic)的博客: http://www.yourtechnic.com
優態客(YourTechnic)的联系方式:postmaster@yourtechnic.com
使用YOURAPP做移动应用开发的更多相关文章
- 在做APP前端开发时应注意的一些问题
在做APP前端开发时应注意的一些问题 在整个app开发流程中,app前端开发是一个必不可少的环节,也是一个在app开发过程中重量级的角色.说到这,那么在app应用的前端开发中,又要注意什么问题呢?一. ...
- vue2.0做移动端开发用到的相关插件和经验总结1.0
最近在用vue2.0做微信公众号相关的前端开发,经过这次开发实践,现将项目中用到的相关比较实用的插件及遇到的相关问题进行整理,希望和大家共同交流...... cssrem:一个CSS值转REM的VSC ...
- 基于leveldb,levigo做二次开发
Leveldb是一个C++库,它有提供标准的C接口,头文件在include/leveldb/c.h中 levigo是leveldb 的一个go wrapper,它主要基于Leveldb中inlude/ ...
- 浅谈myeclipse2015做cordova/phonegap开发
近期公司项目经理要求用cordova写安卓程序,之前对cordova什么都不懂,然后从网上搜啊搜,好歹有所了解了,感觉做web开发的比較合适,属于三种开发模式的第三种. myeclipse2015有个 ...
- eclise -The method onClick(View) of type new View.OnClickListener(){} must override a superclass method 在做arcgis android开发的时候,突然遇到这种错误,The method onClick(View) of type new View.OnClickListener(){} mus
eclise -The method onClick(View) of type new View.OnClickListener(){} must override a superclass met ...
- Pull Request的过程、基于git做的协同开发、git常见的一些命令、git实现代码的review、git实现版本的管理、gitlab、GitHub上为开源项目贡献代码
前言: Pull Request的流程 1.fork 首先是找到自己想要pull request的项目, 然后点击fork按钮,此时就会在你的仓库中多出来一个仓库,格式是:自己的账户名/想要pull ...
- 记录我的点点滴滴从此刻做起——iOS开发工程师
作为一个iOS工程师,想写博客也是有原因的:首先有这个想法(写博客的想法)也是因为想到自己都从事iOS开发快两年了,怎么也只会堆代码,写view,技术真的很一般,感觉都要被淘汰了:基于以上原因,自己也 ...
- .net程序员转行做手游开发经历(四)
今天是大年初二,在这里先给大家拜个年,祝大家在新的一年里能事事顺心. 年前的时候更新了一版,先发了内测,没有想到过年这几天,有的小伙伴们还在玩,还给我们提了很多建议和意见,让我们觉得非常温暖,给我们很 ...
- .net程序员转行做手游开发经历(五)
大家好,真的是好长时间都没有更新博客了.上来博客园发现很多朋友还在关注我们,那给大家汇报下最近的一些进展. 收费版上线了,但是下载量不是很多,刚发布的时候下载每天的下载还是挺多,我们几个小伙伴在论坛. ...
随机推荐
- 一简单c++程序之反汇编
#include<iostream> using namespace std; class point3d; class point2d; class point3d { private: ...
- vue生命周期回调方法
最近在用vue开发一个商品列表页,因需要根据请求回的字段是否有内容来显示隐藏该字段, 但因为vue异步加载导致显示隐藏方法不起作业(主要是判断条件取不到页面渲染内容),围观了vue生命周期后发现upd ...
- codevs——1700 施工方案第二季
1700 施工方案第二季 2012年市队选拔赛北京 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description c国边防 ...
- House Robber(动态规划)
思路: 代码: class Solution { public: int rob(vector<int> &num) { ; int size=num.size(); ) ]; v ...
- 搭建服务与负载均衡的客户端-Spring Cloud学习第二天(非原创)
文章大纲 一.Eureka中的核心概念二.Spring RestTemplate详解三.代码实战服务与负载均衡的客户端四.项目源码与参考资料下载五.参考文章 一.Eureka中的核心概念 1. 服务提 ...
- 安装Vmware增强工具
主机: Win7 虚拟机: VMware8.0+Debian6 目标: 离线安装软件包和VMware Tools 在虚拟机上安装完debian6后 1.在vmware的菜单中选择Vm->inst ...
- spring管理事务
2.1 事务管理器 Spring并不直接管理事务,而是提供了多种事务管理器,他们将事务管理的职责委托给Hibernate或者JTA等持久化机制所提供的相关平台框架的事务来实现. Spring事务管理器 ...
- filter和spring 的interceptor都是单例的,都不是线程安全的
Filter 是在 Servlet 容器启动时就初始化的,因此可以认为是以单例对象存在的,如果一个请求线程对其中的成员变量修改的话,会影响到其他的请求线程,因此认为是多线程不安全的.
- Android 动态生成对话框和EditText
/** * (获取输入) */ private void showInputDialog() { ScrollView scrollview = getInitView() ; final Linea ...
- iOS -- 十进制、十六进制字符串,byte,data等之间的转换
十进制->十六进制 Byte bytes[]={0xA6,0x27,0x0A}; NSString *strIdL = [NSStringstringWithFormat:]]]; 十六进制-& ...