Android
文章平均质量分 58
学优
这个作者很懒,什么都没留下…
展开
-
Android - 蓝牙开发
文章目录科普SIG类型制式编程Classic BluetoothBluetooth Low Energy蓝牙的UUID是什么?有什么用?科普https://zh.wikipedia.org/wiki/%E8%97%8D%E7%89%99蓝牙(英语:Bluetooth),一种无线通讯技术标准,用来让固定与移动设备,在短距离间交换资料,以形成个人局域网(PAN)。其使用短波特高频(UHF)无线电波,经由 2.4 至 2.485 GHz 的 ISM(工业、科学、医疗)频段来进行通信。1994 年由电信商原创 2021-08-03 15:51:34 · 11176 阅读 · 2 评论 -
Android 入门宝典 - 资源的引用
R 类将所有资源对应于自身的一个内部类(id、drawable、layout、string)java 中使用资源:R.recourseClass.resourceNamexml 中使用:@recourseClass/resourceName标识符无需在资源中定义,可直接分配:@+id/标识符...原创 2020-04-26 23:18:17 · 617 阅读 · 0 评论 -
Android - Gradle 项目构建
Gradlehttps://en.wikipedia.org/wiki/GradleGradle是一个开源构建自动化系统,它基于Apache Ant和Apache Maven的概念,并引入了一种基于Groovy的领域特定语言(DSL),而不是Apache Maven用于声明项目配置的XML形式。Gradle使用有向无环图(“ DAG”)确定任务可以运行的顺序。Gradle是为多项目构建而...原创 2020-04-13 20:24:48 · 1338 阅读 · 0 评论 -
Android - 权限
权限声明在 AndroidManifest.xml 清单文件中。文件格式如下:<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.boxuegu"> ...原创 2020-04-04 17:30:31 · 323 阅读 · 0 评论 -
Android 插件 - ButterKnife 视图字段和方法的绑定
文章目录引入用法资源绑定activity 资源自定义布局资源简化适配器其他提供的绑定API多个视图绑定列表的操作方法监听器绑定多回调监听器的单绑定可选绑定解绑https://jakewharton.github.io/butterknife/引入Gradle 添加:implementation 'com.jakewharton:butterknife:(insert latest ve...原创 2020-04-04 01:08:58 · 661 阅读 · 0 评论 -
Android - RemoteViews 微件
bitmap 设置图片尺寸,避免 内存溢出 OutOfMemoryError的优化方法原创 2020-04-03 02:00:19 · 396 阅读 · 0 评论 -
Android 开发文档 - 动画
View 动画:创建动画 xml 文件:res/anim/xxx.xml属性动画:xml 定义:res/animator/ 下原创 2020-04-02 01:53:24 · 563 阅读 · 0 评论 -
Android - 黏性滑动容器控件
Scrollerhttps://developer.android.com/reference/android/widget/Scrollerjava.lang.Object ↳ android.widget.Scroller此类封装了滚动。您可以使用滚动条(Scroller或OverScroller)来收集生成滚动动画所需的数据,用来响应一个挥动手势。滚动条会随着时间的推移为您...原创 2020-03-30 00:50:50 · 245 阅读 · 0 评论 -
Android 开发文档 - OpenGL 详解
Android 可通过开放图形库 (OpenGL®)(特别是 OpenGL ES API)来支持高性能 2D 和 3D 图形。OpenGL ES 是 OpenGL 规范的一种形式,适用于嵌入式设备。两个基本类用于通过 OpenGL ES API 来创建和操控图形:GLSurfaceView 和 GLSurfaceView.Renderer。GLSurfaceView此类是一个 View,...原创 2020-03-27 20:43:15 · 1170 阅读 · 0 评论 -
Android - Intent
https://developer.android.com/reference/android/content/Intentjava.lang.Object ↳ android.content.Intent它基本上是一个被动数据结构,其中包含要执行的动作的抽象描述。结构主要属性action:要执行的常规操作,例如ACTION_VIEW,ACTION_EDIT,ACTION_M...原创 2020-03-16 00:35:55 · 542 阅读 · 0 评论 -
Android 入门宝典 - Sqlite 数据库
创建数据库类:必须重写 onCreate 和 onUpgrade 方法。public class MySQLiteOpenHelper extends SQLiteOpenHelper { private static final String CREATE_BOOK = "create table Book (" + "id integer primary...原创 2020-03-12 14:39:47 · 561 阅读 · 0 评论 -
Android 开发实战 - 获取网页数据
使用HttpURLConnection新建 url创建 connection 对象connection 设置请求属性使用字节流读取 connection 的 InputStream使用 StringBuilder 将读取的数据构建成字符串展示关闭操作句柄HttpsURLConnection connection = null;BufferedReader reader = nu...原创 2020-02-03 12:11:07 · 839 阅读 · 0 评论 -
Android 开发实战 - 关闭所有界面功能
编写一个 Activity 收集器,通过此收集器可以对 Activity 进行添加和消除;public class ActivityCollector { public static List<Activity> activities = new ArrayList<>(); public static void addActivity(Activity ac...原创 2020-01-21 23:26:11 · 760 阅读 · 0 评论 -
Android 入门宝典 - ListView & Adapter 列表视图
RecyclerView:AdapterViewHolder:内部类,定义 View 元素,构造时绑定 View 组件onCreateViewHolder:调用此方法构造 ViewHolder,对 ViewHolder 内部的初始化onBindViewHolder:对 ViewHolder 子项进行赋值getItemCount:告诉 RecyclerView 一共有多少子项?能否在 V...原创 2020-04-13 02:38:04 · 720 阅读 · 0 评论 -
Android 入门宝典 - MediaPlayer & VideoView
参考:MediaPlayer详解和使用mMediaPlayer.reset(); // 设置到 Idle(空闲)状态,是未 setDataSource 的状态mMediaPlayer.setDataSource(file.getPath()); // 指定音频文件的路径,设置到 Initialized(初始化)状态——准备状态之前,可以通过 prepare() 或 prepareAsync(...原创 2019-08-27 15:02:00 · 224 阅读 · 0 评论 -
Android 入门宝典 - MVP 模式
Android MVP 十分钟入门!ANDROID MVP 模式 简单易懂的介绍方式MVP架构开发,一篇让你从看懂到会使用原创 2019-09-18 17:18:05 · 119 阅读 · 0 评论 -
Android 入门宝典 - ActionBar 应用
上下文操作模式(ActionMode)用户长按某一元素时出现的浮动菜单,此模式在屏幕顶部栏显示影响所选内容的操作项目,并允许用户选择多项,会直接影响对应的内容。一、为单个视图创建上下文操作模式实现 ActionMode.Callback 接口:回调方法中,您既可以为上下文操作栏指定操作选项(显示内容),又可以响应操作项目的点击事件,还可以处理操作模式的其他生命周期事件。private A...转载 2019-09-26 15:18:32 · 256 阅读 · 0 评论 -
Android 入门宝典 - Activity 工作流程
startActivity 最终调用 startActivityForResultActivityGroup mParent· ActivityGroup 最开始用来在一个界面嵌入多个子 Activity,现在被 Fragment 代替Instrumentation 的 execStartActivity 方法AMSActivityManagerNative.getDefault() ...原创 2019-09-29 17:23:33 · 184 阅读 · 0 评论 -
Android API
API 级别是一个对 Android 平台版本提供的框架 API 修订版进行唯一标识的整数值。平台版本API 级别VERSION_CODE备注Android 7.024N平台亮点Android 6.023M平台亮点Android 5.122LOLLIPOP_MR1平台亮点Android 5.021LOLLIPOPAndroid 4.4W20KITKAT_WATCH仅限 KitKat for We...转载 2019-09-30 11:44:25 · 111 阅读 · 0 评论 -
Android 入门宝典 - Service 启动流程
ContextWrapper.startServicemBase.startServicemBase(Activity 通过 attach 方法关联的 ContextImpl 对象)startServiceCommonActivityManagerNative.getDefault() 返回 IActivityManagerActivityManagerService extends I...原创 2019-10-05 22:06:34 · 112 阅读 · 0 评论 -
Android 入门宝典 - Service 绑定流程
Service 绑定流程ContextWrapper.bindService(桥接模式)· mBase.bindServicemBase(Activity 通过 attach 方法关联的 ContextImpl 对象)@Overridepublic boolean bindService(Intent service, ServiceConnection conn, in...原创 2019-10-07 00:58:59 · 182 阅读 · 0 评论 -
Java - Exception 异常处理
RuntimeException:终止程序异常CheckedException:必须捕获异常异常处理方式:方法返回值定义异常:缺点:强制返回值,不优雅throw 抛出异常:以一个类表示异常,更直观...原创 2019-09-18 00:41:04 · 269 阅读 · 0 评论 -
Android 入门宝典 - 进程间通信 AIDL
AIDL:server:请求抽象成接口,编写aidl接口service 实现接口,开启服务时返回 binder 实例AndroidManifest 配置 service,使其可被访问(自定义 action)client:拷贝 aidl 文件到和 server 相同路径下,使其可以实例接口Intent(action)访问,需要添加包名(setPackage(XXX))通过保留 ...原创 2019-09-17 13:42:55 · 208 阅读 · 0 评论 -
Android 入门宝典 - 控件样式
经常使用的控件属性EditText:设置控件行数(不会随着输入而增加):android:maxLines=“2”(输入栏最多只显示两行)限制输入字符数:android:maxLenght=“20”(最多输入 20 个字符,中文跟英文一样)限制控件长度:android:maxEms=“20”(让 EditText 最多 20Ems 长(Ems为印刷字符计量单位,意为:equal M sh...原创 2019-08-27 15:08:20 · 590 阅读 · 0 评论 -
Java 源码解读 - 观察者模式
JDK 封装好的原生的观察者模式,使用起来很简单,只需要被观察者 extends Observable,使用 addObserver(Observer observer) 添加观察者,使用 setChange() + notifityObservers(Object data) 通知更新观察者 implements Observer,实现 update(Observable observab...原创 2019-08-27 15:06:09 · 99 阅读 · 0 评论 -
Android 入门宝典 - 国际化
开发中所有资源使用(颜色、尺寸、字符串)必须使用资源引用xml 中使用:@strings/app_name代码中使用:getString(R.string.app_name)安卓 APP 在适配时会根据系统语言选择相应的资源文件,所以创建一份固定名称的资源文件夹即可适配不同语言eg 中文 values-zh-rCN原先是这样:配置了系统语言的手机界面是这样:...原创 2019-08-27 15:02:32 · 211 阅读 · 0 评论 -
Android - 小百科
ContextgetSupportFragmentManager:获取应用的 Fragment 管理器,可以访问所有的 FragmentgetContentResolver:内容共享,可对数据进行 CRUD 操作getSystemService:可用以获得 Wifi、窗口、状态栏等服务,进而获得它们的管理器,eg:NotificationManager manager = (Notifica...原创 2019-08-27 15:01:17 · 1171 阅读 · 0 评论 -
Android 入门宝典 - Dialog 对话框
创建 Dialog 实例设置相关参数(标题、消息内容、按键)及属性调用展示方法常用方法:setTitle(“Dialog”):设置标题setMessage("Loading … "):设置消息内容setCancelable(false):设置是否可以点击屏幕取消,设置为 false 用于一些必须立即处理的操作setPositiveButton(CharSequence text,...原创 2019-08-22 01:44:39 · 275 阅读 · 0 评论 -
Java - 建造者模式
建造者模式一、抽象基类通用属性Eg 播放器:启动、暂停、重启、关闭、播放模式、播放列表二、继承类继承抽象基类自有属性Eg 音乐播放器:长度、进度、视图三、抽象Builder对抽象基类属性进行build创建方法create返回build的对象四、具体Builder继承抽象Builder具体的属性赋值五、Director类负责构建基类接收Builder参数使用cons...原创 2019-08-27 15:10:50 · 177 阅读 · 0 评论 -
Android 入门宝典 - 规范
布局:命名:应用布局:activity_NAME.xml样式布局:layout_NAME.xml实现:一、确定位置:特殊要求:居中 center、居下 bottom、居上 top 以及与其他方位的配合布局应用:使用RelativeLayout,对parent:start|left、end|right、top、bottom、center,align(边缘对齐):above、be...原创 2019-08-27 15:13:12 · 92 阅读 · 0 评论 -
Android 入门宝典 - 自定义 View & 测量过程出现的问题
public class CircleView extends View { private int mColor = Color.RED; private int mWidth = 100 * DisplayMetrics.DENSITY_XXHIGH / DisplayMetrics.DENSITY_DEFAULT; private int mHeight = 100 ...原创 2019-09-17 09:30:36 · 609 阅读 · 0 评论 -
Android 入门宝典 - 事件分发机制
事件:MotionEvent,即按下、移动、离开屏幕传递顺序:Activity → Window → View操作:Activity 检测到事件,触发 dispatchTouchEvent 进行事件派发,首先判断 Window 调用 superDispatchTouchEvent(ev) 进行分发的情况,true 则返回 true,表示事件可以处理,否则返回 onTouchEvent(ev) ...原创 2019-09-16 14:25:00 · 286 阅读 · 0 评论 -
Android 入门宝典 - RadioButtion、RadioGroup、CheckBox 选项选择
RadioButton:单选按钮控件文本:android:text=“男”RadioGroup:选项组,可以添加多个选项子控件,对其进行管理,对多个单选按钮有单选作用子控件排布:android:orientation=“horizontal”接口:RadioGroup.OnCheckedChangeListener注册监听:setOnCheckedChangeListener()选项更...原创 2019-09-16 09:00:41 · 279 阅读 · 0 评论 -
Android 开发实战 - 音乐播放器
播放器 1.0基本功能实现:播放列表:生成基本的 Music 类package com.example.playaudiotest.model;public class Music { private int musicId; private String musicName; private String musicWriter; private ...原创 2019-09-18 16:55:39 · 2143 阅读 · 0 评论 -
Android 入门宝典 - Notification 通知相关
常用属性:标题:内容:小图标:状态栏上的图标,没有会出现java.lang.IllegalArgumentException: Invalid notification (no validsmall icon): Notification(channel=null pri=2contentView=com.example.notification/0x109009c vibrate=...原创 2019-08-28 14:24:27 · 491 阅读 · 0 评论 -
Android 入门宝典 - inflate 生成视图 & 动态加载视图
public View inflate(XmlPullParser parser, @Nullable ViewGroup root) { return inflate(parser, root, root != null);}@param attachToRoot Whether the inflated hierarchy should be attached to the root ...原创 2019-08-27 15:20:27 · 630 阅读 · 0 评论 -
Android 入门宝典 - Progress 进度条
布局声明进度条Context 中获取 View进行相关操作常用属性:style="?android:attr/progressBarStyleHorizontal":由圆形进度条变为水平进度条android:max=“100”:设置进度条长度值常用方法:getVisibility():获得可见标志,有 View.VISIBLEV(可见),View.INVISIBLE(不可见)和 ...原创 2019-08-22 00:34:47 · 180 阅读 · 0 评论