本文实例为大家分享了android post请求接口demo测试代码,供大家参考,具体内容如下

MainActivity.java
package com.tsh.test;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.URL;
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.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
public Button loginBtn;
public TextView loginUserName;
public TextView loginPassword;
public static String API="http://mail.sina.net/loginxxx";
public LoginHandler loginHandler;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取View对象
loginBtn=(Button) findViewById(R.id.loginBtn);
loginUserName=(TextView) findViewById(R.id.loginUsername);
loginPassword=(TextView) findViewById(R.id.loginPassword);
//给View对象设置点击事件
loginBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
//开启新线程
Thread loginThread=new Thread(new LoginRunable());
loginThread.start();
}
});
loginHandler=new LoginHandler();
}
//实现Runable接口,开启新线程
class LoginRunable implements Runnable{
@Override
public void run() {
try {
URL url=new URL(API);
HttpURLConnection http=(HttpURLConnection) url.openConnection();
http.setRequestMethod("POST");
http.setDoInput(true);
http.setDoOutput(true);
OutputStream ops=http.getOutputStream();
PrintWriter pw=new PrintWriter(ops);
String username=loginUserName.getText().toString();
String password=loginPassword.getText().toString();
pw.write("email="+username+"&psw="+password+"&loginfrom=app&output=json");
pw.flush();
InputStream ins=http.getInputStream();
byte[] buffer = new byte[1024];
int length=0;
StringBuilder sb=new StringBuilder();
while((length=ins.read(buffer))!=-1){
sb.append(new String(buffer,0,length));
}
Message msg=new Message();
msg.what=1;
msg.obj=sb.toString();
loginHandler.sendMessage(msg);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//传递消息的handle
class LoginHandler extends Handler{
@Override
public void handleMessage(Message msg) {
String loginResponse=(String) msg.obj;
System.out.println(loginResponse);
Toast.makeText(MainActivity.this, loginResponse, 10).show();
Intent intent=new Intent(MainActivity.this, MailIndexActivity.class);
//startActivity(intent);
}
}
}
main_activity.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="${relativePackage}.${activityClass}" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用户名" />
<EditText
android:hint="请输入用户名"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/loginUsername"
android:text="shihan@appdev.sinanet.com"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="密码"/>
<EditText
android:hint="请输入密码"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/loginPassword"
android:text="xxxxxxx"/>
<Button
android:id="@+id/loginBtn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="登陆认证"
/>
</LinearLayout>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# android
# post
# 请求接口
# Android序列化实现接口Serializable与Parcelable详解
# Android ApplicationContext接口深入分析
# Android itemDecoration接口实现吸顶悬浮标题
# Android Jetpack架构中ViewModel接口暴露的不合理探究
# Android设置默认锁屏壁纸接口的方法
# Android实现socket通信统一接口的方法
# Android斩首行动接口预请求
# 请输入
# 大家分享
# 具体内容
# 大家多多
# loginHandler
# Override
# loginxxx
相关文章:
如何通过PHP快速构建高效问答网站功能?
北京制作网站的公司,北京铁路集团官方网站?
如何通过智能用户系统一键生成高效建站方案?
巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成
大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?
javascript基本数据类型及类型检测常用方法小结
教学论文网站制作软件有哪些,写论文用什么软件
?
如何制作网站标识牌,动态网站如何制作(教程)?
网站制作公司广州有几家,广州尚艺美发学校网站是多少?
如何安全更换建站之星模板并保留数据?
制作网站的基本流程,设计网站的软件是什么?
微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?
内部网站制作流程,如何建立公司内部网站?
小型网站制作HTML,*游戏网站怎么搭建?
微信小程序 五星评分(包括半颗星评分)实例代码
如何快速建站并高效导出源代码?
如何高效搭建专业期货交易平台网站?
如何在Golang中使用replace替换模块_指定本地或远程路径
北京的网站制作公司有哪些,哪个视频网站最好?
洛阳网站制作公司有哪些,洛阳的招聘网站都有哪些?
广东专业制作网站有哪些,广东省能源集团有限公司官网?
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
网站制作报价单模板图片,小松挖机官方网站报价?
网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?
香港服务器选型指南:免备案配置与高效建站方案解析
学校免费自助建站系统:智能生成+拖拽设计+多端适配
如何在IIS服务器上快速部署高效网站?
建站之星如何开启自定义404页面避免用户流失?
网站制作多少钱一个,建一个论坛网站大约需要多少钱?
如何通过多用户协作模板快速搭建高效企业网站?
如何快速搭建高效WAP手机网站吸引移动用户?
微网站制作教程,我微信里的网站怎么才能复制到浏览器里?
深圳网站制作培训,深圳哪些招聘网站比较好?
零基础网站服务器架设实战:轻量应用与域名解析配置指南
如何在建站之星网店版论坛获取技术支持?
常州自助建站费用包含哪些项目?
如何快速搭建二级域名独立网站?
官网网站制作腾讯审核要多久,联想路由器newifi官网
历史网站制作软件,华为如何找回被删除的网站?
宝塔面板创建网站无法访问?如何快速排查修复?
如何在万网ECS上快速搭建专属网站?
如何在VPS电脑上快速搭建网站?
b2c电商网站制作流程,b2c水平综合的电商平台?
大连网站设计制作招聘信息,大连投诉网站有哪些?
中山网站推广排名,中山信息港登录入口?
海南网站制作公司有哪些,海口网是哪家的?
建站之星安全性能如何?防护体系能否抵御黑客入侵?
Swift中switch语句区间和元组模式匹配
定制建站价位费用解析与套餐推荐全攻略
香港服务器如何优化才能显著提升网站加载速度?
*请认真填写需求信息,我们会在24小时内与您取得联系。