android数据解析,安卓软件解析

Android 中解析 JSON

JSON( JavaScript Object Notation ) 是一种轻量级的数据交换格式。易于阅读和编写,同时也易于机器解析和生成。

创新互联主要从事成都网站建设、成都做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务门源,10多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

JSON 建构于两种结构:

JSON 具有以下这些格式:

参考: Android 中 解析 JSON

Android 提供类四种不同的类来操作 JSON 数据。这些类是 JSONArray、JSONObject、JSONStringer 和 JSONTokenizer

为了解析 JSON 对象,须先创建一个 JSONObject 类的对象,需要传入需解析的字符串 JSONObject root = new JSONObject(candyJson); 然后根据 JSONObject 对象提供方法以及数据类型解析对应 json 数据。下表展示一些 JSONObiect 提供的方法

示例:

android 用JSON 解析数据接口方法

接口获取下来的数据为

{"status":200,"message":"查询成功","data":{"id":32,"user_id":null,"user_code":null,"user_pass":null,"meeting_id":"1","meeting_pass":null,"config_param_ip":"11.1.1.70","port":"6501","web_config_param_ip":"11.1.1.70","web_port":"6501","unit_code":null,"create_time":null,"update_time":null,"status":0,"userCode":"video1","userPass":"video1","meetingId":"1","meetingPass":"","apiPort":"13000","username":"admin","password":"123456","updateTime":"2021-11-08 17:45:29"}}

使用方法

try {

JSONObject jsonObject = new JSONObject(outstring);

int resultCode = jsonObject.getInt("status");

if (resultCode == 200) {

    JSONObject obj = jsonObject.getJSONObject("data");

    IP = obj.getString("config_param_ip");

    port = obj.getString("web_port");

    username = obj.getString("userCode");

    password = obj.getString("userPass");

    roomID = Integer.parseInt(obj.getString("meetingId"));

    roomPassword = obj.getString("password");

} else {

    ToastUtils.showShort("查询失败");

}

goVideo();

} catch (Exception e) {

e.printStackTrace();

}

Android手柄数据全解析

功能需要,获取物理手柄数据( 本文章只针对处于Android模式的手柄 ),然后转换成云需要的数据。手柄数据主要分为两款,一个是轴数据,一个是按键数据,下面分别来说明。

一是判断是否还有左滚轴,二是判断是否来源是手柄,至于为什么判断是否包含左滚轴,因为市面上很多遥控器都有轴且设备源包含手柄。加上左滚轴判断可以更精确。

按键数据可通过dispatchKeyEvent or onKeyDown,onKeyUp获得,手柄数据如下:

轴数据通过onGenericMotionEvent(MotionEvent event)此方法传递。

通常手柄的有轴数据的功能组为,左摇杆,有摇杆,方向盘与 L2,R2两个扳机键,除L2与R2只对应一个轴值外其他设备均对应X,Y两个轴值,下面一一介绍:

对应轴:MotionEvent.AXIS_X,MotionEvent.AXIS_Y

取值范围: [-1.0 , 1.0]

说明:X代表横向数据,Y代表纵向数据。

轴数据的获取方式为:

对应轴:MotionEvent.AXIS_Z,MotionEvent.AXIS_RZ

取值范围: [-1.0 , 1.0]

说明:Z代表横向数据,RZ代表纵向数据。

轴数据的获取方式为:

对应轴:MotionEvent.AXIS_HAT_X,MotionEvent.AXIS_HAT_Y

取值范围: [-1.0 , 1.0]

说明:AXIS_HAT_X代表横向数据,AXIS_HAT_Y代表纵向数据。X == 1.0 Y == 0 代表右边,其他方位参考此值。

轴数据的获取方式为:

部分手柄没有此轴。

对应轴:MotionEvent.AXIS_LTRIGGER,MotionEvent.AXIS_RTRIGGER

取值范围: [0 , 1.0]

轴数据的获取方式为:

本篇文章对应的手柄模式需为Android模式,xBoxOne跟xBox360模式需读取usb数据且是另外一套数据解析模式。后续再说。Over。


分享文章:android数据解析,安卓软件解析
文章起源:http://azwzsj.com/article/dsdjihs.html