物联网软件开发需要学习什么(物联网开发需要的技术)

物联网软件开发需要学习什么(物联网开发需要的技术),第1张

物联网工程师需要学习一下几个方面:

1、物联网产业与技术导论:全面了解物联网之RFID、M2M、传感网、两化融合等技术与应用。

2、C语言程序设计:物联网涉及底层编程,C语言为必修课,同时需要了解OSGi,OPC,Silverlight等技术标准。

3、单片机原理及应用:物联网的底层单片机及其相关应用技术,包括控制、多媒体等。

4、Java程序设计:物联网应用层,服务器端集成技术,开放Java培训技术也是必修课,同时需要了解Eclipse,SWT,Flash,HTML5等技术使用。

5、物联网工程概论:全面了解物联网基本知识、技术体系以及相关理论,对物联网的关键技术,如EPC和RFID技术、传感器技术、无线传感器网络技术、M2M技术等。同时应对与物联网密切相关的云计算、智能技术、安全技术也进行论述。

6、无线传感网络概论:学习各种无线RF通讯技术与标准,Zigbee,蓝牙,WiFi,GPRS,CDMA,3G,4G,5G等等。

7、TCP/IP网络与协议:TCP/IP以及OSI网络分层协议标准是所有有线和无线网络协议的基础,Socket编程技术也是基础技能。

8、嵌入式系统技术:嵌入式系统是物联网感知层和通讯层重要技术。

9、传感器技术概论:物联网专业学生需要对传感器技术与发展,尤其是在应用中如何选用有所了解,但不一定需要了解传感器的设计与生产,对相关的材料科学,生物技术等有深入了解。

10、RFID技术概论:RFID作为物联网主要技术之一,需要了解。

11、工业信息化及现场总线技术:工业信息化也是物联网主要应用领域,需要了解。

物联网软件、标准、与中间件技术:物联网产业发展的关键在于应用,软件是灵魂,中间件是产业化的基石,需要学习和了解。

移动便携设备,手机、平板是Android系统,在最底层传感器是检测模块。收集到的数据通过zigbee 发送给协调器,协调器给网关,最后到服务器,然后Android将服务器的数据外部调用(归根结底,还是与服务器的通信)。这时候用到的就是Web Service,而手机端就是客户端。完成这个调用,首先要在服务器端部署Web Service,之后再在客户端书写代码,访问接口,调用数据。把这个思路理清,接下来再去做,而我在这里首先将客户端的代码书写,服务器端在下一篇中给出详细的说明。

一、准备工作

1SDK中并没有Web Service的类库,这就需要第三方类库调用,就是koasp2,简单的说,你得先导入一个jar包。完成之后如下图。

2部署服务器端首先需要Tomcat,这是下一篇中才会用到的,我在这儿只是先把它准备好,客户端的简单调用用不到它。>

二、接下来就是代码的编写过程(注:这是客户端的)

1首先还是Manifest,给它一个网络访问权限

2书写xml布局文件(还是因为自己做得界面太丑,不粘了)

3书写Activity。新建一个类(这只是代码示例,需要写的就是这些,可以传多个参数),

public class CommonWebService {

// 所调用的WebService的终端

public static String endpoint = ">

// 所调用的WebService的地址

public static String ip = "192168121";

// 所调用的WebService的命名空间

public static String namespace = ">

// 所调用的WebService中的方法

public static final String Infusion_METHOD = "MygetInfusion";

public void show_Infusion() {

new Thread(new Runnable() {

@Override

public void run() {

// TODO Auto-generated method stub

// 定义命名空间

String nameSpace = ">

// 定义调用方法名称

String methodName = "query_Infusion";

// endPoint以及soapAction

String endPoint = ">

String soapAction = ">

// 指定WebService的命名空间和调用方法

SoapObject soapObject = new SoapObject(nameSpace, methodName);

// 生成调用WebService方法调用的soap信息,并且指定Soap版本

SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(

SoapEnvelopeVER11);

envelopebodyOut = soapObject;

//并不是dotnet开发的Web Service

envelopedotNet = false;

// 输出

envelopesetOutputSoapObject(soapObject);

// 定义一个>

>

try {

transportcall(soapAction, envelope);

// transportcall(null, envelope);

} catch (IOException e) {

// TODO Auto-generated catch block

eprintStackTrace();

} catch (XmlPullParserException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

// 获取返回的数据

SoapObject object = (SoapObject) envelopebodyIn;

// 获取返回的结果

String result = null;

result = objectgetProperty(0)toString();

Message message = handler_shuyeobtainMessage();

messageobj = result;

handler_shuyesendMessage(message);

}

})start();

}

public static String reslut_shuye;

private static Handler handler_shuye = new Handler() {

@Override

public void handleMessage(androidosMessage msg) {

// 将WebService得到的结果返回给TextView

reslut_shuye = msgobjtoString();

};

};

}

4在上述的代码中,需要注意的几点,你调用Web Service,你得先弄明白四个值:命名空间、调用的方法名称、EndPoint、SOAP Action。因为服务器端是自己部署,wsdl就要自己写,自己会部署服务器端了,这四个值也就一幕了然了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/10848581.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存