![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
文章平均质量分 74
在下木子李
喜欢Android开发的程序员
展开
-
Android Bitmap相关知识点——类型、创建、压缩、转换等
Bitmap1、Bitmap的各种类型1、Bitmap的各种类型当需要做性能优化或者防止OOM时,我们通常会使用RGB_565这种类型。因为ALPHA_8类型的bitmap只有透明度,用处不多。ARGB_4444显示图片不清晰。ARGB_8888占用内存空间最多。BItmap类型一个像素所占内存ALPHA_81字节 【8位( A:8)】RGB_5652字节 【16位(R:5;G:6;B:5)】ARGB_44442字节【16位( A:4;R:4;G:4;B:4)】原创 2021-10-20 18:21:54 · 1479 阅读 · 0 评论 -
Android 网络请求与JSON数据解析
网络请求与JSON数据解析1、前言2、开始2.1 使用HttpURLConnection网络请求、使用JSONObject数据解析2.2 使用Okhttp网络请求、使用GSON数据解析1、前言本文分别介绍使用HttpURLConnection和OkHttp进行简单的网络请求,同时介绍如何进行JSON格式数据的解析。首先既然要发送网络请求获取JSON数据,就得有服务器提供的接口地址,这里采用一个最简单的方式来搭建服务器。开启你的Tomcat服务器,然后找到存放tomcat的文件夹,在webapps文件原创 2021-07-26 14:50:53 · 2157 阅读 · 0 评论 -
Android WebView控件的简单使用
WebViewWebView控件是用来显示网页的声明网络权限<uses-permission android:name="android.permission.INTERNET" />布局<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/a原创 2021-07-26 13:35:38 · 245 阅读 · 0 评论 -
Android 对接OneNet Mqtt服务Demo
Android MQTT一、开通OneNet Mqtt二、开始编程1、添加依赖、声明权限2、MainActivity.java全部代码一、开通OneNet Mqtt官网:https://open.iot.10086.cn/在控制台首页选择多协议接入,然后添加产品,设备接入协议选择MQTT,再然后创建设备,查看设备详情。产品ID、设备ID、鉴权信息等下会用到二、开始编程1、添加依赖、声明权限创建一个新android项目,添加以下依赖,声明权限 implementation 'or原创 2021-05-21 10:58:59 · 2406 阅读 · 21 评论 -
Android Jetpack WorkManager的基本用法
WorkManager的基本用法添加依赖: def work_version = "2.5.0" implementation "androidx.work:work-runtime:$work_version"定义一个后台任务:package com.example.workmanagerdemoimport android.content.Contextimport androidx.work.Workerimport androidx.work.WorkerParameters原创 2021-04-16 13:48:42 · 140 阅读 · 0 评论 -
Android Jetpack 使用Room增删改查
Room增删改查一、Room简介二、使用1、添加依赖2、创建数据实体类3、创建Dao接口层4、创建RoomDatabase扩展类5、执行增删改查一、Room简介Room是Jetpack库中的一部分,它是官方为了开发者更好的使用android数据库功能而推出的ORM框架。什么是ORM?ORM(Object Relational Mapping) 对象关系映射由于我们使用的编程语音是面向对象语言,而使用的数据库是关系型数据库,所以需要在面向对象的语言和面向关系的数据库之间建立一种映射关系,这就是ORM原创 2021-04-15 13:14:20 · 1024 阅读 · 0 评论 -
Android SQLite数据库使用
Android SQLlite数据库SQLlite数据库增删改查创建一个帮助类继承自SQLiteOpenHelper类在该类中定义创建表的sql语句,在onCreate()中调用SQLiteDatabase对象的execSQL()方法执行该语句package com.example.sqllitedemoimport android.content.Contextimport android.database.sqlite.SQLiteDatabaseimport android.datab原创 2021-04-13 19:25:56 · 99 阅读 · 0 评论 -
Android Navigation与BottomNavigationView实现底部导航栏
底部导航栏一、效果图二、实现1、创建Fragment以及布局文件2、添加FragmentContainerView和BottomNavigationView两个控件3、配置xml资源文件4、给BottomNavigationView配置NavController一、效果图使用jetpack的Navigation导航组件和控件BottomNavigationView结合实现app底部导航栏的效果:二、实现1、创建Fragment以及布局文件首先创建四个Fragment,以及对应的布局文件,frag原创 2021-04-12 13:26:29 · 3574 阅读 · 3 评论 -
Android Jetpack 导航组件Navigation使用入门
jetpack Navigation一、简介二、开始使用1、添加依赖:2、创建Fragment3、创建导航图4、执行跳转操作5、传参一、简介导航组件Navigation用于实现应用中的导航操作。。。(感觉说了一句废话)Navigation由三个关键部分组成:导航图,NavHost,NavController导航图: 导航图xml资源文件包含了导航相关的所有信息,包括导航目的地(指activity或fragment内容区域),以及操作(目的地之间的逻辑连接);NavHost: 用于显示导航目标的容原创 2021-04-11 19:24:46 · 621 阅读 · 0 评论 -
Android RecyclerView使用总结(Kotlin)
RecyclerView使用总结(Kotlin)一、前言二、开始1、布局文件2、初始化用到的数据3、recyclerView设置布局管理器4、适配器5、设置点击事件6、下拉刷新,上拉加载更多7、拖拽移动、滑动删除8、适配器完整代码9、含多种item布局的recyclerView三、结尾一、前言最近在学kotlin语言,所以写了这个Demo来练手,顺便复习一下RecyclerView的使用。Demo效果图:二、开始1、布局文件这是Demo的主布局文件,由于使用到一个下拉刷新,上拉加载的开源框原创 2021-03-31 22:07:34 · 3026 阅读 · 0 评论 -
Android Bmob后端云简单使用-增删改查
Bmob后端云一、增二、删三、改四、查记录一下bmob后端云数据库在android上的简单使用官方文档:http://doc.bmob.cn/data/android/先在bmob官网创建一个表用于增删改查字段 name age sex创建android项目,声明权限:<!--允许联网 --> <uses-permission android:name="android.permission.INTERNET" /> <!--获取GSM(2g)、原创 2021-03-24 12:33:04 · 994 阅读 · 0 评论 -
Android Socket通信Demo 实现同一网络下手机互发数据
Android Socket通信Demo一、Demo简介二、服务器线程三、客户端线程四、发送数据五、Demo全部代码1、MainActivity.java代码2、布局代码一、Demo简介我的这个Demo通过socket实现了同一局域网内的两部手机互发数据。首先,要通信,就得让一台手机成为服务器,其他手机设备就是客户端了。创建两个线程,一个服务器线程,一个客户端线程。想让当前手机成为服务器就开启服务器线程。作为服务器的设备先开启线程。效果图:有个问题就是我在测试的时候,用的是一个模拟器和一原创 2021-03-05 14:44:40 · 1459 阅读 · 2 评论 -
Android Jetpack 之 lifecycle入门,简单使用及分析
Lifecycle入门一、Lifecycle简介二、简单使用三、简单分析一、Lifecycle简介Lifecycle是Jetpack架构组件之一,是一个生命周期感知型组件。作用就是使一个组件可以感知到另一个组件(如 Activity 和 Fragment)的生命周期状态的变化。在未使用生命周期感知型组件时,有一种常见模式,就是在生命周期方法中对依赖组件进行操作,例如,在Activity OnCreate()时调用组件内部的start()方法开启组件的功能,在Activity OnDestroy()时原创 2021-03-02 19:55:59 · 474 阅读 · 0 评论 -
Android usb通信 实现app与arduino通信demo
Android usb通信一、前言二、开始1、AndroidManifest.xml清单文件2、创建权限广播接收者3、枚举usb设备4、获取usb接口以及输入/输出端点一、前言最近在学习android的usb开发,写了一个android手机和arduino开发板通信的Demo。和其他开发板或设备进行usb通信,原理都是一样的。写篇博客记录一下。按照惯例,先看效果图:最后一张图是我用到的arduino设备和用于连接手机的数据线,需要一个usb转tc的转接头才能插到手机上二、开始1、Androi原创 2021-02-19 20:53:34 · 3352 阅读 · 20 评论 -
Android自定义View——带删除功能的EditText
自定义EditText自定义View练习,用Kotlin实现一个带删除功能的EditText。实现代码:自定义属性:只有一个自定义属性,用于设置删除按钮的图标<?xml version="1.0" encoding="utf-8"?><resources> <declare-styleable name="EditTextWithClear"> <attr name="clearIcon" format="reference"/原创 2021-01-28 16:14:40 · 345 阅读 · 0 评论 -
Android 蓝牙串口通信Demo
目录一、前言二、效果图三、源码(带注释)1、布局代码2、Java代码3、权限声明四、注意一、前言在学校和机电的同学组队准备做一个智能小车去参加比赛,需要我开发一个小车的控制app,所以我开始学习蓝牙串口通信的相关知识。在看了别人的博客之后,我写了一个蓝牙串口通信的Demo。但由于我没有那些硬件,所以只能在笔记本上下载串口调试工具,然后和手机蓝牙配对来进行通信测试,测试没有问题,用于小车蓝牙模块的通讯估计也是没有问题的。关于如何设置笔记本电脑的蓝牙 串口并且和手机蓝牙配对,以及pc串口调试工具的下载请原创 2021-01-25 16:10:34 · 7491 阅读 · 23 评论 -
Android camera2学习总结
前言因为准备参加比赛的项目涉及到android 相机,所以记录一下这几天学到的有关camera2 API的使用。GitHub地址这是谷歌camera2的相机示例,网上大部分代码和讲解都是参考这个来的,我也是通过看这些代码和别人的博客来学习的。上面的这个代码,谷歌已经没有更新维护了,最新的有关相机示例的GitHub仓库地址是这个:最新相机示例GitHub地址这些示例使用的是kotlin语言,上面旧的使用java。这里放一些我看过的比较不错的相关博客教程,也方便自己以后回顾:Android Cam原创 2021-01-22 14:48:41 · 639 阅读 · 0 评论 -
Android PopupWindow的使用小案例
popupWindowPopupWindow是一个以弹窗形式展示View,灵活易用的类。在日常app开发中经常使用。下面用它来做两种常见UI布局。效果图:实现代码布局代码:activity_main.xml<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/re原创 2021-01-19 10:20:09 · 383 阅读 · 0 评论 -
Android常用布局:TabLayout+ViewPage2+Fragment
TabLayout+ViewPage2+Fragment效果图:布局代码:activity_main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http原创 2021-01-17 11:17:21 · 1512 阅读 · 0 评论 -
Android悬浮按钮com.getbase:floatingactionbutton
floatingactionbutton悬浮按钮记录一个第三方开源悬浮按钮的使用(com.getbase:floatingactionbutton)添加依赖:implementation 'com.getbase:floatingactionbutton:1.10.1'效果图:布局代码:activity_main.xml<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://sc原创 2021-01-15 11:41:54 · 979 阅读 · 0 评论 -
隐私政策
本软件尊重并保护所有使用服务用户的个人隐私权。为了给您提供更准确、更有个性化的服务,本软件会按照本隐私权政策的规定使用和披露您的个人信息。但本软件将以高度的勤勉、审慎义务对待这些信息。除本隐私权政策另有规定外,在未征得您事先许可的情况下,本软件不会将这些信息对外披露或向第三方提供。本软件会不时更新本隐私权政策。您在同意本软件服务使用协议之时,即视为您已经同意本隐私权政策全部内容。本隐私权政策属于本软件服务使用协议不可分割的一部分。1.适用范围a)在您使用本软件网络服务,本软件自动接收并记录的您的手机上的原创 2021-01-14 19:59:22 · 533 阅读 · 0 评论 -
Android颜色选择器对话框HoloColorPicker
HoloColorPicker颜色选择器这是GitHub上找到的一个颜色选择器,我将它简单封装成一个以对话框形式弹出的类,方便以后使用。效果图:HoloColorPicker的GitHub地址:https://github.com/LarsWerkman/HoloColorPicker添加依赖:implementation 'com.larswerkman:HoloColorPicker:1.5'简单封装后代码:1、布局代码:colo_picker_view.xml<?xml vers原创 2021-01-14 17:09:38 · 704 阅读 · 0 评论