`
river418
  • 浏览: 27344 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

Android:SNS客户端开发四:数据库操作(二)

 
阅读更多

上一篇文章列出了在Android上对数据库进行操作的基本流程,及简单的增,删,查的方法。这一篇实现添加用户,查找用户的方法调用。UserInfo类请参考上一篇文章。

在Android中,我们通过ContentValues往数据库中传值,屏蔽了复杂了insert语句,十分方便。首先结合Android:SNS客户端开发二:获取账号资料中,我们得到的用户信息,声明一个ContentValue对象。代码:

ContentValues values = new ContentValues();
values.put("userid", user_id);
			values.put("name", name);
			values.put("nickname", screen_name);
			values.put("access_token", access_token);
			values.put("access_secret", access_secret);
			values.put("type", "sina");
			values.put("icon", ImageUtil.getBytesFromUrl(headUrl));

 以上的各个字段信息都是在获取账号资料放中得到的。然后我们调用上篇文章中DBOperate中的insert方法,将用户信息插入到数据库中。

if (!dboperate.isExist(values)) {
			dboperate.insertUser(values);
			Toast.makeText(context, "添加账号成功", Toast.LENGTH_LONG).show();
		} else {
			Toast.makeText(context, "该账号已存在", Toast.LENGTH_LONG).show();
		}

 

先判断用户数据是否已经在数据库里,如果不存在则插入到数据库中,若存在则显示账号已存在。

那么到这里,我们的数据库操作基本就完成了。下一篇会开始介绍发送一篇微博的界面设计。

补充:我们可以看到在第一段代码中有这么一句话

values.put("icon", ImageUtil.getBytesFromUrl(headUrl));

 

在上一篇中,我们在建立user表时,将icon(头像)的数据类型设置为blob,也就是二进制字段。那么我们在将用户头像存入数据库的时候,需要从网络上拉取到用户头像文件,并转化成二进制信息之后再存入数据库。附上ImageUtil中的getBytesFromUrl方法代码:

public class ImageUtil {
	public static byte[] getBytesFromUrl(String url) throws Exception {
		return readInputStream(getRequest(url));
	}

	public static byte[] readInputStream(InputStream inStream) throws Exception {
		ByteArrayOutputStream outSteam = new ByteArrayOutputStream();
		byte[] buffer = new byte[4096];
		int len = 0;
		while ((len = inStream.read(buffer)) != -1) {
			outSteam.write(buffer, 0, len);
		}
		outSteam.close();
		inStream.close();
		return outSteam.toByteArray();
	}

	public static InputStream getRequest(String path) throws Exception {
		URL url = new URL(path);
		HttpURLConnection conn = (HttpURLConnection) url.openConnection();
		conn.setRequestMethod("GET");
		conn.setConnectTimeout(5000);
		if (conn.getResponseCode() == 200) {
			return conn.getInputStream();
		}
		return null;
	}

}

 

分享到:
评论

相关推荐

    SNS.rar_ sns_SNS_android_社交网络

    《Android社交网络客户端开发详解》 在当今数字化时代,社交网络已经成为了人们日常生活的一部分,而Android作为全球最大的智能手机操作系统,其上的社交网络客户端更是扮演着举足轻重的角色。本项目"sns_SNS_...

    人人都玩开心网:Ext+JS+Android+SSH整合开发Web与移动SNS

    《人人都玩开心网:Ext+JS+Android+SSH整合开发Web与移动SNS》这本书主要聚焦于构建社交网络服务(SNS)平台,通过结合多种技术实现Web端和移动端的应用开发。以下是书中涉及的主要知识点: 1. **EXT.JS**: EXT....

    Android---Douban-SNS.zip_android_android sns

    在Android平台上,开发一款社交网络应用(SNS)如豆瓣网的移动客户端,涉及到许多关键技术和概念。这个项目"Android---Douban-SNS.zip"很可能是为了教学或实践目的,提供了一个完整的讲解和源代码资源,让我们来深入...

    ExtJS+Android+SSH整合开发Web与移动SNS

    ### ExtJS+Android+SSH整合开发Web与移动SNS #### 一、概述 随着互联网技术的不断发展,Web应用及移动应用的需求日益增加。在众多的技术栈中,ExtJS、Android以及SSH(Struts2 + Spring + Hibernate)是构建高质量...

    人人都玩开心网•Ext+JS+Android+BSSH整合开发Web与移动SNS源码

    本篇将围绕"人人玩开心网"的源码展开,解析其如何运用Ext JS、Android、BSSH等技术实现Web与移动SNS的整合开发。 1. Ext JS:基于JavaScript的富客户端框架 Ext JS是一个强大的JavaScript库,用于构建功能丰富的...

    gyz:完整的手机SNS------OOXX源码(包括服务端+客户端+数据库)

    gyzooxx源码这是一个完整的安卓客户端+J2EE服务端+数据库项目。系统功能基本完善,安卓利用了开心网的界面开发,功能包括:登陆,注册,图片处理上传,图片效果制作截取等完整功能,本地SQLLite数据库存储,附近的人...

    人人都玩开心网 ExtJS Android.SSH整合开发Web与移动SNS.(李宁)

    整合开发Web与移动SNS,实际上就是将Web前端的ExtJS界面、SSH框架的后台逻辑以及Android客户端结合起来,形成一套完整的用户体验。这不仅需要前端和后端开发的技能,还需要移动开发的经验以及对网络通信协议的了解。...

    人人都玩开心网 Ext+JS+Android+SSH整合开发Web与移动SNS源码 1

    Android SDK提供了开发环境和工具,开发者可以使用Java语言编写应用,并通过Android Studio进行编译和调试。 结合这些技术,"人人都玩开心网"实现了Web与移动平台的无缝集成。在Web端,Ext JS确保了用户界面的流畅...

    嘀咕客户端android源代码,可学习参考

    今天我们将探讨的是一个名为“嘀咕客户端”的Android源代码,它为我们提供了一个宝贵的参考资料,特别是对于那些希望深入理解Android应用开发,或者想要构建社交网络服务(SNS)应用的开发者来说。 “嘀咕客户端”...

    大话企业级android开发全集(带二级书签%2C共4.pdf

    - 提供一站式的解决方案,包括Android客户端和服务端开发,服务端可采用JavaEE或LAMP技术栈。 - 为企业提供Android培训服务。 #### 四、关于Android的理解 文档通过问答的形式,深入浅出地介绍了Android的概念和...

    SNS驴友系统

    总的来说,"SNS驴友系统"项目涵盖了Android开发的众多关键技术和最佳实践,包括服务器端架构设计、数据库管理、客户端UI设计、网络通信、数据模型、推送通知、地图服务以及性能优化。深入研究这个项目,不仅可以提升...

    Android-轻境界采用KotlinSpringBootJavaScript构建的SNS社区

    【Android开发-Kotlin开发】 在Android开发领域,Kotlin已经成为主流的编程语言,以其简洁、安全和富有表现力的语法深受开发者喜爱。本项目“轻境界”充分利用了Kotlin的优势,构建了一个现代化的社交网络服务(SNS...

    AWS sdk for android

    AWS SDK for Android是亚马逊Web服务(AWS)为Android开发者提供的官方开发工具包,它允许开发者轻松地在Android应用程序中集成AWS服务。这个SDK提供了丰富的库,使得开发者可以访问AWS的各种云服务,包括存储、计算...

    android简历怎么写项目经验范文.pdf

    在撰写Android简历时,项目经验部分是展示个人技能和实践经验的关键。以下是一些关于如何有效书写项目经验的建议,以及从提供的内容中提取的关键知识点: 1. **项目名称与公司背景**: - 强调项目的创新性和独特性...

    人人都玩开心网•Ext+JS部分代码

    2. **Web与移动SNS开发**:社交网络服务(SNS)的开发涵盖了Web和移动两个领域,意味着该代码不仅包含传统的Web页面,还有适应不同移动设备(如Android)的应用程序,这需要对响应式设计和跨平台开发有深入理解。...

    开源社区系统--近乎(spacebuilder)v4.1

    采用原生Android开发技术,继承了业内同类流行APP的操作习惯。简约的操作界面、舒适的阅读感受、便捷的操作方式为用户带来流畅的用户体验。包括消息实时推送、微博、动态、博文/帖子/图片的浏览、评论/回复等互动...

    陌陌安卓完整源码

    陌陌,作为一款知名的社交网络服务(SNS)应用,其安卓版本的源码具有很高的学习价值,尤其是对于想要深入理解移动应用开发、社交网络功能实现以及XMPP协议的开发者而言。在这里,我们将探讨陌陌安卓完整源码中的...

    记事狗微博系统 4.7.4 Build 20140922 UTF8.zip

    记事狗微博系统采用php mysql开发并开源发布,可承载千万级用户,其支持Wap、3G、Android客户端、iphone客户端、短信、微信等多种方式发布内容,并可选择同步到主流的微博平台(也支持微博帐户登录),内置的插件和...

    AmazingFriends

    5. **跨平台兼容**:考虑到亚马逊应用商店的存在,开发团队必须确保应用能在非Google Play环境下的Android设备上运行。这涉及对不同Android版本和设备的适配测试,以及遵循亚马逊的开发指南。 6. **安全性与隐私...

    Datingapp

    Java中的JAX-RS规范用于创建RESTful Web服务,使得客户端(如Android或iOS应用)能够通过HTTP协议与后端服务器进行交互。"Datingapp"可能使用JSON作为数据交换格式,提供注册、登录、匹配、消息推送等接口。 4. **...

Global site tag (gtag.js) - Google Analytics