近日,SpringSource发布了Spring for Android 1.0。Spring for Android是Spring Framework的扩展,有助于简化原生Android应用的开发。此次发布最为引入关注之处是提供了一个REST客户端(RestTemplate)以及对OAuth的支持(Spring Social)。

Spring for Android 1.0的首个主要特性就是REST客户端。你现在可以通过Spring RestTemplate抽象层在原生Android应用中使用RESTfule服务了。根据Google的建议,RestTemplate对 Android 2.3+使用了J2SE HTTP客户端库,对Android 2.2及之前的版本使用了HttpClient。它支持不同的HTTP消息转换器、使用Jackson或Gson实现JSON编排、使用Simple XML Serializer实现XML编排、使用Android ROME实现RSS/Atom编排。RestTemplate还支持gzip压缩。下面这个简单的RestTemplate示例来自于Spring for Android参考手册,该示例使用搜索关键词“SpringSource”来搜索Google。

 String url = "https://ajax.googleapis.com/ajax/services/search/web?v=1.0&q={query}";   RestTemplate restTemplate = new RestTemplate();    restTemplate.getMessageConverters().add(new StringHttpMessageConverter());  String result = restTemplate.getForObject(url, String.class, "SpringSource"); 

Spring for Android 1.0的另一个主要特性就是对Spring Social的支持。你现在可以在Android应用中使用Spring Social,这包括一个OAuth客户端和诸如Twitter与Facebook等流行社交站点的实现。此次发布提供了对OAuth 1.x与2.0的支持,并且包含一个SQLite库以及兼容于Android的Spring Security加密。

熟悉Spring Framework的开发者自然而然地期望Spring for Android能够支持依赖注入。然而,由于Android通过Intent来驱动应用生命周期的方式,依赖注入方式的实现会很受限。感兴趣的读者请阅读Clean Code in Android Applications来了解关于Android中使用依赖注入的更多信息。

要想了解更多信息,请参阅Spring for Android参考手册。Spring for Android的示例位于GitHub上。若想起步,请下载发布包或是添加Maven依赖。

   <dependency>      <groupId>org.springframework.android</groupId>      <artifactId>spring-android-rest-template</artifactId>       <version>1.0.0.RELEASE</version>    </dependency>     <dependency>      <groupId>org.springframework.android</groupId>      <artifactId>spring-android-auth</artifactId>        <version>${spring-android-version}</version>    </dependency> 

要想在Android应用中利用Maven的依赖管理功能,请不要忘记阅读Maven依赖管理。

转载于:https://www.cnblogs.com/shihao/archive/2012/07/10/2583992.html

SpringSource通过Spring for Android 1.0将Spring Framework引入到Android上相关推荐

  1. android 7.0独立升级,爆料:Android 7.0用户将可自行升级!

    原标题:爆料:Android 7.0用户将可自行升级! 谷歌:大家好,谷歌武林大会(I/O大会)将在美西时间5月18-20日召开,届时激动人心的Android 7.0就要来啦. 手机厂商:我了个擦,老 ...

  2. 【Android 安全】DEX 加密 ( 不同 Android 版本的 DEX 加载 | Android 8.0 版本 DEX 加载分析 | Android 5.0 版本 DEX 加载分析 )

    文章目录 一.不同版本的 DEX 加载 1.Android 8.0 版本 DEX 加载分析 2.Android 6.0 版本 DEX 加载分析 3.Android 5.0 版本 DEX 加载分析 一. ...

  3. android wifi坏了,Android 8.0背锅WiFi掉线,Android P突然变脸

    原标题:Android 8.0背锅WiFi掉线,Android P突然变脸 安卓8.0给用户带来更快的速度和更多新功能的同时,也出现了一些问题. 据Android Police报道,大量用户在网上反映 ...

  4. android 5.0 ios 8,iOS 8与Android 5.0大比拼:功能相同 体验不同

    过去半年,Android和iOS的移动大战已经发生了一些有趣的变化.过去,两款移动操作系统的差别主要体现在功能和精致方面.传统上,Android以更多功能和更高的可定制性见长,iOS则更为精致. 但是 ...

  5. Android 10.0 系统服务之ActivityMnagerService-AMS启动流程-[Android取经之路]

    摘要:上一节我们讲完了SystemServer的启动过程,这一节接着上一节的步骤,来讲解ActivityManagerService的启动过程. ActivityManagerService简称AMS ...

  6. android 上传头像遇到的问题,Android 7.0 图片剪切问题,选择头像上传

    一. 7.0文件地址传输的问题 异常信息:FileUriExposedException: android:name="android.support.v4.content.FileProv ...

  7. android 6.0版本名字,棉花糖Marshmallow 是Android 6.0的名字

    Android 6.0 五月下旬在 I/O 大会上亮相,将于今年秋天与用户见面.但是依照惯例,谷歌并没有宣布新 Android 的代号全称,而 Android M 中 M 所代表的甜品:Marshma ...

  8. 三星s4 android 6.0吗,快了 三星手机适配Android 6.0时间公布

    快了 三星手机适配Android 6.0时间公布 2016年01月26日 00:04作者:董岩编辑:董岩文章出处:泡泡网原创 分享 作为全球范围内无可争议的安卓手机巨头之一,三星在为其旗下手机适配安卓 ...

  9. springboot2稳定版本_重要版本Spring Boot 2.3.0发布 - spring.io

    重要版本Spring Boot 2.3.0于2020年5月15日发布,此版本增加了大量新功能和改进.有关完整的升级说明以及新的和值得注意的功能,请参阅发行说明. 2.3的新功能 依赖升级 Spring ...

最新文章

  1. 灰度直方图均衡化实现
  2. JCIM| 基于双向RNN的分子生成模型
  3. 字节跳动---万万没想到之聪明的编辑
  4. 快速入门人工智能的秘诀,都在这里了!
  5. 漫画:什么是JVM的垃圾回收?
  6. redis linux 运行依赖,在Ubuntu系统下安装Redis Desktop Manager的方法
  7. 修改MySql默认编码
  8. python init main_python 模块中的 __init__.py __main__.py
  9. 【操作系统】第一章.操作系统引论思维导图
  10. 【NCD 2019 B】Let me sleep【边双连通分量缩点、树的直径】
  11. 如何查看java源码
  12. 大学物理实验长度的测量实验报告_大学物理长度测量实验报告
  13. 状态码如何返回Http/1.1 200 OK
  14. 4G和3G到底有什么区别
  15. 初探----python封装通俗易懂的数据库增、删、改、查方法
  16. 基于Android的校园二手交易平台App
  17. linux设置多线程优先级
  18. 什么因素引起了肾结石呢?
  19. 相机分辨率越高,成像效果就一定越好嘛
  20. 第十六篇 Computed 计算属性的应用

热门文章

  1. 原始套接字抓取所有以太网数据包与分析
  2. Linux设备驱动之Kobject、Kset
  3. JAVA进阶day04多态(向上转化,向下转化)
  4. [react] React v15中怎么处理错误边界?
  5. 工作408- Module build failed (from ./node_modules/sass-loader/dist/cjs.js)
  6. [html] 你有使用过time标签吗?说说它的用途有哪些?
  7. [vue] DOM渲染在哪个周期中就已经完成了?
  8. [js] axios为什么可以使用对象和函数两种方式调用?是如何实现的?
  9. [js] 举例说明Object.defineProperty会在什么情况下造成循环引用导致栈溢出?
  10. 前端学习(2756):condition模拟启动配置