自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

晨曦

黑暗只是暂时的,晨曦的光终会照亮前进的路。

  • 博客(246)
  • 资源 (47)
  • 收藏
  • 关注

原创 Android 高德地图API(新版)

2020年的时候我写了关于高德地图的使用,在当时你按照文章是没有问题,然而现在到了2024年了,这几年高德的SDK发生了变化,Android Studio发生了变化,不变的是什么呢?就是学校的老师还是让一个没接触过Android的学生去完成相关的功能,定位地图之类的,然后不会怎么办呢?就搜索到我的文章了,一操作发现不对,几百个人问同样的问题,我是真的回答累了,因此我打算重新写一遍,根据最新的内容来写,从内容上和之前的文章大概相同,下面进入正文。

2024-06-07 20:59:53 7951 31

原创 Android 项目Gradle文件讲解(Groovy和Kotlin)

在Android应用开发中,Gradle是很重要的,它关系到你的项目能否正常编译运行,构建APK等等,而随着编辑器的更新,Gradle也发生了一些变化。通过项目编译成apk文件,我们可以修改apk的文件名称,如下所示:Groovy// 自定义打包${variant// 自定义打包 android . applicationVariants . all {Kotlin// 自定义打包${// 自定义打包 android . applicationVariants . all {

2024-05-28 19:30:00 2559 5

原创 Flutter 多语言、主题切换之GetX库

关于GetX库前面我们讲述了状态管理的使用,实际上GetX是非常强大的,功能很多,本篇文章中我们将介绍GetX的多语言切换和主题切换等功能。

2024-03-14 22:30:00 2714

原创 Flutter 数据持久化存储之Hive库

在Flutter中,有多种方式可以进行数据持久化存储。以下是一些常见的方式:使用shared_preferences插件,可以将数据存储在设备的轻量级持久化存储中。这种方式适合存储少量简单的键值对数据,比如用户偏好设置等。文件存储:使用dart:io库可以进行文件存储,可以将数据以文件的形式存储在设备上。这种方式适合存储结构化数据,可以使用JSON格式或者其他格式进行数据的读写。SQLite数据库:可以使用sqflite插件在Flutter应用中使用SQLite数据库。

2024-02-24 09:00:00 2461 2

原创 Flutter 网络请求之Dio库

最近再写Flutter系列文章,在了解过状态管理之后,我们再来学习一下网络请求。

2024-02-05 19:45:00 5421 13

原创 Flutter 状态管理之GetX库

Flutter使用的是声明式UI,是通过状态去更新UI组件的,因此我们首先就要学习状态的使用。同样为了简化原本的状态使用,我们会使用Getx库。

2024-01-22 20:00:00 2473 2

原创 Harmony Ble蓝牙App(四)描述符

上一篇中了解了特性和属性,同时显示设备蓝牙服务下的特性和属性,本文中就需要来使用这些特性和属性来完成一些功能。

2024-01-20 22:30:00 1073

原创 带着思考与突破前行

本是萍水相逢,帮你是勤奋,不帮你是本分。从初学者到初学者,意思是在刚接触Android应用开发的时候,我是初学者的身份,再接触Android系统驱动开发的时候,我依然是初学者,驱动开发作为我这一年的主要工作,期间当然也是穿插着一些应用开发,但是让我成长最多的还是驱动开发,从这里就了解了很多之前不曾接触的知识点,从最开始的工作站搭建,Android源码编译,到后面的驱动源码研读、更改、再编译,期间报错无数,我也尝试过放弃这个东西,可是放弃是最容易的事情啊,那只能说明我只是个不过如此的程序员而已。

2023-12-31 09:00:00 989 3

原创 Harmony Ble蓝牙App(三)特性和属性

在上一篇中我们完成了连接和发现服务两个动作,那么再发现服务之后要做什么呢?发现服务只是让你知道设备有什么服务,可以做什么事情。

2023-12-04 20:00:00 721

