❶ webgl怎麼實現智能家居
可以選擇小米智能家居,圍繞小米手機、小米電視、小米路由器三大核心產品,由小米生態鏈企業的智能硬體產品組成一套完整的閉環體驗。
❷ Web前端技術在智能家居領域會有什麼應用場景
這個……我覺得前景堪憂。首先一個想讓Web跑在設備上暫時是沒什麼可能的了,除了內手機外,容大多數智能設備肯定會越做越小,這么小的設備考慮功耗和屏幕(很多智能設備沒有屏幕的好不好…………)怎麼玩Web啊?你要知道Web開發者們為了實現不讓手機自動鎖屏可是連不間斷隱藏地播放一段視頻這種事情都能幹出來的啊!這樣一來簡直是主戰場失守有沒有……
❸ Android 遠程訪問伺服器實現智能家居用webservice可行嗎
Android中訪問WebService總結有兩種:
1、通過鏈接 2、通過第三方類庫
先說說第一種:
比較簡單貼代碼了:
[java] view plainprint?
final String SERVER_URL = "http://192.168.1.55/PosWebServices/WebUI.asmx"; // 定義需要獲取的內容來源地址
URL url = new URL(SERVER_URL);
URLConnection con = url.openConnection();
//一些請求設置
con.setDoOutput(true);
con.setRequestProperty("Pragma:", "no-cache");
con.setRequestProperty("Cache-Control", "no-cache");
con.setRequestProperty("Content-Type", "text/xml");
OutputStreamWriter out = new OutputStreamWriter(con.getOutputStream());
out.write(new String(xmlInfo.getBytes("UTF-8"))); //這里可以發參數的,字元串應該是XML格式的
out.flush();
out.close();
// 取返回值
BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream()));
StringBuilder sBuilder = new StringBuilder();
String line = "";
for (line = br.readLine(); line != null; line = br.readLine()) {
sBuilder.append(line);
}
// 解析XML
Pattern patternname = Pattern.compile("<Name>.*?</Name>");
Matcher matchername = patternname.matcher(sBuilder.toString());
if (matchername.find()) {
String name = matchername.group();
TextView lblname = (TextView) findViewById(R.id.lbl_name);
lblname.setText(URLDecoder.decode(name.substring(name.indexOf(">") + 1, name.lastIndexOf("<"))));
}
Pattern patternage = Pattern.compile("<Age>.*?</Age>");
Matcher matcherage = patternage.matcher(sBuilder.toString());
if (matcherage.find()) {
String age = matcherage.group();
TextView lblage = (TextView) findViewById(R.id.lbl_age);
lblage.setText(age.substring(age.indexOf(">") + 1, age.lastIndexOf("<")));
}
} catch (Exception e) {
String str = e.getMessage();
}
很簡單不多說了還可以用HttpPost加HttpResponse的方式。
第二種:
需要下載一個第三方Jar包:ksoap2
下載地址:http://ksoap2-android.googlecode.com/svn-history/r575/m2-repo/com/google/code/ksoap2-android/ksoap2-android-assembly/2.5.4/ksoap2-android-assembly-2.5.4-jar-with-dependencies.jar
相比舊版本增強了網路鏈接等等同時用HttpTransportSE 替代了AndroidHttpTransport ,建議用新版本
下載後導入工程,不多解釋了
1. 指定WebService的命名空間和調用的方法名,代碼如下:
SoapObject request = new SoapObject("http://service", "getName");
2. 設置調用方法的參數值,如果方法沒有參數,可以省略這一步。設置方法的參數值的代碼如下:
request.addProperty("m1", "v1");
request.addProperty("m2", "v2");
3. 生成調用WebService方法的SOAP請求信息。該信息由SoapSerializationEnvelope對象描述,代碼如下: SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER10); envelope.bodyOut = request; 如果是.NET的WebService還需加:
4. 創建HttpTransportSE對象。通過HttpTransportSE類的構造方法可以指定WebService的WSDL文檔的URL,代碼如下:
HttpTransportSE ht = new HttpTransportSE("http://192.168.1.55/PosWebServices/WebUI.asmx?wsdl");
HttpTransportSE.dotNet=true;
5. 使用call方法調用WebService方法,代碼如下: ht.call(null, envelope); call方法的第1個參數一般為null,第2個參數就是在第3步創建的SoapSerializationEnvelope對象。 6. 使用getResponse方法獲得WebService方法的返回結果,代碼如下: SoapObject soapObject = (SoapObject) envelope.getResponse();
7.取值
soapObject.getProperty("這個名字你懂的");