Android studio中控制智能插座的代码
时间: 2023-11-02 14:06:17 浏览: 46
以下是一个控制智能插座的示例代码:
```java
public class MainActivity extends AppCompatActivity {
private Button mOnButton;
private Button mOffButton;
private Socket mSocket;
private PrintWriter mPrintWriter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mOnButton = findViewById(R.id.on_button);
mOffButton = findViewById(R.id.off_button);
try {
// 创建一个Socket对象,连接到智能插座的IP地址和端口号
mSocket = new Socket("192.168.1.10", 8888);
mPrintWriter = new PrintWriter(mSocket.getOutputStream());
} catch (IOException e) {
e.printStackTrace();
}
mOnButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 向智能插座发送打开指令
mPrintWriter.write("ON");
mPrintWriter.flush();
}
});
mOffButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 向智能插座发送关闭指令
mPrintWriter.write("OFF");
mPrintWriter.flush();
}
});
}
@Override
protected void onDestroy() {
super.onDestroy();
try {
// 关闭Socket和PrintWriter
mPrintWriter.close();
mSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这里使用了一个Socket对象与智能插座建立连接,并通过PrintWriter对象向智能插座发送打开或关闭指令。请注意,这是一个简单的示例代码,实际项目中还需要处理异常和错误情况。