Android
文章平均质量分 73
Scott-Fu
这个作者很懒,什么都没留下…
展开
-
Android 中 Context 详解
本文是我读《Android内核剖析》第7章 后形成的读书笔记 ,在此向欲了解Android框架的书籍推荐此书。 本文非原创 转载自点击打开链接,支持原创。 大家好, 今天给大家介绍下我们在应用开发中最熟悉而陌生的朋友-----Context类 ,说它熟悉,是应为我们在开发中 时刻的在与它打交道,例如:Service、Broadcast转载 2016-08-06 14:51:42 · 300 阅读 · 0 评论 -
异步消息处理机制及AsyncTask的使用
异步消息处理机制及AsyncTask的使用在子线程中更新UI AsyncTask的使用在子线程中更新UI我们都知道,android 的 UI 只可以在主线程中更新,否则就会出现异常。但是有些时候,我们必须在子线程里去执行一些任务,然后根据任务的执行结果更新相应的UI控件。对于这种情况,Android 提供了一套异步消息处理机制的使用。 布局代码:<?xml version="1.0" encod原创 2016-07-24 12:13:03 · 606 阅读 · 0 评论 -
Notification 用法
Notification 用法版本 Android Studio 1.5.1 API 14 -23notification 的新旧用法使用 4.0 的时候要实现方法setLatestEventInfo的时候根本找不到这个方法,在查找官方文档之后再3.0之后系统中的Notification的setLatestEventInfo已经不推荐使用了,所以用Notification.Builder 来代替原创 2016-07-21 15:02:25 · 798 阅读 · 0 评论 -
内容提供器 Content Provider (一)
内容提供器 Content Provider (一)案例获取手机联系人版本:Android studio 1.5.1获取手机联系人案例 ContentResolver 权限申明获取手机联系人案例做一个Listview 用来显示手机里的联系人。 这个还是很简单的<LinearLayout xmlns:android="http://schemas.android.com/apk/res/andr原创 2016-07-20 23:08:15 · 655 阅读 · 0 评论 -
Gradle 下载及代理设置
Gradle 下载及代理设置版本 Android Studio 1.5.1Gradle 下载 代理设置Gradle 下载在新建项目或者打开项目的时候一直停留在building gradle project info 怎么解决呢,我电脑的系统是win10 64位打开C:\Users\<你电脑的用户名>.gradle\wrapper\dists查看里面的gradle 版本(如下图),然后我们手动去下原创 2016-07-18 22:16:03 · 6582 阅读 · 0 评论 -
Android Studio SQLite数据库应用(二)
Android Studio SQLite数据库应用(二)版本 Android Studio 1.5.1事务处理 升级数据库的最佳写法哈哈刚刚写完 SQLite数据库应用(一),接着把后面的写完吧;事务处理所谓事务处理就是,保证在完成一系列操作的时候,要么全部完成要么一个都完成不了。我还用之前的代码作为案例;现在我要把Book表中的数据都删掉,让后写入新的数据;如果在这个操作过程中出现了异常,那么原创 2016-07-15 15:53:24 · 5388 阅读 · 0 评论 -
Android Studio SQLite数据库应用(一)
Android Studio SQLite数据库应用(一)版本:Android Studio 1.5.1创建数据库升级数据库CRUD数据操作 SQLite (英语发音:/ˌɛskjuːɛlˈlaɪt/2 or 英语发音:/ˈsiːkwəl.laɪt/3)是遵守ACID的关系数据库管理系统,它包含在一个相对小的C程序库中。与许多其它数据库管理系统不同,SQLite不是一个原创 2016-07-14 00:10:30 · 66809 阅读 · 11 评论 -
Android Ormlite 入门
Android ORMLite 入门为了方便项目中数据库的使用,提高开发效率 ,决定引入ORM框架。 先看看ORM是啥。。。 ORM框架 对象-关系映射(OBJECT/RELATIONALMAPPING,简称ORM),是随着面向对象的软件开发方法发展而产生的。用来把对象模型表示的对象映射到基于S Q L 的关系模型数据库结构中去。这样,我们在具体的操作实体对象的时候,就不需要再去和复杂的 S原创 2016-12-27 23:20:06 · 401 阅读 · 0 评论 -
Android Gradle 配置详解(demo)
Android Gradle 配置详解(demo)demo地址 ScottFu-GitHubAndroid 官方gradle用户指南(Gradle Plugin User Guide)Android Gradle 用法根目录下的 setting.gradle 当中主要用来include 子模块 include ‘:app’根目录下的 build.gradle 包含一些通用的配置,这些配置可以在原创 2017-03-09 22:10:45 · 612 阅读 · 0 评论 -
Eclipse中Gradle构建工程(方便迁移到AS)
Eclipse中Gradle构建工程(方便迁移到AS)很早之前写的文章,为公司项目从Eclipse转到AS做准备的安装插件: Help-Install new software-add gradle - http://dist.springsource.com/release/TOOLS/gradle 等待安装结束。(需翻墙) 安装完之后下载下载gradle http://servi原创 2017-03-09 22:31:16 · 712 阅读 · 0 评论 -
Eclipse 工程迁移到 AS 遇到的一些问题
Eclipse 工程迁移到 AS 遇到的一些问题收拾收拾以前的一些笔记分享给大家 这是今天晚上的第三篇。首先export导出选择生成gradle 文件 在工程根目录 .gitignore 中配置提交过程中需要屏蔽的文件 。可以参考 之前的博文 demo中有详细介绍Android Gradle 用法下一步 然后右键工程项目 点击Gradle – refresh all ok修改gradle原创 2017-03-09 22:49:22 · 759 阅读 · 0 评论 -
Android 混淆打包
Android 混淆打包ProGuard 官网Android 官方文档app上线有一段时间了 ,没事反编译一下,一看简直跟源码一样,是该考虑考虑安全问题了。研究一下Android 混淆处理。准备工作: 在混淆之前可以看看Android 反编译技术这篇博文怎么把一个apk 完整的反编译,熟悉一下就可以了,我们这里没必要搞那么复杂,google 早就为我们准备好了方便查看apk 结构的工具 用于查看原创 2017-03-28 22:11:13 · 450 阅读 · 0 评论 -
Git 忽略文件名大小写
Git 忽略文件名大小写更改文件名大小写后,提交到仓库,pull下来后出现如下问题。 原因是在git提交的时候忽略了文件名的大小写。解决办法:git congfig –get core.ignorecase 查看本地仓库git忽略大小写是打开还是关闭。 $ git config –get core.ignorecase truetrue 则会忽略文件名的大小写 可以将之设置为fa原创 2017-03-13 19:31:37 · 16536 阅读 · 0 评论 -
Android 启动页面优化 (白屏 、等待的问题)
Android 启动优化android 启动优化Material Design 启动屏幕问题1:点击应用图标后等待时间较长 原因:在应用第一次启动(系统杀掉应用的进程的时候)到Activity的onCreate需要一段时间,具体的流程如下 开始加载并启动应用; 应用启动后,显示一个空白的启动窗口; 创建应用进程信息;初始化应用中的对象 (比如 Application 中的工作); 启动原创 2017-04-13 21:46:03 · 3917 阅读 · 0 评论 -
Genymotion 虚拟机下载、安装、测试
Genymoation虚拟机下载、安装、测试下载安装 测试我一般都是用真机调试,为了更好的做笔记,还是用虚拟机调试比较方便截图。当然Android Studio 自带虚拟机调试。但是速度太慢了。这里我就给大家整理一下当前最好用,速度跟真机差不多。大家到官方下需要翻墙什么的,我直接整理了一下放百度云盘了 链接:http://pan.baidu.com/s/1nvMZMTN 密码:jwze点击 ge原创 2016-07-22 00:13:24 · 2666 阅读 · 1 评论 -
Android 中横屏竖屏设置
今天遇到一个问题,我所有的activity都是继承自BaseActivity, 在BaseActivity 中的onCreate 中设置了setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);竖屏。 但是我现在用的这个Activity中要全屏播放视频,一种是手机旋转,一种是强制设置横屏。这里就对Android 中横竖屏的原创 2017-01-05 22:15:14 · 1023 阅读 · 0 评论 -
Mac 下git&github 相关配置
去官网下载=最新版本git — git最新版本 在github上注册免费账户—github免费账户安装git&生成.ssh 文件Mac 上的安装很简单 直接拖到application应用程序就可以了。 主要是配置问题。 打开终端 Terminal 输入$cd ~/.ssh 如果存在就会直接跳转到文件目录。 不存在就直接创建 ssh-keygen -trsa -C ***@gmail.原创 2016-12-27 10:49:02 · 2767 阅读 · 0 评论 -
Mac 中eclipse 遇到的问题及简单设置
Mac 中eclipse 遇到的问题及简单设置找不到Preferences在eclipse window 下未找到 Preferences 配置窗口。原来换地方了,点击左上角eclipse 选择偏好设置,出现的窗口就是Preferences。 Android Studio 也是一样。代码提示preferences->Java->Editor->Content Assist 再右下角Auto a原创 2016-12-16 16:27:28 · 1888 阅读 · 0 评论 -
Android Service 服务的基本用法
Service 服务的基本用法创建&绑定服务 活动与服务进行通信创建&绑定服务活动与服务进行通信创建四个按钮:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.a原创 2016-07-24 13:36:57 · 643 阅读 · 0 评论 -
Android Service使用技巧
Android Service 使用技巧使用前台服务 使用IntentService使用前台服务前台服务与普通服务的区别。普通服务在当系统出现内存不足的情况时,就有可能会回收掉正在后台运行的服务,而前台服务会一直保持运行状态,而且会在系统的状态栏一直显示一个正在运行的图标。下拉状态栏后可以看到详细的信息。package com.example.scott.frontservice;import a原创 2016-07-25 08:31:51 · 631 阅读 · 0 评论 -
Android Studio 后台执行的定时操作
Android Studio 后台执行的定时操作后台定时操作案例后台定时操作案例执行一个后台10s的定时并在日志中输出package com.example.scott.servicebestpractice;//这里一定载入java.util包import java.util.Date;import android.app.AlarmManager;import android.app.P原创 2016-07-25 09:10:30 · 5068 阅读 · 0 评论 -
理解阻塞非阻塞与同步异步的区别
理解阻塞非阻塞与同步异步的区别论坛看到有人问阻塞非阻塞与同步异步的区别,想想我也不是很清楚,说不出个所以然,所以就整理出了这篇博文。1.同步和异步——消息通信机制(关注的仅仅是如何通知消息,而对于消息的处理并不关心);同步,就是在调用者发起调用的时候,会一直等待调用结果; 举个通俗的例子:去餐厅吃饭的时候,人有点多,你点好了餐,然后就在那边等,等到厨师为你准备好了再找个位子吃饭。 异步,就是在调原创 2016-08-11 17:16:58 · 448 阅读 · 0 评论 -
Android 进程与线程基础知识
本文介绍Android平台中进程与线程的基本知识。 很早的时候就想介绍一下Android中的进程和线程,但由于其他的事情一直给耽搁了,直到现在才能和大家一起分享下。 1.Android进程基本知识: 我们先来了解下Android中的进程基本知识。 当一个程序第一次启动的时候,Android会启动一个LINUX进程和一个主线程。默认的情况下,所有该程序的组件转载 2016-08-13 08:53:10 · 317 阅读 · 0 评论 -
RelativeLayout
RelativeLayout 中 android:layout_gravity=”center”是无效的 用android:layout_centerInParent=”true”实现原创 2016-08-26 13:06:25 · 490 阅读 · 0 评论 -
Android 进程与线程
Android 进程与线程进程和线程进程的地址空间边界进程边界的安全围栏:Crash的不可扩延性进程边界的安全围栏:全局数据和服务的不可访问性进程:可执行文件的活动的表现,是对可执行的文件的承载 线程:CPU的调度单位,并发的执行序列,进程的多管齐下以前的那种单核的功能机,运行的时候就是只能执行某一个功能是单个进程的运行,在那个时候 进程是CPU的调度单位。现在 智能机 多核多线程 一原创 2016-08-14 21:39:19 · 275 阅读 · 0 评论 -
Android 6.0权限详解及封装
Android 6.0权限详解及封装Android Studio 2.2.2 sdk 25.0.1前几天看了郭神对Android 6.0 之后的权限讲解,今天把它整理了一些写了个demo 分享给大家。 注意点: 1、如果在build.gradle 中设置targetSdkVersion 为21 表示兼容到5.0的版本,则在程序运行时不需要进行权限的判断,因为只有在6.0以后才需要对运行时的权限原创 2017-01-02 18:15:15 · 385 阅读 · 0 评论 -
Android SDK Manager 详细讲解
本文转自 好友Kerwin555 http://blog.csdn.net/u011026779/article/details/53178602做Android开发时,免不了使用Android SDK Manager,安装需要的sdk版本、buildTools版本等等。下图展示了2016.11.16号Android SDK Manager所有的package。很多Android开发转载 2016-12-25 21:08:33 · 2163 阅读 · 0 评论 -
带你从源码看Android Handler 异步消息处理机制完全解析
带你从源码看Android Handler 异步消息处理机制完全解析android studio 2.2.2 SDK版本 25.0.3 在2.2.2的版本中修改代码调试 真的是超级快,特别爽 两三秒就运行了。 写了一个小demo 分别在主线程 子线程中都创建了handler 最后都实现textView 内容的更新。 上代码:import android.os.Handler;impo原创 2016-12-22 09:38:40 · 420 阅读 · 0 评论 -
Android Studio &Eclipse adb wifi 真机调试
Android Studio &Eclipse adb wifi 真机调试以前eclipse 实现无线调试 手机需要root 需要装软件配置的工具。然后通过命令行设置adb连接ip 还有端口。 首先保证手机跟PC在同一个Wi-Fi网络下, Mac 下 Android Studio —Preferences — Plugins —Browse Repositories 然后搜索 ADB WIFI原创 2016-12-16 17:17:45 · 779 阅读 · 0 评论 -
Android屏幕适配(整理)
一下内容均来自网络整理:http://blog.csdn.net/zhaokaiqiang1992/article/details/45419023http://www.jianshu.com/p/ec5a1a30694bhttps://developer.android.com/training/multiscreen/index.html转载 2016-11-04 09:30:31 · 594 阅读 · 0 评论 -
Android软键盘总结
今天做优化的时候遇到一个软键盘的问题。 在聊天页面,输入文本后点击发送后 要固定软键盘。 做一下总结: View view = getWindow().peekDecorView(); if (view != null) { InputMethodManager inputmanger = (InputMethodMan原创 2016-10-23 23:21:06 · 430 阅读 · 0 评论 -
提升架构能力
提升架构能力摘自@EasyDRYDRY是Don’t Repeat Yourself的缩写,翻译过来就是「不做重复事」。 这正是⼀个逼近软件本质的原则,它指导我们把经常使⽤的功能抽象成库,把重复出现的代码重构为可重⽤的框架模块。如果你⽤DRY来要求⾃⼰,很快你就会发现⾃⼰抽象和架构能⼒的飙升。半自动化但是我们活在现实世界,所以我们不可能把所有的事情都给⾃动化了,有⼈类尤其是⼥⼈参与的活动,往往会毫⽆转载 2016-08-11 13:37:34 · 1342 阅读 · 0 评论 -
Android Studio 中 Git 应用
Android Studio 中 Git 应用先谈谈我们为什么用代码管理的软件。在说说Git 与 GitHub 的区别在以前我还没有开始想做Android的时候,我是一个单片机的开发者,写一些硬件底层的某些功能,当时我是这样做的,今天实现了项目的基本功能开发1.0版本开发完成,我就会新建一个文件夹保存起来;下次增加功能开发2.0的时候;我先把1.0的复制一份出来在做更改。这样老的硬件运行1.0版本原创 2016-08-08 23:22:39 · 1032 阅读 · 1 评论 -
android中 finish()、onDestory()与system.exit(0)的区别
android中 finish()、onDestory()与system.exit(0)的区别finish() 说简单点当你在一个Activity中启动另一个Activity的时候加上finish();之后你按手机上的返回键的时候是不会回到这个Activity的。当你调用此方法的时候,系统会将最上面的Activity移出栈,就是将当前的Activity移出。但是并没有其占用的内存,何时释放由Andr原创 2016-08-04 23:20:21 · 864 阅读 · 0 评论 -
android:layout_gravity 与 gravity的属性的区别
android:layout_gravity 与 gravity的属性的区别举个例子: 做这样的一个效果:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent"原创 2016-08-04 22:44:05 · 1520 阅读 · 0 评论 -
Android Studio 使用技巧(每日一更)
Android Studio 使用技巧(每日一更)版本 Android Studio 1.5.1Android Studio simplifies your work with colors in CSS files. 在颜色样式表上简化你的工作 The color properties have the icons of the corresponding color in the lef原创 2016-07-26 18:47:42 · 5154 阅读 · 1 评论 -
Apache 局域网 配置
Apache 局域网 配置之前装了Apache 之后只能在本地测试访问,在浏览器中输入127.0.0.1或localhost 即可访问。先解释一下吧,127.0.0.1是本机的回环地址,意思是访问自己本机的,是为开发者测试设计的。localhost是127.0.0.1的域名。在windows系统C:\windows\system32\drivers\etc\下的hosts文件里,用记事本打开可以看到原创 2016-08-01 21:36:13 · 827 阅读 · 0 评论 -
Android Studio API23 HttpClient解决办法
Android Studio API23 HttpClientAndroid Studio 1.5.1 gradle23.0.3官方的说法是在API23 之后就移除了HttpClient。在网上找了几个解决方案,就是降级到API21,这个我不喜欢(所以没测试) 另一种办法就是。。。。在图中的目录下可以找到这个文件 然后在build,gradle(module:app)中添加useLibrar原创 2016-07-27 17:17:29 · 763 阅读 · 0 评论 -
Android Fragment 懒加载
Android Fragment 懒加载LazyLoaderFragment源码地址效果图:ViewPager 的setOffscreenPageLimit() 默认为1 即加载第一个fragment的时候 会预加载第二个。使用懒加载只有在当前fragment显示的时候才会加载setUserVisibleHint(boolean isVisibleToUser) ...原创 2018-02-27 15:44:27 · 364 阅读 · 0 评论