![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
安卓入门
文章平均质量分 69
youaresherlock
江湖人称狗哥!
展开
-
安卓开发之调用摄像头
作者:郭霖最近一直在学习安卓开发,却从来也没有做过相应的记录,下面我们要介绍的时候运用手机多媒体资源之手机摄像头的调用首先我们创建一个CameraAlbumTest项目,然后修改activity_main.xml中的代码 我们就简单加入一个按钮,一个图像控件,然后使用线性布局垂直分布,图像居中<?xml version="1.0" encoding="utf-8"?><Line...原创 2018-04-07 20:14:51 · 11332 阅读 · 4 评论 -
安卓下载实例
作者:郭霖老大这是郭霖老大的服务知识实战代码想要动手实战的话可以看看下面知识:异步消息处理机制 AsyncTask用法 如何定义服务 活动与服务的通信步骤: 1.定义一个Interface类DownloadListener可以在Download中根据下载任务的结果进行UI更新操作 2.定义一个下载任务类DownloadTask继承AsynTask类,然后重写doInBackground...转载 2018-04-18 09:44:34 · 405 阅读 · 0 评论 -
活动的启动模式
安卓开发面试中经常会被问到活动的启动模式,虽然是非常基础的问题,但是一段时间不接触的话,真的很难记住。因此这里做一个简单的整理,以便大家迅速可以回忆起来。活动的状态:运行:处于栈顶 暂停:不处于栈顶,但可见停止:不处于栈顶,不可见销毁:不在栈中活动的启动模式:一共有四种:Standard singleTop singleTask singInstance我们通过在Androidmanifest....原创 2018-04-13 09:05:38 · 156 阅读 · 0 评论 -
安卓开发Context.getExternalCacheDir()和Context.getExternalFilesDir()
作者: jaycee110905应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的。大部分应用是直接在SDCard的根目录下创建一个文件夹,然后把数据保存在该文件夹中。这样当该应用被卸载后,这些数据还保留在SDCard中,留下了垃圾数据。如果你想让你的应用被卸载后,与该应用相关的数据也清除掉,该怎么办呢?通过Context.getExternalFil...转载 2018-04-07 09:36:22 · 850 阅读 · 0 评论 -
安卓开发设置全屏
设置全屏的时候我们会在manifest中设置android:theme="@android:style/Theme.Light.NoTitleBar.Fullscreen"然后程序可能会崩溃,原因很简单,继承自Activity就好了,继承AppCompatActivity自己就要写主题了我们可以在res/styles.xml中设置一个新的全屏主题<resources> <...原创 2018-04-30 09:56:22 · 2231 阅读 · 0 评论 -
安卓开发之解析XML和JSON格式数据
参考书作者:郭霖我会将所学的知识简单记录下来以便于大家快速查阅资料,另外郭霖大侠没有提到的东西我也会作出补充我们通常情况下,每个需要访问网络的应用程序都会有一个自己的服务器,我们可以向服务器提交数据,也可以从服务器上获取数据。在网络上传输数据时最常用的格式用两种:XML和JSON解析XML格式数据我们就搭建一个最简单的Web服务器,在这个服务器上提供一段XML文本,然后我们程序访问这个服务器,再对...原创 2018-04-14 09:45:51 · 2429 阅读 · 0 评论 -
安卓开发中修改EditText控件的光标位置
修改光标位置我们在实际的开发中,通常使用EditText获取用户的输入,然后判断是否为空以及合法性,之后做出一些列的逻辑操作,但是这时候光标的默认位置是在开始位置而不是输入字符串的最后面,这就影响了美感。查看官方文档之后可以看到函数原型是 void setSelection(int index) 可以来通知游标的偏移量我们可以使用setSelection()方法来修改光标的位置String tex...原创 2018-05-09 11:36:07 · 1418 阅读 · 1 评论 -
安卓事件分发机制
Android事件分发机制概述:Android事件分发机制是Android开发者必须要了解的基础1.事件分发的对象是谁? 点击事件(Touch事件) 当用户触摸屏幕时(View或ViewGroup派生的控件),将产生点击事件(Touch事件) Touch事件的相关细节(发生触摸的位置、时间等)被封装成MotionEvent对象事件类型分为四种: MotionEvent.ACTION_DOWN 按下...原创 2018-05-17 20:49:20 · 137 阅读 · 0 评论 -
安卓SharedPreferences存储Editor对象apply和commit方法区别
我最近在做个简单的项目,需要用到SharedPreferences的封装,但是提交数据保存成xml文件的时候对apply()和commit()方法产生了疑惑,不知道这两者的区别,这里我特意总结了一下工具类的封装-SharedPreferences封装Android数据四种存储方式SharedPreferences(小数据存储的时候优先使用) SQLite,ContentProvider和File(...原创 2018-04-28 09:12:53 · 1025 阅读 · 0 评论 -
什么是ORM对象关系映射?
作者:郭霖 第一行代码AndroidStudio开发工具书是o/r mapping 就是对象关系映射。详细一点,是 面向对象编程中的 对象(Object)和关系数据库的 关系(Relation) 的一个映射(Mapping)。产生的原因是因为软件开发已经是面向对象的了。 所有的值,操作都是基于对象的概念。而数据库还是关系数据库。记录的存储还是一条一条的。为了在逻辑上使得软件开...转载 2018-03-29 08:55:37 · 1419 阅读 · 0 评论 -
HttpURLConnection与OkHttp的使用
作者:郭霖自从安卓6.0之后,HttpClient的功能被完全移除了,标志着此功能被正式启用,我们使用官方推荐的HttpURLConnection获取HttpURLConnection实例new出一个URL对象,传入目标的网络地址,然后调用openConnection()方法即可设置HTTP请求所使用的方法常用的方法主要有两个:GET和POST。GET表示希望从服务器那里获取数据,POST则表示希...原创 2018-04-09 22:52:44 · 9086 阅读 · 0 评论 -
Android开发中移动游标遍历Cursor的所有行
我们在安卓开发数据持久化存储中的SQLite数据库存储或者是内容提供器访问应用程序的数据的时候免不了使用Cursor来读取表中的数据Cursor是什么? SQL的游标是一种临时的数据库对象,即可以用来存放在数据表中的数据行副本,也可以指向存储在数据库中的数据行的指针,游标的一个常见的用途就是保存查询结果,以便以后使用。关于SQLiteDatabase帮助类对数据库的升级创建和LitePal开...原创 2018-04-08 10:45:19 · 5563 阅读 · 0 评论 -
安卓运行时权限
作者:June的技术总结店 这个是郭霖书上的,我这里总结一个非常重要的东西,因为有时候我也真的记不住Android为保护用户安全和隐私,在Android6.0系统中引入了运行时权限这个功能,用户不需要在安装软件时一次性授权所有申请的权限,而是可以在软件使用过程中再对某一项权限申请进行授权。 Android在6.0系统中把所有权限分为3类,一类是普通权限,一类是危险权限,还有一类是特殊权限,...转载 2018-04-08 10:58:36 · 293 阅读 · 0 评论 -
@TargetAPI使用和版本判断实现高低API版本兼容
安卓开发中,在低版本SDK使用高版本的API会报错。一边处理方法是换一种实现方法,或者在高版本SDK中使用高版本API,低版本SDK中使用效果可能会差点的折中方案step1:在使用了高版本API的方法前面加一个@TargetApi(Api level)step2:在代码上用版本判断来控制不同版本使用不同的代码 //判断手机系统版本号 if (Build....原创 2018-04-08 11:06:22 · 2136 阅读 · 0 评论 -
安卓开发之从照片中选择照片
大家可以看看android 系统相册调用,各方式返回的URI总结这篇文章作者:青春无悔-新歌这里我要给大家说的是系统相册调用,这个是从我们另一片文章基础上进行修改的点击打开链接安卓开发之调用摄像头下面直接上代码先修改activity_main.xml文件,增加一个按钮<?xml version="1.0" encoding="utf-8"?><LinearLayout xmln...转载 2018-04-08 20:07:53 · 608 阅读 · 0 评论 -
安卓开发之播放音频
Android中播放音频文件一般都是使用MediaPlayer类来实现的,它对多种格式的音频文件提供了非常全面的控制方法,从而使得播放音乐的工作变得十分简单。首先创建一个MediaPlayer对象->调用setDataSource()方法来设置音频文件的路径->调用prepare()方法使MediaPlayer进入到准备状态->调用start()方法可以播放音乐,pause()方...原创 2018-04-08 22:30:56 · 3798 阅读 · 0 评论 -
安卓开发之播放视频
主要是使用VideoView类来实现的,这个类将视频的显示和控制集于一身,使得我们仅仅借助它就可以完成一个简易的视频播放器方法名 功能描述setVideoPath() 设置要播放的视频文件的位置start() 开始或继续播放视频pause() 暂停播放视频resum() 将视频重头开始播放s...转载 2018-04-08 23:47:41 · 3126 阅读 · 0 评论 -
安卓开发之多线程编程和在子线程中更新UI
参考资料:郭霖第一行代码及网上公开资料这里只是简单的介绍一下java多线程的知识,然后主要讲解的是安卓如何在子线程中更新UI当我们需要执行一些耗时操作,比如说发起一条网络请求,考虑到网速等其他原因,服务器未必会立刻响应我们的请求,如果不将这类操作放在子线程里去执行,就会导致主线程被阻塞住,从而影响用户对软件的正常使用。1.继承Thread类class MyThread extends Thread...原创 2018-04-14 18:54:01 · 528 阅读 · 0 评论 -
安卓开发WebView简单用法
作者:郭霖第一行代码(Android Studio开发)我大概半年前看过图解HTTP这本书,写的非常好,这里推荐大家也看一下。最近我也准备温故而知新,从新花一些时间来重读这本书。我们可能会碰到一些比较特殊的需求,比如在应用程序里展示一些网页,加载和显示网页通常都是浏览器的任务,Android提供了一个WebView控件,借助它我们可以在自己的应用程序里嵌入一个浏览器,从而非常轻松地展示各种各样的网...转载 2018-04-09 20:19:34 · 385 阅读 · 0 评论 -
安卓开发封装SharedPreferences类
安卓开发中会常常使用到SharedPreferences存储方式来存储一些控件的状态或者是密码信息,因此我们就需要对SharedPreferences类进行封装,一劳永逸,也可以简化代码,使代码变得简洁。工具类的封装-SharedPreferences封装下面是代码package com.gougoucompany.clarence.smartbutler.utils;import andro...原创 2018-04-28 11:44:23 · 478 阅读 · 0 评论