原创 Harmony Ble蓝牙App(二)连接与发现服务

  在上一篇中我们进行扫描设备的处理,本文中进行连接和发现服务的数据处理,运行效果图如下所示:  现在我们在扫描设备,选中一个设备进入,下面要对选中的设备进行处理,首先我们来做连接。  在之前我们写了一个BleCore,这里面是对扫描的封装,那么对于连接来说我们同样可以封装到这里,我们可以在中写一个 类,继承自, 代码如下所示:  因为本文要做的事情是连接和发现服务,所以我们就先重写这两个方法,注意一点的是,蓝牙的操作都是在子线程中进行的,如果我们需要知道当前是否连接,则需要写一个接口用于回调到中,在包

2023-11-23 20:00:00 604 2

原创 Harmony Ble 蓝牙App (一)扫描

关于Android的低功耗蓝牙,我做了很多介绍了,那么对于Harmony来说这一块我没有做过介绍,而实际中我确实做过一个Harmony的BLE项目,所以这里分享一些内容出来。//蓝牙设备真实名称//地址//信号强度//设备if (name!= null ||!这个Bean没有什么好说的,下面要做的就是列表Item的渲染,在Android中我们使用的是适配器Adapter,而在Harmony中使用的是提供者Provider。

2023-11-20 21:15:00 998

原创 Harmony 应用开发的知识储备

这里先说明一点,如果你对Android应用开发很熟悉,那么做Harmony应用开发也可以驾轻就熟,只不过在此之前你需要知道一些关于Harmony应用开发的相关知识。

2023-11-10 17:25:43 1094 1

原创 Harmony 个人中心(页面交互、跳转、导航、容器组件)

今天是1024,祝各位程序员们,钱多事少离家近,不秃也强bug黄。在上一篇文章中,我们了解了DevEco Studio的主推开发语言ArkTS,并写了一个简单的例子,本文我们将学习另外一个例子来加深我们对于鸿蒙应用开发的理解。

2023-10-24 21:30:00 4240 1

原创 Harmony ArkTS语言

说到ArkTS就得说一下的演变过程,在我写一篇关于鸿蒙的文章时,才刚推出不久,当时所支持的语言是Java、JS、C++等,在后续的版本中逐渐去掉了Java,C++,最终使用到了ArkTS,那么我们下面来了解一下ArkTS的由来。

2023-10-11 20:00:00 4064 11

原创 Android Ble蓝牙App(七)扫描过滤

在上一篇文章中了解了MTU的相关知识以及对于设备操作信息的展示,本篇文章中将增加扫描设备的过滤功能让你更方便的扫描想要找的低功耗蓝牙设备。

2023-09-06 19:00:00 2116

原创 Android Ble蓝牙App(六)请求MTU与显示设备信息

在上一篇文章中已经了解了数据操作的方式,而数据交互的字节长度取决于我们手机与蓝牙设备的最大支持长度。

2023-08-17 18:16:44 3542 3

原创 Android Ble蓝牙App(五)数据操作

关于低功耗蓝牙的服务、特性、属性、描述符都已经讲清楚了,而下面就是使用这些知识进行数据的读取、写入、通知等操作。

2023-08-14 20:15:00 4710 6

原创 Android Ble蓝牙App(四)UI优化和描述符

上一篇中了解了特性和属性,同时显示设备蓝牙服务下的特性和属性,本文中就需要来使用这些特性和属性来完成一些功能。

2023-08-14 20:00:00 1314

原创 Android Ble蓝牙App(三)特性和属性

在上一篇中我们完成了连接和发现服务两个动作,那么再发现服务之后要做什么呢?发现服务只是让你知道设备有什么服务,可以做什么事情。

2023-08-07 18:55:05 2626

