- 博客(33)
- 收藏
- 关注
原创 Android进阶之——图片库 Glide代码应用如此简单
Android开发进阶总会遇到很多第三方框架,其中Glide和Fresco是处理图片的两个非常好的第三方框架。接下来我们用实例去了解这两个框架到底怎么处理。
2024-11-02 10:10:43
856
原创 Android进阶之——多线程开发,其实实现如此简单
系统中,线程是操作系统调度的最小单元,也是一种受限的系统资源,也就是说线程不可能无限制地产生,而且线程的创建和销毁都会有相应的开销。当系统中存在大量的线程时,系统会通过会时间片轮转的方式调度每个线程,因此线程不可能做到绝对的并行。在一个进程中频繁地创建和销毁线程,显然不是高效的做法。正确的做法是采用线程池,一个线程池中会缓存一定数量的线程,通过线程池就可以避免因为频繁创建和销毁线程所带来的系统开销。Android 线程可以总结成一下几点1、UI线程(主线程)2、Handler机制。
2024-11-01 11:35:05
448
原创 Android开发之——SOLID基础设计原则(掌握23种设计模式)其实开发之路如此简单
SOLID 是面向对象设计五大重要原则的首字母缩写,分别是(S)Single Responsibility Principle(SRP):单一职责原则一个类或者一个模块只做一件事。让一个类或者一个模块专注于单一的功能,减少功能之间的耦合程度。这样做在需要修改某个功能时,就不会影响到其他的功能。(O)Open Closed Principle(OCP):开闭原则对扩展开放,对修改关闭。一个类独立之后就不应该去修改它,而是以扩展的方式适应新需求。(L)
2024-10-30 14:00:06
1221
原创 1分钟拿捏Android事件——点击事件
Android开发的过程中最多应用的就是点击事件,也是基础中的基础,如何在绘制完页面绑定,如何处理需求今天我们用实战带大家了解一下什么是点击事件。那么有没有更简单的经济的方法呢?那是必然的,我们看一下View.OnClickListener源码。想要在Activity中实现事件的点击处理,那就不许实现OnClickListener这个接口。这就是一个非常耗时且可读性不高的方式,新建一个监听器,然后绑定在Button上。没错就是这么简单,只要实现一下这个接口就可以简便化了,Activity代码如下。
2024-10-18 14:47:09
268
原创 一分钟带你熟练掌握Android开发之——常用布局
Android开发的过程中,常见的问题就是使用布局进行绘制页面,常见的布局有哪些呢当然随着技术的不断更新迭代,也出现了许多其他的布局比如ConstraintLayout 约束布局SwipeRefreshLayout 下拉刷新布局等等当然你也可以进行自定义布局。
2024-10-17 13:00:23
1136
原创 Android 四大组件之Content Provider,外部应用访问不到,原因就是如此简单
如果你遇到了Content Provider 外部应用不能访问的情况,content provider 可以帮助应用管理对自身存储或由其他应用存储的数据的访问,并提供与其他应用共享数据的方法。它们封装数据,并提供用于定义数据安全性的机制。content provider 是将一个进程中的数据与另一个进程中运行的代码连接的标准接口。实现 content provider 有诸多优势。最重要的是,您可以配置 content provider,让其他应用安全地访问和修改您的应用数据。是Android四大组件之一。
2024-10-16 16:48:51
1511
原创 Android开发之Broadcast Receive(广播机制)其实开发如此简单
BroadcastReceiver(广播接收器)用于响应来自其他应用程序或者系统的广播消息。这些消息有时被称为事件或者意图。本质上来讲BroadcastReceiver是一个全局的监听器,隶属于Android四大组件之一。
2024-10-15 14:40:05
437
原创 轻松过拿捏Android开发中的 Service 只需要1分钟
Android ——Service即为服务,和我们PC类似,每个程序都会注册对应的Service,是一种可以在后台执行长时间运行操作而没有用户界面的应用组件。有两种工作模式,startService和bindService....
2024-10-14 16:26:40
1057
原创 1分钟掌握Android开发之Activity
Activity是用户操作的可视化界面。Activity 类是 Android 组件的重要组成部分, 而 activity 启动和组合的方式也是一项 是平台应用模型的一部分。与 GCP 上的编程范式不同 哪些应用使用 main() 方法启动,Android 系统会通过以下方式在 Activity 实例中启动代码: 调用与 其生命周期。你可以理解为一个页面就是一个Activity。
2024-10-14 10:38:25
873
原创 Android 开发MVVM竟然如此简单
ViewModel 类是一种业务逻辑或屏幕级状态容器。它用于将状态公开给界面,以及封装相关的业务逻辑。它的主要优点是,它可以缓存状态,并可在配置更改后持久保留相应状态。这意味着在 activity 之间导航时或进行配置更改后(例如旋转屏幕时),界面将无需重新提取数据。简单的来说就是ViewModel的声明周期要比Activity和Fragment的声明周期要长为了方便把后面的流程串联起来这里还需要引入一个知识点,就是LiveDataLiveData是一种数据持有者类,它可以感知生命周期并观察数据变化。
2024-10-12 16:40:09
1182
原创 1分钟读懂Android MVP到底是个啥
这部分对于新手来讲可能有点难理解,但是如果你的JAVA 基础好的话,应该不算难Presenter一共需要 一个类两个接口LoginView这里主要处理判断及过程逻辑的操作/*** 用户输入/*** 密码错误/*** 验证实际用户这里处理登录逻辑的操作/*** 登录*/登录逻辑的实现接下来的部分就是我们重中之重了,怎么才能在Activity中完成整个MVP的架构UserBean数据结构。
2024-10-12 10:17:13
679
原创 轻松搞定Android断点续传的那些事儿
Android开发中,常见的需求就是下载,在这个文件日益增加的时代,断点续传就成为了Android开发工程师不可缺少的一个重要部分直接上步骤敲代码。特别注意的是,Android11及以上需要单独设置网络验证,访问和管理文件的权限,且需要动态获取权限,这里就不详细说明了,获取权限大家都会吧。使用RxJava和RxAndroid用来做线程切换的,okhttp 用于网络协议的输出。这样整块代码就完成了,根据自己的包文件去引用。注意要在下添加如下,否则http协议会报错。这里分别需要网路权限及文件读写的权限。
2024-10-11 13:59:28
246
原创 Android开发 如何使用OKHttp 一分钟就可以完成
作为目前公认Android开发相对好用的网络请求框架,OkHttp还是相当够资格的,因为大家都在用。由于这个类需要频繁的使用,需要使用单例模式进行操作,道理就不讲了吧,都懂。调用自己就会了吧,这里我就不贴了,不会写的再问,我先收工了。其实有的原理不用讲的那么明白,我感觉大家都喜欢直接上代码。第二步:创建监听器RequestListener。第三步:创建工具类进行请求 HttpUtils。我知道你很懒,完整代码给你贴上吧。接下来就是实际操作的代码了。
2024-10-07 15:48:16
305
原创 Android 开发 1分钟搞定ImageView 加载网络图片
但日常开发的过程中,加载服务器图片是不可缺少的一项重要任务。首先定义一个BaseHttpImageView 的工具类。一般情况下,ImageView 仅支持本地文件的展示。是不是非常简单,完全不需要第三方框架就可以解决。最后直接在需要加载图片的位置设置就好了。XML布局文件中使用。
2024-10-07 15:23:25
645
原创 一行代码解决Android Activity 跳转闪白或者闪黑的问题
overridePendingTransition(int enterAnim, int exitAnim) 的两个参数分别是进入和退出时的动画效果也就是说,从A启动B时,B的动画效果是enterAnim,A的动画效果是exitAnim,从B返回A时,B的动画效果是exitAnim,A的动画效果是enterAnim。日常Android 开发过程种,总避免不了会出现Activity跳转出现闪白或者闪黑的情况。原因:可能是Activty 没有加载完成或者新启动的进程导致的短暂效果。
2024-09-29 09:45:22
517
原创 一分钟搞定 Android 视频播放器ExoPlayer的使用
MP4, M4A, FMP4, WebM, MKV, MP3, Ogg, WAV, MPEG-TS, MPEG-PS, FLV and ADTS (AAC)等。作为一个资深的Android开发人员,视频播放器是不可或缺的一个重要组成,今天先搞ExoPlayer。直接修改布局就可以了,这个没什么可介绍的,需要注意的是,状态栏标题栏需要隐藏掉。可以在页面上添加自己的个性化按钮,直接findViewById()就能实例化。(3)layout.xml 布局文件。(2)添加Java8的支持。打完收工,干活儿去吧。
2024-09-28 15:35:34
5231
原创 一分钟实现Android开发的串口通讯
基于谷歌官方android-serialport-api 编译修改,主要包含SerialPortFinder和SerialPort,进行串口地址的获取和串口内容的开启、写入、读取及关闭。在工业级APP开发时,总是回避不了串口通讯的问题,让前端自己通过NDK与串口进行通讯,成本高稳定新不好,今天给大家用第三方库解决一下这个世纪难题。(1)第一步要在Activity上引入监听事件。按照流程干就完了,别关闭后发送指令就行。如果你能力够强可以直接去官方下载改编。(2)确定好主板信息,且实例化对象。
2024-09-28 14:56:33
524
原创 JetPack与MVVM开发 (一)Jetpack 介绍
JetPack与MVVM开发 (一)不知不觉开发Android 也三年多了,在这个Android 的大生态里面踩过的坑比做的项目都多,那么Android生态发展到现在已经非常成熟了,接下来把自己进阶的的一些过程持续更新给大家什么是JetpackJet Pack 是一个由多个库组成的套件,看可以帮助开发者遵循最佳的做法,减少样板代码并编写可在各种Android版本和设备中一致运行的代码,让开发者集中经历编写重要的代码。**那么为什么使用JetPack呢****1.遵循最佳** JetPack组件
2021-04-20 21:40:29
396
原创 Activity四种启动模式
Activity四种启动模式初学Android的你在面试的过程中一定会被问道Activity的生命周期是吧,现在你可能没有工作,要准备做Android的小伙伴们注意了。Activity 启动模式 这个问题现在是你必须要懂的了,因为这个问题对于相对大一些的公司来讲这个问题比Acivity的生命周期更有价值。讲到启动模式,首先要讲讲Activity 栈那么什么是Activity栈呢?Activity 栈: 用来维护Activity,什么是栈这个问题就不去将了哈,回去自己看看数据结构栈的特点是后进先出
2021-04-20 00:30:00
557
原创 Android 的MVC到底是什么
Android 你开发了这么长时间,MVC 到底是什么你知道吗?MVC 的全称为model-view-controller(模型-视图-控制器)那么我们现在就先分开说说这个东西到底是什么M ——(model)模型层你是不是开发了这么久还以为模型层就只是存数据的一些实体类呢?为什么这么问呢!是因为我有个小徒弟今天在开发的过程中就就把所有的实体类放到了model这个文件夹里面,并且只认为模型层就是实体类的数据。那么我们现在就来说说到底什么是模型层Model 也就是大家口中的数据层数据库层,数据模
2021-04-13 22:42:26
1190
2
原创 Android SqlLite操作不传Context 的骚操作
每当在Android 开发对sqllite 进行操作的时候总需要传一个Context 对象接下来您目睹的这一切将结束这一切快来看看我的蛇皮走位吧第一步,你需要写一个Application的工具类上代码import android.app.Application;import android.content.Context;public class BaseApplication extends Application { private static Context mConte
2020-06-04 16:40:27
310
原创 Android 初学者第一步 Activity生命周期
对于初学者学习Android开发(原生Android Studio开发)首先您需要有良好的JAVA基础拥有了良好的java基础后的第一步就需要了解Activity的生命周期函数1.什么是ActivityAndroid 活动(Activity)活动代表了一个具有用户界面的单一屏幕,如 Java 的窗口或者帧。Android 的活动是 ContextThemeWrapper 类的子类。如果你曾经用 C,C++ 或者 Java 语言编程,你应该知道这些程序从 main() 函数开始。很类似的,Andro
2020-06-04 14:39:02
211
原创 Android 简单粗暴的方式 实现H5App
直奔主题:1.需要Gradel 引用第三方的包: implementation 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2'2.配置权限 <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="an
2020-06-04 09:07:26
813
原创 Android实现Fragment隐藏和显示
其实创建这样的Fragment很简单在初始化时定义Fragment然后根据下面的这些代码进行添加 FragmentManager fm = getFragmentManager(); FragmentTransaction transaction = fm.beginTransaction(); transaction.add(R.id.fragmentla...
2018-09-04 11:00:17
4819
原创 Android实现广播机制
直接上代码//把他当一个变量定义在Android Activity类中或自己代码方便的位置 BroadcastReceiver broadcastReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { ...
2018-09-04 10:49:52
861
原创 Android开发实现POST请求服务器返回json
这里面直接给大家发一个工具类的方法,有点java基础的同学直接调用就好了import android.util.Log;import java.io.BufferedReader;import java.io.DataOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.IOE...
2018-09-04 10:40:16
778
原创 Android实现sqllite存储数据
很多新手同学在学习Android开发时会遇到存储用户名的时候,今天我们来介绍一下Sqlite数据库, 本人不喜欢在这里讲太多的理论知识,因为写了你们也不会看,所以直接写方法一、创建sqllite数据库的DBHelper(这里按照自己的习惯称呼)import android.content.Context;import android.database.sqlite.SQLiteData...
2018-09-04 10:34:49
693
原创 Android提示窗口
比较简单直接粘贴源码 // 通过AlertDialog.Builder这个类来实例化我们的一个AlertDialog的对象 AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); // 设置Title的图标 builder.setIcon(R....
2018-09-04 10:21:44
403
原创 Android开发实现软件的自动更新
布局话不多说直接上代码 布局<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layo...
2018-09-04 09:59:24
2461
原创 Android开发实现加载框
一、要新建一个工具类 LoadView import android.app.ProgressDialog; import android.content.Context;public class LoadView { /** * 加载框 */ private ProgressDialog progressDialog; public...
2018-09-04 09:43:21
1716
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人