实现一个简单的服务器向手机推送信息的功能,hello world即可。求大侠给点代码学习学习。感激不尽!
解决方案 »
- android 相对布局的问题!!!
- 安装了SDK 创建AVD以后 第一个HelloWorld文件run不起来
- 怎么在android虚拟机上播放视频文件
- 程序是2.2版本下开发的,当用户在低版本系统中安装时如何提示他系统不支持?
- 想写个HelloWorld放入Andriod手机,开发环境如何搭建?
- 如何拦截应用程序
- openfire+spark+asmack(android平台);客户端频繁掉线问题,求解!!
- 求助,伪装来电或来短信的功能是怎么实现的?
- JS哪里不对啊
- http返回的“no”在android里equals("no")无法正确判断,不知道如何解决
- android源码怎么看?想学习下framework,但是不知道怎么去阅读代码
- 疑问:windows phone7开发用的什么语言?
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;public class Activity01 extends Activity
{
private final String DEBUG_TAG = "Activity02";
private TextView mTextView;
private Button mButton;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mTextView = (TextView)this.findViewById(R.id.TextView01);
mButton = (Button)this.findViewById(R.id.Button01);
mButton.setOnClickListener(new Button.OnClickListener()
{
@Override
public void onClick(View arg0)
{
// TODO Auto-generated method stub
refresh();
}
});
//开启线程
new Thread(mRunnable).start();
}
//刷新网页显示
private void refresh()
{
String httpUrl = "http://192.168.1.110:8080/date.jsp";
String resultData = "";
URL url = null;
try
{
// 构造一个URL对象
url = new URL(httpUrl);
}
catch (MalformedURLException e)
{
Log.e(DEBUG_TAG, "MalformedURLException");
}
if (url != null)
{
try
{
// 使用HttpURLConnection打开连接
HttpURLConnection urlConn = (HttpURLConnection) url.openConnection();
// 得到读取的内容(流)
InputStreamReader in = new InputStreamReader(urlConn.getInputStream());
// 为输出创建BufferedReader
BufferedReader buffer = new BufferedReader(in);
String inputLine = null;
// 使用循环来读取获得的数据
while (((inputLine = buffer.readLine()) != null))
{
// 我们在每一行后面加上一个"\n"来换行
resultData += inputLine + "\n";
}
// 关闭InputStreamReader
in.close();
// 关闭http连接
urlConn.disconnect();
// 设置显示取得的内容
if (resultData != null)
{
mTextView.setText(resultData);
}
else
{
mTextView.setText("读取的内容为NULL");
}
}
catch (IOException e)
{
Log.e(DEBUG_TAG, "IOException");
}
}
else
{
Log.e(DEBUG_TAG, "Url NULL");
}
}
private Runnable mRunnable = new Runnable()
{
public void run()
{
while (true)
{
try
{
Thread.sleep(5 * 1000);
//发送消息
mHandler.sendMessage(mHandler.obtainMessage()); } catch (InterruptedException e)
{
// TODO Auto-generated catch block
Log.e(DEBUG_TAG, e.toString());
}
}
}
};
Handler mHandler = new Handler()
{
public void handleMessage(Message msg)
{
super.handleMessage(msg);
//刷新
refresh();
}
};
}
每隔5秒要服务器拿一次数据
我觉得用Socket可能比这还好些。