package com.example.myproject;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class ShowTerminal extends Activity implements Runnable{
private Socket socket;
private String IP="127.0.0.1";
private FileInputStream in=null;
private InputStreamReader reader=null;
private String name=null;
private int CurrentCode=0;
private InputStream ins;
private OutputStream outs;
private List<EnameCode> Elist=null;
private int stateCode;
private TextView tv;
private Button btn;
private Thread thread;
private Thread recvthread;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.showterminal);
tv=(TextView)findViewById(R.id.ename);
btn=(Button)findViewById(R.id.onoff);
Intent intent=getIntent();
Bundle bundle=intent.getExtras();
name=bundle.getString("name");
tv.setText(name);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int [] comBuf=new int[2];
// TODO Auto-generated method stub
if(stateCode==0){
comBuf[0]=CurrentCode;
comBuf[1]=1;
}
else{
comBuf[0]=CurrentCode;
comBuf[1]=0;
}
byte [] cmd=intToByteArray(comBuf,2);
try {
outs.write(cmd);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
thread=new Thread(ShowTerminal.this);
thread.start();
}
public class EnameCode{
public String Ename=null;
public int Ecode=0;
}
public static byte[] intToByteArray(int [] value,int n) {
byte[] b = new byte[n*4];
for(int j=0;j <n ;j++)
for (int i=j*4 ; i < 4*n; i++) {
int offset = (b.length - 1 - i) * 8;
b[i] = (byte) ((value[j] >>> offset) & 0xFF);
}
return b;
}
public static int bytesToInt(byte[] data, int offset) {
int num = 0;
for (int i = offset; i < offset + 4; i++) {
num <<= 8;
num |= (data[i] & 0xff);
}
return num;
}
public void initCode(){
Elist=new ArrayList<EnameCode>();
int sig=1;
int m=1;
try {
in=openFileInput("smarthouse.txt");
reader=new InputStreamReader(in,"UTF16");
BufferedReader br=new BufferedReader(reader);
String s=null;
EnameCode ec=new EnameCode();
while((s=br.readLine())!=null){
m=sig % 2;
sig++;
if(m!=0){
ec.Ename=s;
}
else{
ec.Ecode=Integer.parseInt(s);
Elist.add(ec);
}
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException E){
E.printStackTrace();
}
for(EnameCode e:Elist){
if(e.Ename.equals(name)){
CurrentCode=e.Ecode;
}
}
}
Handler mHandler=new Handler(){
public void handleMessage(Message msg){
if(msg.arg1==-1||msg.arg1==-2){
tv.setText("error");
}
if(msg.arg1==0){
tv.setText("开");
}
if(msg.arg1==1){
tv.setText("关");
}
}
};
@Override
public void run() {
// TODO Auto-generated method stub
int nameCode;
详细解决方案
Activity 起步一个死循环线程无响应
热度:56 发布时间:2016-04-28 07:11:45.0
相关解决方案
- Activity 图片,该如何解决
- Android 三 开始 Activity MainThread中不能执行http通信了
- Activity 起步模式
- android错误Unable to instantiate activity ComponentInfo解决办法
- Android activity onNewIntent触发火候
- PopWindow 的浮动在目前(activity)的顶部是什么意思
- Activity 中的1对象想在 Fragment 中使用,请前辈指导
- 关于Android平台上头is not valid; is your activity running
- android activity 窗口化后 掩藏
- Android关于No Activity found to handle Intent的有关问题
- [Android]Android Activity 起步模式详解
- Activity,service,普通类之间的交互解决方法
- Activity 切换有关问题(或者说按Home键finish Activity)
- 关于android程序运行出现unable to instantiate activity componentinfo的有关问题
- Android Activity 悬浮 半透明框子
- 传递数据 activity,该如何处理
- 三个页面(Activity)之间的切换解决方案
- 运行错误:android.view.WindowManager$BadTokenException:is not valid; is your activity running
- 模拟器揭示Unfortunately,Activity has stopped
- Activity onStop自动执行!
- Android 不能返回 parent Activity 的有关问题
- Activity 起步一个死循环线程无响应
- android activity 互相传值
- android基础七——Activity
- 关于Idea android studio 提示Error:Default Activity not found无法编译有关问题
- 一个 Activity 加了 Logger 以后,Logger 总是为空,咋回事呢
- Activity close事前的会调用什么方法啊
- A activity怎么根据不同跳到B或者C activity
- Android Activity 左右Bar固定高度, 中间内容区自适应大小的layout设置
- Android错误总结-ActivityManager: Warning: Activity not started,its current task has been brought to th