原创 Android Ble蓝牙App(二)连接与发现服务

  在上一篇中我们进行扫描设备的处理,本文中进行连接和发现服务的数据处理,运行效果图如下所示:  现在我们从MainActivity进入到ScanActivity,选中一个设备返回到MainActivity,下面要对选中的设备进行处理,首先我们来做连接。  在之前我们写了一个BleCore,这里面是对扫描的封装,那么对于连接来说我们同样可以封装到这里,我们可以在BleCore中写一个BleGattCallback 类,代码如下所示:  因为本文要做的事情是连接和发现服务,所以我们就先重写这两个函数,注意

2023-08-04 22:00:00 2960 2

原创 Android Ble蓝牙App(一)扫描

  关于低功耗的蓝牙介绍我已经做过很多了,只不过很多人不是奔着学习的目的去的,拿着源码就去运行,后面又发现连接设备后马上断开,然后不会自己看问题,这个现象就是快餐式的,你不了解里面的知识内容,自然就不知道是怎么回事,重复的问题我回答了好多次了。而我也是觉得写的有问题,本意上来说我是希望读者可以参考来写,能看一看文章内容,而结果绝大多数,看个标题看个运行效果,下载源码就运行,运行有问题就问你,没有什么思考。  针对这个情况,我决定做了系列性的Ble蓝牙App,尽可能的避免在你运行的时候出现bug,所以这是一

2023-07-31 22:15:00 5510 8

原创 Android 编译Android7.0版本源码

首先说说为什么要编译Android7.0的源码,因为当我们去做系统定制开发的时候,就需要这么去做,举个例子,你们公司有一个客户是做电视机顶盒的,现在购买了你们公司的产品,要求你们公司提供相关的Android系统驱动,类似音频驱动、视频驱动之类的文件,能让这个文件再客户的机顶盒上正常使用,针对这个问题我们要怎么做呢?

2023-06-28 17:53:48 1736 13

原创 Android 自定义View 之 Dialog弹窗

  在日常开发中用到弹窗是比较多的,常用于提示作用,比如错误操作提示,余额不足提示,退出登录提示等,还有用于数据展示的弹窗,上拉弹窗等等,主要为了简化在日常开发中的使用。  Android中的Dialog弹窗是一种用于展示特定信息或者在用户需要进行某些操作时才显示的窗口。Dialog弹窗可以分为系统提供的常规Dialog弹窗和自定义Dialog弹窗。  常规Dialog弹窗包括AlertDialog、ProgressDialog、DatePickerDialog、TimePickerDialog等,这些Di

2023-06-12 22:30:00 11829 2

原创 Android 自定义View 之 饼状进度条

  前面写了圆环进度条,这次我们来写一个饼状进度条,首先看一下效果图:  效果图感觉怎么样呢?下面我们来实现这个自定义View,依然是写在EasyView这个项目中,这是一个自定义View库,我会把自己写的自定义View都放在里面,文中如果代码不是很全的话,你可以找到文章最后的源码去查看,话不多说,我们开始吧。  根据上面的效果图,我们首先来确定XML中的属性样式,在attrs.xml中添加如下代码:  这里的公共属性我就抽离了出来,因为之前写过圆环进度条,有一些属性是可以通用的,并且我在饼状进度条中增

2023-06-01 21:45:00 2000

原创 Android 自定义View 之 简易输入框

  在日常工作开发中,我们时长会遇到各种各样的需求,不部分需求是可以通过Android 原生的View来解决,而有一些是无法解决的,这时候我们就需要自定义View,我们先来看看本文中这个自定义View的演示效果图。  依然在EasyView中进行创建,在下新建一个,继承自 ,实现里面的构造方法。然后我们继承自,重写里面的构造方法,代码如下:下面就可以增加样式了。  在设置样式之前需要先知道我们的自定义View要做什么,这是一个简易输入框,可以用来做验证码输入或者密码输入,输入框4~6个,主要就是数字输入,

2023-05-05 22:45:00 2879 2

原创 Android 项目编译 Gradle 配置说明

Android 的Gradle版本更新换代还是很快的,更新换代除了功能上变得强大之外,还会出现很多意料之外的Bug,而很多开发者会被折磨的死去活来,下面我们来看有哪些编译配置。

2023-04-21 21:15:00 3390 2

原创 Android 自定义开源库 EasyView

这里使用了MacAddressEditText的所有属性,可以自行进行设置,使用说明参考下表。属性说明设置输入框的背景颜色设置输入框的边框颜色设置输入框的边框大小设置输入框大小Mac地址的分隔符,例如分号:设置输入框文字颜色设置输入框文字大小这里使用了MacAddressEditText的所有属性,可以自行进行设置,使用说明参考下表。属性说明最大进度当前进度进度条背景颜色进度颜色app:radius半径,用于设置圆环的大小进度条大小app:text进度条中心文字。

2023-04-18 12:30:00 1368

原创 Android 自定义View 之 计时文字

在Android开发中,常常会有计时的一些操作,例如收验证码的时候倒计时,秒表的计时等等,于是我就有了一个写自定义View的想法,本文效果图。

2023-04-14 22:15:00 1030 1

原创 Android 自定义View 之 圆环进度条

  很多时候我们会使用进度条,而Android默认的进度条是长条的,从左至右。而在日常开发中,有时候UI为了让页面更美观,就需要用到圆环进度条,那么本文就是通过自定义写一个圆环进度条,首先看一下效果图:  关于自定义View的基础知识就不再做过多的讲解了,我们直接进入正题,这一次我们不需要再去创建项目了,就用我之前创建的EasyView。  根据上面的效果图,我们首先来确定XML中的属性样式,修改attrs.xml的代码如下所示:  这里你会发现一个改变,那就是文字颜色和文字大小的属性从之前的中抽出来了,

2023-04-14 22:00:00 2710

原创 Android 自定义View 之 Mac地址输入框

  在日常工作开发中,我们时长会遇到各种各样的需求,不部分需求是可以通过Android 原生的View来解决,而有一些是无法解决的,这时候我们就需要自定义View,我们先来看看本文中这个自定义View的演示效果图。  在了解自定义View之前,我们先了解什么是View,View就是视图,再通俗一点就是你在手机上所看到的内容,假设我们创建了一个项目,算了,我们真的去创建一个项目,创建一个名为EasyView的项目。  项目创建好之后,看一下activity_main.xml,我们能看到什么?白色的背景,中间有

2023-03-24 19:00:00 1495

原创 四年时光,恍如昨日

我不是喜欢评论的人,我也比较少评论,但是我博客的每一条评论我都会去看,有提问题的我会解答,鼓励的,我会共勉,有活动,让我帮忙点5星,以前我会出于情面上,回个5星,现在不会了,随便吧,这些东西并不重要,但是有人会趋之若鹜,沉迷其中,短暂的荣誉能带来什么,我不禁反思自己,虽然我不知道我在反思什么,因为我没有荣誉,没有荣誉的人需要去反思,这是一种黑色幽默。人都会有惰性,我时常会一边想着不写了,就这样吧,一边又想着这样我就废了,脑海里有两个小人在对峙,对峙的时候我就想娱乐一下,听音乐、看电影、打羽毛球。

2023-02-24 14:46:25 1087 10

原创 Android MVI框架搭建与使用

有一段时间没有去写过框架了,最近新的框架MVI,其实出来有一段时间了,只不过大部分项目还没有切换过去,对于公司的老项目来说,之前的MVC、MVP也能用,没有替换的必要,而对于新建的项目来说还是可以替换成功MVVM、MVI等框架的。

2023-02-10 22:15:00 3614 1

原创 Android WIFI使用简述

  随着Android版本的更新,目前最新的版本是Android 13,并且已经有部分国产手机更新了此版本,对于Android开发者来说,变化其实不那么大,而对于本文章来说就有一些变化。  在Android 12版本中,增加了对于蓝牙操作的动态权限,而在Android 13中,增加了对于WIFI操作的动态权限,日常工作生活中,我们用到WIFI功能是很多的,例如手机、电脑、电视等设备。而使用WIFI是一回事,WIFI开发又是另一回事,和蓝牙是一个道理,它们之间也有很多相似的地方。  首先创建项目,这里我使用的

2023-02-06 22:15:00 5032 8

原创 Android Studio Electric Eel | 2022.1.1 版本

各位读者,新年快乐,现在是2023年了,新的一年,我们的开发也会焕然一新,Android开发的工具Android Studio,也能更新到了,短期内我将使用此版本学习和开发。

2023-01-29 22:00:00 10761 18

原创 Android 12 蓝牙适配 Java版

  本身已经写过一篇关于蓝牙适配的文章了,不过因为是Kotlin,很多读者看不懂,对此我深感无奈,一开始也没有想过再写Java版本的,但是后面发现看不懂的越来越多了,我意识到不对劲了,因此我觉得再写一个Java版本的。  在Android系统版本中,蓝牙的变化有,但是不多,这里简要说明一下。  在Android12.0中新增加了三个运行时权限,我们依次来说明一下,这里我们依然创建一个项目来说明,新建一个Android12Bluetooth-Java项目,如下图所示:点击Finish,完成项目的创建。然后

2023-01-06 21:00:00 5800 20

原创 带着选择与坚持前行

  今年是写博客的第四年了,也是我从事Android开发的第四年,每一年的心态都会发生变化。今年的行情貌似也不太好,很多毕业生找不到心仪的工作选择培训或者转行的,但其实很多的都是被现代社会影响了,并不是没有工作机会,只不过是门槛相比之前要高了,面试造火箭,入职拧螺丝,虽然很现实,但很明显你需要花更多时间在学习上面,而不只是为了完成任务。  什么是完成任务?就是你拿到一个项目,自己做的时候没有思考,所有代码都是Ctrl + C,Ctrl + V完成的,只有改一下项目名称,一旦遇到一点问题,天就塌了,急得如同热

2022-12-31 12:30:00 918 4

原创 Android 编译C++

在开发过程中,有一些底层库,算法、加解密之类的功能,不是用Java写的,而是C或者C++,而我们需要在Android工程中调用C/C++的函数达到理想的要求,那么这个时候你就需要知道怎么使用它们。

2022-11-18 21:30:00 5613 8

原创 Android 组件化(二)注解与注解处理器、组件通讯

在上一篇文章中,我们完成了组件的创建、gradle统一管理、组件模式管理和切换,那么这一篇文章,我们需要做的就是组件之间的通讯了。

2022-11-15 23:45:00 2221 4

原创 Android 组件化(一)项目模式管理、模式切换

  在进行安装开发的时候我们经常会对项目进行不同业务逻辑处理分包,例如专门处理网络、数据库、业务逻辑代码的,如果我们不分包则所有东西写在一起,势必在开发过程中会浪费很多时间在寻找文件上,而分包的思想源于模块化,例如一些utils类,专门放到一个包下面,这样在使用的时候就能很快找到。节省开发时间,降低后期维护成本,那么组件化是什么?  在上面我们提到模块化,可以根据不同的功能进行进一步的封装,放到一个新建的模块下面,例如登录注册模块,个人中心模块之类的,但是模块化时就会涉及到一个分体,不同模块之间存在业务逻辑

2022-11-14 23:45:00 2438

原创 Android 天气APP(三十六)运行到本地AS、更新项目版本依赖、去掉ButterKnife

最近发现这个项目好似迎来了第二春,GitHub上的Start和Fork增加的很快,我的猜测是学生在通过这个项目来学习和完成自己的作业。随着Android版本的更新,Android Studio的更新,项目中一些内容不能在新版本中很好的使用,甚至出现编译不了的情况,这对我来说没啥,但是对于拿到项目满心欢喜的学生来说,运行不了,无疑是致命的,而我写在项目Readme下面我将演示一下怎么在本地运行这个项目的代码。

2022-11-06 00:53:53 4581 18

GoodNews_8.rar

Android Compose 新闻App(八)抽屉布局、动态权限、拍照返回

2022-05-09

GoodNews_7.rar

Android Compose 新闻App(七)网络图片加载、Tab、HorizontalPager

2022-05-02

GoodNews_6.rar

Android Compose 新闻App(六)导航动画、WebView、浮动按钮、底部导航

2022-04-25

GoodNews_5.rar

Android Compose 新闻App(五)Room复杂数据、AlertDialog弹窗、页面导航

2022-04-21

GoodNews_4.rar

Android Compose 新闻App(四)下拉刷新、复杂数据、网格布局、文字样式

2022-04-11

GoodNews_3.rar

Android 新闻App(三)网络数据Compose UI显示加载、Room和DataStore使用

2022-04-04

GoodNews_2.rar

Android 新闻App(二)ViewModel、Hlit、数据流

2022-03-31

GoodNews_1.rar

新闻App 第一步,Kotlin语言、网络框架搭建。

2022-03-28

Android DataStore使用和封装

Android DataStore使用和封装

2022-03-18

Android MVVM框架使用(十三)UI更新 (App启动白屏优化、适配Android10.0深色模式)

Android MVVM框架使用(十三)UI更新 (App启动白屏优化、适配Android10.0深色模式)

2022-03-14

WhoCare 黑白屏优化

WhoCare 黑白屏优化

2022-03-10

MVVMDemo_12.rar

MVVMDemo第十二篇

2022-02-21

MVVMDemo_11.rar

Android MVVM框架使用(十一)(功能开发)记事本

2022-02-11

MVVMDemo_10.rar

MVVM第十步,使用Hilt、ViewBinding、Activity Result API

2022-01-14

MVVMDemo_9.rar

MVVMDemo第九步

2021-12-29

MVVMDemo_8.rar

MVVMDemo第八步

2021-12-22

MVVMDemo_7.rar

MVVMDemo 第七步

2021-12-18

MVVMDemo_6.rar

MVVMDemo第六步,抽屉菜单,登录注册。

2021-12-09

MVVMDemo_5.rar

MVVM-Demo第五步、Fragment的使用及框架的封装

2021-11-23

MVVMDemo_4.rar

MVVM 第四步

2021-11-17

MVVMDemo_3.rar

MVVMDemo 第三步

2021-11-08

MVVMDemo_2.rar

MVVM框架搭建第二步

2021-11-01

MVVM-Demo_1.rar

MVVM框架搭建第一步

2021-10-28

NotifyListenerDemo.rar

手机通知监听服务

2021-08-14

RoomDemo.rar

RoomDemo,文章Demo源码

2021-08-03

GoodWeather-master.zip

好天气源码,未修改网络请求框架之前,目前GitHub上是已经更新了网络框架,对您造成不便,敬请谅解,如无法看懂新的网络框架,请阅读我的关于Android 网络框架搭建的文章。

2021-07-23

BleDemo.rar

低功耗蓝牙扫描连接

2021-07-21

OPPO获取应用Sign,APK签名工具.rar

OPPO获取应用SignAPK,用于OPPO平台创建应用

2021-06-07

ScanDemo.rar

华为扫码服务Demo

2021-05-18

EditPlus.rar

EditPlus编辑器

2021-05-17

SpeechSynthesisDemo.rar

百度语音合成Demo

2021-05-08

TextOCRDemo.rar

百度文字识别

2021-05-06

TabLayoutDemo.rar

TabLayoutDemo源码

2021-04-30

GoodTrash1.0.apk

垃圾分类App

2021-04-22

GoodTrash.rar

GoodTrash源码

2021-04-22

GaodeMapDemo.rar

高德地图Demo源码

2021-04-21

百度地图Demo源码和APK.rar

百度地图源码

2021-04-16

PictureCroppingDemo.zip

Android系统原生图片剪裁

2021-04-08

ImageDiscernDemo.rar

图像识别Demo,可以识别网络图片、相册图片、相机拍照图片

2021-04-05

JDK 1.8 64位.rar

Java JDK 1.8 64位

2021-04-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除