摘要: 今天想学习一下开源中国Android客户端的app源码,源码的Git地址:http://git.oschina.net/oschina/android-app,如下图所示: 由于Master主分支上没有放置源码,因此需要切换到指定的Tag分支去查看,如下图所示: 切换到v2.8.1这个分支就可以看到 阅读全文
posted @ 2017-03-18 00:27 ButterflyGirl 阅读(408790) 评论(0) 推荐(25) 编辑
摘要: 一、基本概念 数据库最经典的四个操作 添加、删除、修改、查找,在处理大量数据的时候使用数据库可以帮我们迅速定位当前须要处理的数据,举个例子 好比现在要实现一个搜索功能 用数据库的话只须要其中一个搜索条件 一个数据库语句就可以迅速的在N条数据中找到我们需要的数据,如果不使用数据库那么查找起来会非常麻烦 阅读全文
posted @ 2017-03-18 00:14 ButterflyGirl 阅读(714) 评论(0) 推荐(0) 编辑
摘要: 一、基本概念 handler通俗一点讲就是用来在各个线程之间发送数据的处理对象。在任何线程中,只要获得了另一个线程的handler,则可以通过 handler.sendMessage(message)方法向那个线程发送数据。基于这个机制,我们在处理多线程的时候可以新建一个thread,这个threa 阅读全文
posted @ 2017-03-16 23:24 ButterflyGirl 阅读(486) 评论(0) 推荐(0) 编辑
摘要: 一、基本概念 本文主要介绍的是Android中很重要也最为复杂的媒体播放器(MediaPlayer)部分的架构。Android的MediaPlayer包含了Audio和video的播放功能,在Android的界面上,Music和Video两个应用程序都是调用MediaPlayer实现的。 Media 阅读全文
posted @ 2017-03-16 21:18 ButterflyGirl 阅读(3162) 评论(1) 推荐(0) 编辑
摘要: 一、Notification基本概念 Notification是一种具有全局效果的通知,它展示在屏幕的顶端,首先会表现为一个图标的形式,当用户向下滑动的时候,展示出通知具体的内容。我们在用手机的时候,如果来了短信,而我们没有点击查看的话,在手机的最上边的状态栏里有一个短信的小图标提示,这个提示效果就 阅读全文
posted @ 2017-03-12 19:19 ButterflyGirl 阅读(8343) 评论(0) 推荐(1) 编辑
摘要: 一、基本概念 实现一个Item的多布局。像我们经常在用的各种即时通讯工具,QQ、微信等,假设他们的会话界面是ListView实现的,那么ListView就有多种Item布局,要实现ListView里面有多种Item,就要重写适配器的两个方法getViewTypeCount()和getItemView 阅读全文
posted @ 2017-03-11 19:19 ButterflyGirl 阅读(1793) 评论(0) 推荐(0) 编辑
摘要: 一、错误描述 今天在使用AndroidStudio运行项目时出现了一个Unsupported method: AndroidProject.getPluginGeneration()错误,如下图所示: 二、解决办法 第一次遇到这个错误,上网找了一下解决办法,解决办法如下: 关掉instant run 阅读全文
posted @ 2017-03-11 12:19 ButterflyGirl 阅读(4828) 评论(1) 推荐(0) 编辑
摘要: 一、ListView的基本概念 在Android所有常用的原生控件当中,用法最复杂的应该就是ListView了,它专门用于处理那种内容元素很多,手机屏幕无法展示出所有内容的情况。ListView可以使用列表的形式来展示内容,超出屏幕部分的内容只需要通过手指滑动就可以移动到屏幕内了。即使在ListVi 阅读全文
posted @ 2017-03-09 21:39 ButterflyGirl 阅读(548) 评论(0) 推荐(0) 编辑
摘要: 一.BaseAdapter的基本概念 对于Android程序员来说,BaseAdapter肯定不会陌生,灵活而优雅是BaseAdapter最大的特点。开发者可以通过构造BaseAdapter并搭载到ListView或者GridView这类多控件布局上面,实现软件所需要的布局效果。同时,BaseAda 阅读全文
posted @ 2017-03-08 13:15 ButterflyGirl 阅读(999) 评论(2) 推荐(1) 编辑
摘要: 一.内容提供器基本概念 内容提供器主要用于在不同的应用程序之间实现数据共享的功能,它提供了一套完整的机制,允许一个程序访问另一个程序中的数据,同时还能保证被访数据的安全性。详细资料请看下图: 二.示例代码 2.1 读取系统联系人 其实很多时候我们用到ContentProvider并不是自己暴露自己的 阅读全文
posted @ 2017-03-08 13:14 ButterflyGirl 阅读(396) 评论(0) 推荐(0) 编辑