`
helloandroid
  • 浏览: 276102 次
  • 性别: Icon_minigender_1
  • 来自: 成都
博客专栏
107f8db3-b009-3b79-938a-dafddb49ea79
Android腾讯微博客户...
浏览量:95825
社区版块
存档分类
最新评论

Android腾讯微博客户端开发二:相关工具篇

阅读更多

工欲善其事,必先利其器。先给大家介绍3个我在做腾讯微博客户端开发过程中用到的3个工具

1:一个是sqllite的数据库管理工具,http://www.sqliteexpert.com/download.html

2:腾讯API测试工具http://open.t.qq.com/resource.php?i=3,4

3:腾讯API返回的都是json和xml的数据格式,在手机上一般用json,这是一个json字符串分析工具。



把返回的字符串贴在viewer中:



点击第一个Tab,

json数据格式解析我自己分为两种;

一种是普通的,一种是带有数组形式的;


 

普通形式的:
服务器端返回的json数据格式如下:

{"userbean":{"Uid":"100196","Showname":"\u75af\u72c2\u7684\u7334\u5b50","Avtar":null,"State":1}}

分析代码如下:

// TODO 状态处理 500 200 
                int res = 0; 
                res = httpClient.execute(httpPost).getStatusLine().getStatusCode(); 
                if (res == 200) { 
                    /* 
                     * 当返回码为200时,做处理 
                     * 得到服务器端返回json数据,并做处理 
                     * */ 
                    HttpResponse httpResponse = httpClient.execute(httpPost); 
                    StringBuilder builder = new StringBuilder(); 
                    BufferedReader bufferedReader2 = new BufferedReader( 
                            new InputStreamReader(httpResponse.getEntity().getContent())); 
                    String str2 = ""; 
                    for (String s = bufferedReader2.readLine(); s != null; s = bufferedReader2 
                            .readLine()) { 
                        builder.append(s); 
                    } 
                    Log.i("cat", ">>>>>>" + builder.toString());

JSONObject jsonObject = new JSONObject(builder.toString()) 
                        .getJSONObject("userbean"); 

                String Uid; 
                String Showname; 
                String Avtar; 
                String State; 

                Uid = jsonObject.getString("Uid"); 
                Showname = jsonObject.getString("Showname"); 
                Avtar = jsonObject.getString("Avtar"); 
                State = jsonObject.getString("State");
带数组形式的:
服务器端返回的数据格式为:

{"calendar": 
    {"calendarlist": 
            [ 
            {"calendar_id":"1705","title":"(\u4eb2\u5b50)ddssd","category_name":"\u9ed8\u8ba4\u5206\u7c7b","showtime":"1288927800","endshowtime":"1288931400","allDay":false}, 
            {"calendar_id":"1706","title":"(\u65c5\u884c)","category_name":"\u9ed8\u8ba4\u5206\u7c7b","showtime":"1288933200","endshowtime":"1288936800","allDay":false} 
            ] 
    } 
}

分析代码如下:

// TODO 状态处理 500 200 
                int res = 0; 
                res = httpClient.execute(httpPost).getStatusLine().getStatusCode(); 
                if (res == 200) { 
                    /* 
                     * 当返回码为200时,做处理 
                     * 得到服务器端返回json数据,并做处理 
                     * */ 
                    HttpResponse httpResponse = httpClient.execute(httpPost); 
                    StringBuilder builder = new StringBuilder(); 
                    BufferedReader bufferedReader2 = new BufferedReader( 
                            new InputStreamReader(httpResponse.getEntity().getContent())); 
                    String str2 = ""; 
                    for (String s = bufferedReader2.readLine(); s != null; s = bufferedReader2 
                            .readLine()) { 
                        builder.append(s); 
                    } 
                    Log.i("cat", ">>>>>>" + builder.toString()); 
                    /** 
                     * 这里需要分析服务器回传的json格式数据, 
                     */ 
                    JSONObject jsonObject = new JSONObject(builder.toString()) 
                            .getJSONObject("calendar"); 
                    JSONArray jsonArray = jsonObject.getJSONArray("calendarlist"); 
                    for(int i=0;i<jsonArray.length();i++){ 
                        JSONObject jsonObject2 = (JSONObject)jsonArray.opt(i); 
                        CalendarInfo calendarInfo = new CalendarInfo(); 
                        calendarInfo.setCalendar_id(jsonObject2.getString("calendar_id")); 
                        calendarInfo.setTitle(jsonObject2.getString("title")); 
                        calendarInfo.setCategory_name(jsonObject2.getString("category_name")); 
                        calendarInfo.setShowtime(jsonObject2.getString("showtime")); 
                        calendarInfo.setEndtime(jsonObject2.getString("endshowtime")); 
                        calendarInfo.setAllDay(jsonObject2.getBoolean("allDay")); 
                        calendarInfos.add(calendarInfo); 
                    }

总结,普通形式的只需用JSONObject ,带数组形式的需要使用JSONArray 将其变成一个list。

 

  • JsonViewer.zip (44.2 KB)
  • 描述: json字符串分析工具
  • 下载次数: 570
  • 大小: 148.9 KB
  • 大小: 388.5 KB
  • 大小: 106.6 KB
分享到:
评论
1 楼 wenlong200817 2012-06-24  
谢谢学习下!!

相关推荐

    移动应用Android 腾讯微博客户端源码.rar

    《深入剖析Android腾讯微博客户端源码》 在移动互联网领域,Android平台因其开源特性与广泛的设备支持,成为了开发者们的热门选择。本篇文章将基于提供的"移动应用Android 腾讯微博客户端源码"进行深入解析,揭示其...

    Android 腾讯微博客户端源码.zip

    【Android 腾讯微博客户端源码】是一个深入学习Android应用开发的重要资源,它揭示了腾讯微博客户端在Android平台上的实现细节。这个源码库包含了客户端的所有组件、模块和功能,为开发者提供了一个鲜活的实例,可以...

    好用的腾讯微博客户端

    总结,这个话题涵盖了腾讯微博客户端的使用、一个可能开源的Android应用以及关于源代码和技术工具的讨论。通过提供的博文链接,我们可以深入了解更多关于这个客户端的细节,如其工作原理、功能实现以及如何利用源...

    android仿腾讯微博客户端

    《Android仿腾讯微博客户端开发详解》 在移动互联网飞速发展的今天,社交应用已经成为人们日常生活中不可或缺的一部分。作为中国主流的社交媒体平台,腾讯微博在移动端的重要性不言而喻。本篇将详细介绍如何在...

    android 腾讯微博客户端

    通过对"android 腾讯微博客户端"源代码的深入学习,开发者不仅能掌握Android应用开发的基础知识,还能了解到如何与第三方服务集成,以及实现一个完整的社交应用。这对于提升Android开发技能和理解实际项目开发流程...

    Android 腾讯微博客户端源码1.zip

    【Android 腾讯微博客户端源码分析】 在Android平台上,腾讯微博客户端是一款非常流行的社交媒体应用,它允许用户发布和浏览微博,与朋友互动。这个源码提供了宝贵的参考资料,可以帮助开发者深入理解Android应用的...

    [腾讯微博Android客户端开发]课程文档及源代码

    通过这门课程,开发者不仅可以掌握Android开发的基本技能,还能了解到腾讯微博客户端的具体实现细节,这对于想要从事社交应用开发或者对Android平台有深度研究的人来说是一份宝贵的资源。同时,源代码的分析和实践将...

    腾讯微博客户端安卓源码.rar

    总结来说,通过研究这个【腾讯微博客户端安卓源码】,开发者可以深入理解Android应用开发的全貌,学习到腾讯这样的大公司在项目实践中采用的技术和最佳实践,这对于提升个人技能和解决实际问题有着极大的帮助。...

    Android 腾讯微博客户端源码1-IT计算机-毕业设计.zip

    这篇文档将深入解析《Android 腾讯微博客户端源码1》这个项目,它是一个针对IT计算机专业学生的毕业设计示例。通过分析源码,我们可以学习到许多Android应用开发的关键知识点,这对于提升Android编程技能和理解移动...

    Android代码-腾讯微博客户端源码1.zip

    【Android代码-腾讯微博客户端源码1.zip】这个压缩包包含的是腾讯微博的客户端源代码,主要用于学习和研究Android应用开发。在这个项目中,我们可以深入理解一个大型社交应用的架构设计、功能实现以及性能优化等方面...

    android版的腾讯微博客户端源码

    【Android版腾讯微博客户端源码解析】 在移动开发领域,Android平台因其开源和广泛的设备支持,成为了许多开发者首选的开发环境。腾讯微博作为中国社交媒体的重要组成部分,其Android客户端源码对于学习和研究移动...

    腾讯微博Android客户端开发.rar

    《腾讯微博Android客户端开发详解》 在移动应用领域,Android平台因其开源、灵活的特性,吸引了众多开发者投身其中。本文将深入探讨“腾讯微博Android客户端开发”,解析其背后的技术架构和实现原理,帮助读者理解...

    腾讯微博客户端源码

    1. **框架与库**:腾讯微博客户端可能基于特定的开发框架,比如Android的Android Studio或iOS的Xcode。通过源码,我们可以了解到所使用的第三方库,如网络请求库(如Volley或AFNetworking)、数据持久化库(如SQLite...

    android多微博客户端Cuckoo

    【标题解析】:“android多微博客户端Cuckoo”是指一个基于Android平台的开源项目,它实现了对多个微博服务的支持,比如新浪、腾讯等。Cuckoo在这里可能寓意着模仿鸟,意味着该应用能够模仿不同微博平台的功能。 ...

    qt编写的腾讯微博客户端

    Qt编写的腾讯微博客户端是一款基于Qt库开发的第三方微博应用,由开发者haipe精心打造,命名为“小p版本”。这个项目展示了如何利用Qt这一跨平台的C++图形用户界面应用程序开发框架来构建一个功能完善的社交媒体...

    腾讯微博源代码

    这个源代码提供了腾讯微博客户端的实现细节,让开发者有机会深入理解大型社交应用的架构设计、功能实现以及性能优化。通过分析和研究这份源代码,开发者能够提升在Android平台上的编程技能,特别是在构建类似社交...

    YiBo 微博客户端

    总之,YiBo微博客户端是Android平台上的一款强大社交媒体工具,它将腾讯微博和新浪微博的体验融为一体,提供了一站式的社交解决方案。通过优秀的界面设计、实时推送功能、全面的互动方式以及安全的隐私保护,YiBo...

    Android腾讯微薄客户端源代码.7z

    《深入剖析Android腾讯微博客户端源代码》 在移动开发领域,Android平台因其开源特性与广泛的应用,成为开发者的重要战场。腾讯微博作为中国领先的社交媒体之一,其Android客户端源代码的公开,为开发者提供了一次...

    Android应用源码腾讯微博安卓客户端项目

    网络通信是现代移动应用的核心,腾讯微博客户端必然采用了某种网络库,如Retrofit或Volley,用于与服务器交互。通过分析源码,开发者可以学习到如何处理HTTP请求、JSON解析、错误处理等网络编程技术。 数据持久化...

Global site tag (gtag.js) - Google Analytics