脱离微信公众平台的微信公众平台应用

本文介绍了一款模仿微信公众平台的独立应用开发过程,包括代码结构、网络请求及UI更新机制。应用通过HTTP GET请求获取服务器端数据,并利用线程进行网络操作。关键功能与微信平台相似,如发送文本消息,可通过传递参数实现个性化内容输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

很绕嘴的标题, 首先,来几张效果图吧:


貌似这是微信公众平台呀!但其实不是啦,以前一段时间一直在做微信公众平台的开发,但虽然好处很多,但是毕竟还需要用到微信作为中转站,于是我仿微信的公众平台而单独做的一个小应用。和我的微信公众平台所实现的功能都基本一致(因为后台是一样的),先看一下整个应用的代码结构:

和普通的Android程序一样,分为activity、domain、adapter、和util四个包,通过包名大家应该能够清楚每个包的作用,首先看一下主界面的主要代码洋洋洒啊洒一共三四百行,就不全不列出来了,主要是一些界面初始化,其中比较重要的一个地方就是获取服务器端的返回数据,看这段代码:

public void run() {
String url = "http://2.saymagic.sinaapp.com:80/weixin/sayweixin.php?keyword=";
url +=content;
HttpGet httpGet = new HttpGet(url);
try {
HttpResponse httpResponse = new DefaultHttpClient().execute(httpGet);
if(httpResponse.getStatusLine().getStatusCode() == 200){
result = EntityUtils.toString(httpResponse.getEntity(),"utf-8");
System.out.println(result);
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
handler.post(runnableUi);
}


}.start();


其中http://2.saymagic.sinaapp.com:80/weixin/sayweixin.php极为服务端的网址,android应用新开一个线程进行联网操作,通过get方式向这个地址请求数据,这个网址是我封装好的一个接口,为了向开发者提供更方便的服务,只要你向其传递keyword参数,机会返回相关内容,如传递的参数为'笑话',就会返回一则笑话,具体规则请看我的另一篇文章http://blog.saymagic.cn/blog.php?id=3.(ps 您完全可以根据此接口来写您自己的应用,神码公众平台的,都会相当简单的)

接着,当我们收到返回数据的时候我们需要把 这个数据post到主线程去更新UI,所以会有下面两段代码:

handler.post(runnableUi);

Runnable runnableUi = new Runnable() {
@Override
public void run() {
ChatMsgEntity entity = new ChatMsgEntity();
entity.setDate(getDate());
entity.setName("小say");
entity.setMsgType(true);
entity.setText(result.trim());
setEntity(entity);
}
};

好的,其实主要代码就在主界面里了,其它都是小事情了,有一个判断当前是否联网的NetUtil类,提供了isNetworkAvailable函数,估计以后还会用到很多,在此记录下把。代码如下:

public static boolean isNetworkAvailable(Context context) {
ConnectivityManager cm = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (cm == null) {
} else {


NetworkInfo[] info = cm.getAllNetworkInfo();
if (info != null) {
for (int i = 0; i < info.length; i++) {
if (info[i].getState() == NetworkInfo.State.CONNECTED) {
return true;
}
}
}
}
return false;
}



好的,主要的就是这些了,源码(ps:需要积分的,留下邮箱我会单独发的)。。

最后,欢迎大家关注我的微信公众帐号,功能和本程序一哦。

微信公众帐号二维码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值