package com.example.android;

import java.io.IOException; import java.util.HashMap;

import android.app.Activity; import android.content.Intent;

import android.os.Bundle; import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button; import com.google.api.client.http.GenericUrl;

import com.google.api.client.http.HttpRequest;

import com.google.api.client.http.HttpRequestFactory;

import com.google.api.client.http.HttpRequestInitializer;

import com.google.api.client.http.HttpResponse;

import com.google.api.client.http.HttpTransport;

import com.google.api.client.http.UrlEncodedContent;

import com.google.api.client.http.javanet.NetHttpTransport;

import com.google.api.client.json.JsonFactory;

import com.google.api.client.json.JsonObjectParser;

import com.google.api.client.json.jackson.JacksonFactory;

import com.google.api.client.util.Key;

public class MainActivity extends Activity {

public static Result result =null;

public static class Result {

@Key("Code")

private int code;

@Key("Data")

private ProductData data;

public int getCode() {

return code;   }

public ProductData getData() {

return data;

}

}

public static class ProductData {

@Key("Total")

private int total;

@Key("List")

private Product[] list;

public int getTotal() {

return total;   }

public Product[] getList() {

return list;

}

}

public static class Product {

@Key("id")

private int id;

@Key("title")

private String title;

public int getId() {

return id;   }

public String getTitle() {

return title;   }  }

Button btn = null;

static final HttpTransport HTTP_TRANSPORT = new NetHttpTransport();// For Java: NetHttpTransport(HttpURLConnection ); For Android: AndroidHttp.  static final JsonFactory JSON_FACTORY = new JacksonFactory(); // For JSON converting.

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

btn = (Button)this.findViewById(R.id.btnacq);

btn.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

test();

Intent intent = new Intent();

intent.setClass(MainActivity.this, Show.class);

intent.putExtra("code", result.getCode());//向下一个activity传入数值

intent.putExtra("data", result.getData().total);

intent.putExtra("list", result.getData().list);

startActivity(intent);    }   });     }

public static void test() {   HttpRequestFactory requestFactory = HTTP_TRANSPORT.createRequestFactory(new HttpRequestInitializer() {

@Override

public void initialize(HttpRequest request) throws IOException {     request.setParser(new JsonObjectParser(JSON_FACTORY));    }       });

GenericUrl url = new GenericUrl("url"); // ps=20&pi=0&t=8&ti=1&catetag=[]&custag=[]&favtag=[]&name=

HashMap<String, String> params = new HashMap<String, String>();

params.put("ps", "20");//ajax代码写的   params.put("pi", "0");

params.put("t", "8");   params.put("ti", "1");   params.put("catetag", "[]");

params.put("custag", "[]");   params.put("favtag", "[]");   params.put("name", "");

try {    HttpRequest request = requestFactory.buildPostRequest(url, new UrlEncodedContent(params));//请用post请求

HttpResponse response = request.execute();

result = response.parseAs(Result.class);//根据自己定义的的对象的get方法获取里面的值

System.out.println(result);

System.out.println(result.getCode()+"-------"+result.getData());    System.out.println(result.getData().total+"----"+result.getData().list);   }

catch (IOException e) {    System.out.println("代码出错");   }

}

}

google-http-java-client(android学习篇)的更多相关文章

  1. google-http-java-client(android学习篇2源码)

    package com.google.api.services.samples.googleplus.cmdline.simple;   import com.google.api.client.ht ...

  2. Java for Android 学习第一周

    前言 专业Java程序员所必需掌握的3个主题: 1. Java编程语言 2. 使用Java的面向对象编程(OOP) 3. Java核心库 JDK.JRE和JVM 1. javac编译java源代码为字 ...

  3. java+android学习路线图

    java.android学习路线图  看图之前先按住Ctrl键同时滑动鼠标滚轮

  4. Java多线程(学习篇)

    Java多线程:(学习篇) 1.什么是线程 2.线程状态 3.线程中断 4.线程交互 5.同步机制 6.锁机制 7.堵塞队列与堵塞栈 8.条件变量.原子量.线程池等 9.线性安全类和Callable与 ...

  5. Android学习系列(37)--App调试内存泄露之Context篇(下)

    接着<Android学习系列(36)--App调试内存泄露之Context篇(上)>继续分析. 5. AsyncTask对象 我N年前去盛大面过一次试,当时面试官极力推荐我使用AsyncT ...

  6. android基础篇学习心得

    android技术中,线程.进程.JNI.IPC和各个小框架结构是基本功.在跟随高焕堂老师的android程序猿到架构师之路系列视频中 学习完基础篇之后,颇有些心得,记录下来. android开发就是 ...

  7. 【朝花夕拾】Android性能篇之(三)Java内存回收

    在上一篇日志([朝花夕拾]Android性能篇之(二)Java内存分配)中有讲到,JVM内存由程序计数器.虚拟机栈.本地方法栈.GC堆,方法区五个部分组成.其中GC堆是一块多线程的共享区域,它存在的作 ...

  8. 漫谈 Google 的 Native Client 技术(一)---- 历史动力篇(Web 本地计算发展史)

    转自:http://hzx5.blog.163.com/blog/static/40744388201172522313463/ 漫谈 Google 的 Native Client 技术(一)---- ...

  9. 四、Android学习第四天——JAVA基础回顾(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 四.Android学习第四天——JAVA基础回顾 这才学习Android的 ...

随机推荐

  1. Oracle中varchar,varchar2,nvarchar,nvarchar2的区别

    --varchar,varchar2 联系:1.varchar/varchar2用于存储可变长度的字符串比如varchar(20),存入字符串'abc',则数据库中该字段只占3个字节,而不是20个字节 ...

  2. C/C++学习之基础-001

    1.C++虚函数的工作原理 虚函数(virtual function)需要虚函数表(virtual table)才能实现.如果一个类有函数声明成虚拟的,就会生成一个虚函数表,存放这个类的虚函数地址.若 ...

  3. Javascript基础--成员函数(六)

    成员函数:也叫方法 1.常用方法 比如:我们希望对象不但有属性,还希望他有行为.(行为在程序中要靠函数来体现)(1) 添加speak函数,输出我是一个好人 (2) 添加jisuan函数,可以计算从1+ ...

  4. matlab 解方程组

    1.解方程 最近有多人问如何用matlab解方程组的问题,其实在matlab中解方程组还是很方便的,例如,对于代数方程组Ax=b(A为系数矩阵,非奇异)的求解,MATLAB中有两种方法:(1)x=in ...

  5. 2016-1-9 Quartz框架的学习,剪裁图片并设置边框

    #import "ViewController.h" @interface ViewController () @end @implementation ViewControlle ...

  6. BZOJ 1951 古代猪文

    快速幂+枚举质因数+欧拉定理+lucas定理+CRT. 注意两点: 1.if (n<m) C(n,m)=0. 2.这里0^0时应该return 0. #include<iostream&g ...

  7. 【Tsinghua OJ】祖玛(Zuma)问题

    描述 祖玛是一款曾经风靡全球的游戏,其玩法是:在一条轨道上初始排列着若干个彩色珠子,其中任意三个相邻的珠子不会完全同色.此后,你可以发射珠子到轨 道上并加入原有序列中.一旦有三个或更多同色的珠子变成相 ...

  8. Android Manifest.xml详解

    一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activiti ...

  9. 使用java理解程序逻辑,变量

    数据类型 说明 举例 int 整型 用于存储整数.例如.学员人数.某公司的员工编号.一年的天数.一天的小时数 double 双精度浮点型 用于存储带有小数的数字.例如商品的价格.世界的价格.世界银行给 ...

  10. 破解 crackme4(深入底层抓出关键算法)

    系统 : Windows xp 程序 : crackme4 程序下载地址 :http://pan.baidu.com/s/1nu452xN 要求 : 注册机编写 使用工具 : OD & IDA ...