android手机遥控Android机顶盒的Demo
来源:互联网 发布:oracle连接其他数据库 编辑:程序博客网 时间:2024/04/28 06:50
就是采用socket与serversocket直接的通信
机顶盒端代码:
package cn.tvsr.remotedemo;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.net.ServerSocket;import java.net.Socket;import android.app.Activity;import android.os.Bundle;import android.view.KeyEvent;import android.widget.Toast;public class RemoteDemoActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); new Thread(new Runnable() {@Overridepublic void run() {ServerSocket server; try { server = new ServerSocket(6868); System.out.println("Tvsr:Server Started!"); while(true){ System.out.println("Tvsr:Server Runing!"); Socket client = server.accept(); InputStream ins = client.getInputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(ins)); final String tmp = br.readLine(); final int keyCode = Integer.parseInt(tmp); runOnUiThread(new Runnable() {@Overridepublic void run() {Toast.makeText(getApplicationContext(), "Tvsr:Message received!-->keyCode:"+tmp,Toast.LENGTH_LONG).show();System.out.println("Tvsr:Message received!-->keyCode:"+tmp); RemoteDemoActivity.this.onKeyDown(keyCode, new KeyEvent(KeyEvent.ACTION_DOWN, keyCode));}}); } } catch (IOException e) { e.printStackTrace(); } }}).start(); }}
手机端代码:
package cn.tvsr.controldemo;import java.io.IOException;import java.io.OutputStream;import java.io.PrintStream;import java.net.Socket;import java.net.UnknownHostException;import android.app.Activity;import android.os.Bundle;import android.view.KeyEvent;import android.widget.Toast;public class ControlDemoActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); }@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {Toast.makeText(getApplicationContext(),"keyCode:"+keyCode, Toast.LENGTH_LONG).show(); try { Socket socket = new Socket("192.168.5.101", 6868); OutputStream os = socket.getOutputStream(); PrintStream ps = new PrintStream(os); ps.println(keyCode); ps.flush(); ps.close(); os.close(); socket.close(); } catch (UnknownHostException e) { System.out.println("Tvsr:Server err!"); e.printStackTrace(); } catch (IOException e) { System.out.println("Tvsr:Server err!"); e.printStackTrace(); } return super.onKeyDown(keyCode, event);} }
- Android手机遥控Android机顶盒的Demo
- android手机遥控Android机顶盒的Demo
- Android手机遥控Android机顶盒的Demo
- android,手机 遥控,
- android 手机开发和机顶盒开发的区别
- Android 上手机跟机顶盒应用开发的区别
- android 手机开发和机顶盒开发的区别
- Android 手机开发和机顶盒开发的区别
- Android 机顶盒手势、数据分页演示DEMO
- Android 机顶盒手势、数据分页演示DEMO
- Android 手机遥控器控制机顶盒(电视)
- android接触--遥控的配置
- Android 手机开发和机顶盒开发的区别(软件角度)
- Android 手机开发和机顶盒开发的区别(硬件角度)
- Android 手机开发和机顶盒开发的区别(软件角度)
- Android 手机开发和机顶盒开发的区别(软件角度)
- Android 手机开发和机顶盒开发的区别(硬件角度)
- android 手机之间(机顶盒之间) 应用的交互(服务)
- "优雅"的C++观察者模式实现
- IOS屏幕分辨率兼容问题
- linux 入门之分区篇
- .普通用户运行mysql,输入命令,提示:ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql' .
- java synchronized详解
- android手机遥控Android机顶盒的Demo
- JAVA保存两位小数点的四种方法
- Remoting Session实现
- linux入门之目录篇
- 2012-2013 Javascript新技术汇总
- shell,perl,python之间的区别
- service monitd start
- Boost中对大小端的转换
- 安装php