先测试网络功能,新建一个NetHandler类继承Handler类并重写handlerMessage()方法,然后新建一个NetThread类实现Runnable接口用于实现网络连接,然后在handlerMessage()中实现接受Web端的数据并Toast出来
在这里,Web端print的是一个json型的字符串,所以Android端接受到这个字符串要进行解析,这里使用的是alibaba的fastjson库:implementation group: 'com.alibaba', name: 'fastjson', version: '1.2.75' 经过测试,成功Toast出数据库中对应md5码的pwdmaster
parent
c204b5ee1e
commit
612d0fa7b8
@ -0,0 +1,24 @@
|
|||||||
|
package com.thankvinci.CloudKey.NetUtils;
|
||||||
|
|
||||||
|
import android.os.Handler;
|
||||||
|
import android.os.Message;
|
||||||
|
import android.widget.Toast;
|
||||||
|
|
||||||
|
import com.thankvinci.CloudKey.MainActivity;
|
||||||
|
|
||||||
|
|
||||||
|
public class NetHandler extends Handler {
|
||||||
|
private MainActivity activity;
|
||||||
|
public NetHandler(MainActivity activity){
|
||||||
|
this.activity = activity;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void handleMessage(Message msg) {
|
||||||
|
super.handleMessage(msg);
|
||||||
|
switch (msg.what){
|
||||||
|
case 0:
|
||||||
|
Toast.makeText(activity,msg.getData().getString("key"),Toast.LENGTH_SHORT).show();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,59 @@
|
|||||||
|
package com.thankvinci.CloudKey.NetUtils;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
import android.os.Handler;
|
||||||
|
import android.os.Message;
|
||||||
|
|
||||||
|
import androidx.loader.content.CursorLoader;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
|
||||||
|
import java.io.BufferedReader;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.io.InputStreamReader;
|
||||||
|
import java.net.HttpURLConnection;
|
||||||
|
import java.net.MalformedURLException;
|
||||||
|
import java.net.URL;
|
||||||
|
|
||||||
|
public class NetThread implements Runnable {
|
||||||
|
Handler handler;
|
||||||
|
public NetThread(Handler handler){
|
||||||
|
this.handler = handler;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void run(){
|
||||||
|
Message msg = new Message();
|
||||||
|
String data = getNetWork("http://1.14.144.194:8080/cscp/cscp?function=query&MD5=123456789abcdef0123456789abcd4f0");
|
||||||
|
JSONObject jsonObject = JSON.parseObject(data);
|
||||||
|
Bundle dataPackage = new Bundle();
|
||||||
|
dataPackage.putString("key",jsonObject.getString("pwd"));
|
||||||
|
msg.what = 0;
|
||||||
|
msg.setData(dataPackage);
|
||||||
|
handler.sendMessage(msg);
|
||||||
|
}
|
||||||
|
public String getNetWork(String str_url){
|
||||||
|
StringBuilder builder = new StringBuilder();
|
||||||
|
String result = "2";
|
||||||
|
try{
|
||||||
|
URL url = new URL(str_url);
|
||||||
|
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
|
||||||
|
connection.setRequestMethod("GET");
|
||||||
|
connection.setConnectTimeout(5000);
|
||||||
|
connection.setReadTimeout(8000);
|
||||||
|
connection.connect();
|
||||||
|
InputStream inputStream = connection.getInputStream();
|
||||||
|
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
|
||||||
|
while((result=reader.readLine())!=null){
|
||||||
|
builder.append(result);
|
||||||
|
}
|
||||||
|
connection.disconnect();
|
||||||
|
}catch (MalformedURLException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
return builder.toString();
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue