zoukankan      html  css  js  c++  java
  • Android如何使用API

    转自:http://www.cnblogs.com/vanezkw/archive/2012/07/03/2574559.html

    本文针对Android开发如何使用API文档进行一些经验分享。

     

    1、为什么需要掌握API的使用。

    也许你需要完成一个功能时很多时候你在网上google一番,因为很可能找到有用的代码片段,甚至不用关心具体实现的原理就可以直接拿来用。你可能遇到过搜出来的结果不太令人满意,尤其是你需要完成的功能比较新颖,demo比较少。

    这个时候开发最好最快的途径就是用好API,掌握好API的使用也是程序开发的必修课。

     

    2、API的重要性。

    其实很多初学者都没有查|API的习惯,原因很简单:API仅仅是对一些类库、方法的介绍,很少有Sample,对于开发者来说是很难掌握的。首先你得清楚一点,所有的sample都源自于API,即使是你参考别人的sample其实也是间接的参考API。个人认为在软件开发过程中API的重要性仅次于软件设计,它是编码的基础,所以你不得不掌握API的使用,不是每次google都有你满意的demo。

     

    3、如何使用API。

    其实至于如何使用API可以根据个人习惯来定。今天我和大家分享我使用API的方法。具体还是来一个具体点的例子:使用http提交一个表单,打印出返回值。

    看到这个例子的时候我们应该知道一般的网络访问的步骤(如果不知道那你就得补习相关的知识),或者至少你应该知道android系统中访问网络的方式。此处我们采用HttpClient,下面我们正式开始使用API(假如我以前没有接触过这个类)。

    ① 在doc上找到HttpClient这个类。

     

    这是个interface,所以你还得找到它的一个实现,我们看到它有三个子类,当你再去看看这三个子类分别做了什么

     

    很明显,AbstractHttpClient是不能直接用的,因为是个抽象类。不过他有个子类DefaultHttpClient,这个子类之前看到过了吧。

    再看看AndroidHttpClient 会发现它的API level 8,而DefaultHttpClient的API level 1,当然你可以随意选择一个类来使用,考虑到向下兼容的问题。所以选用DefaultHttpClient。

     

    ② 在doc上找DefaultClient这个类。

    这个类自己并没有public方法,所以看看它继承的方法。

     

     

    简单的结合方法说明,可以看到,它需要执行execute方法就得到服务器的返回值,再看方面里面的参数我们注意到HttpUriRequest 这个类,返回值是HttpResponse。所以先看看HttpUriRequest,再看HttpResponse。

     

    ③ 在doc上找HttpUriRequest 这个类。

     

    它是个接口,但是有很多实现。如果你了解http相关知识的话那么你应该从名字可以知道他们大体的使用方向了(如果不了解的话那么只有一个一个的去了解这个类的功能)。当我每个类都看了了以后我发现HttpGet类可以满足我的需求,那么它的实现就选用HttpGet。

     

    ④ 在doc上找HttpGet这个类。

    它的构造函数很简单,而且除了getMethod就没有其他的方法了。(所以这个类算是很简单了。)看看它的构造函数:

     

    至于你选用哪一个方法就看个人选择了。我选择String参数的构造方法。

     

    ⑤ 在doc上找HttpResponse这个类。

     

    ⑥ 其实就是反复的查找api中的参数和返回值的一个过程。剩下的就省略了。

     

    ⑦ 完整的步骤。

    到此为止查找API就结束了,整理一下查找的结果。

    HttpClient client = new DefaultHttpClient();

    HttpUriRequest request = new HttpGet("http://www.baidu.com");

    HttpResponse response = client.execute(request);

    InputStream ins = response.getEntity().getContent();

    ins就是返回值,以流的形式返回的,你需要把它转化成ByteArrayInputStream就可以得到里面的内容了(这里的原因api里面并没有)。

     

    4、总结。

    其实API的使用是比较简单的,就是不停的查找,查参数,查返回值。方法大概如此,其他一般情况下没有我说的这个例子这么复杂,基本上查询一两次就搞定了。

    PS:如果你有更好的方法,更快的方法,希望得到你的建议。欢迎交流。

  • 相关阅读:
    编写屏幕保护程序
    C++调用JS函数
    connected standby
    用户层APC队列使用
    WebBrowser2控件使用
    UUID
    网络过滤驱动
    windows短路径转换成长路径
    解析快捷方式指向的文件
    获取进程占用的内存
  • 原文地址:https://www.cnblogs.com/XACOOL/p/5287557.html
Copyright © 2011-2022 走看看