![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Android
文章平均质量分 86
Android相关知识
俊墨客
这个作者很懒,什么都没留下…
展开
-
Android原生项目引入Flutter
前言目前Flutter可以说是非常火热了,多次更新过后也越来越稳定,受到了很多开发者的青睐。不过纯Flutter开发还是存在一定成本和风险的,尤其是对于规模稍大一些的项目,可能更加适合的是将Flutter用于项目中的某一个模块,因此我们有必要了解一下如何在原生项目中引入Flutter。本文介绍一下Android原生项目引入Flutter的方法以及Flutter如何与原生进行交互,包括页面间的跳转和方法的调用,本人不懂IOS开发,有需要的话还是自行百度吧o(╥﹏╥)o,但是基本思路我觉得不会差太多的..转载 2021-11-30 17:27:30 · 2179 阅读 · 0 评论 -
协程、ViewModel、LiveData 三剑合璧!
前言 ViewModel和LiveData最早是Google提出的AAC架构中的重要成员,那么它为什么又和协程扯上关系了呢? 其实不能叫扯上关系吧,ViewModel和LiveData属于「架构组件」,而协程是「异步工具类」,ViewModel和LiveData搭上了协程这条快车道,让Google推了几年的AAC架构更加快的让人接受了,真香。 国际惯例,官网镇楼。 https://developer.android.com/topic/libraries/architecture/viewmode.转载 2021-10-13 09:29:42 · 453 阅读 · 0 评论 -
ToolBar使用总结
目录一、toolbarstyle配置toolbar布局二、NavigationIconNavigationIcon常用方法具体使用三、title四、Menumenu的创建menu点击事件menu不同状态时操作menu菜单图标+标题同时显示fragment使用menu菜单五、style的配置style的基本配置app:theme & app:popupTheme修改toolbar的字体修改menu的字体颜色修改menu显示位置 一、转载 2021-09-30 15:00:02 · 1435 阅读 · 0 评论 -
Android-Jetpack笔记-Navigation之Fragment支持复用
上篇文章Android-Jetpack笔记-Navigation之Fragment使用提到,每次切换目的地,fragment是反复销毁重建的,按照谷歌推荐的1个APP只需1个activity的思路开发,这样是没问题的,但是这里的fragment是作为首页的3个常驻页面,我们是希望能够保存起来的,毕竟,销毁重建需要重新请求网络数据,重新初始化view,严重影响用户体验,那么接下来继续上篇文章的分析,支持Fragment的复用。 Jetpack笔记代码 本文源码基于SDK 29,IDE是Android st转载 2021-08-31 15:29:31 · 1629 阅读 · 1 评论 -
(转)Android Jetpack Compose 最全上手指南
在今年的Google/IO大会上,亮相了一个全新的 Android 原生 UI 开发框架-Jetpack Compose, 与苹果的SwiftIUI一样,Jetpack Compose是一个声明式的UI框架,随着了今年安卓和苹果两大移动平台相继推出自己的UI开发框架Jetpack Compose 和SwiftIUI,标志着移动操作系统正式全面拥抱声明式 UI 开发模式。一、声明式 UI 的前世今生其实声明式 UI 并不是什么新技术,早在 2006 年,微软就已经发布了其新一代界面开发框架 WPF,其采用转载 2021-08-28 15:24:15 · 1037 阅读 · 0 评论 -
Data Binding 详解(七)-在 Kotlin 中的使用
知是行之始,行是知之成。文章配套的 Demo:https://github.com/muyi-yang/DataBindingDemoDemo 支持 Java 和 Kotlin 双语言,master 分支为 Java 语言代码,kotlin 分支为 Kotlin 语言代码。在 Google 官方宣布 Android 支持 Kotlin 语言后,Kotlin 瞬间席卷了整个 Android 圈,各种文章书籍,学习小组应时而生。时至今日已有很大一部分先行者已经使用 Kotlin 开发自家的商业项目,在.转载 2021-08-23 15:44:42 · 1168 阅读 · 0 评论 -
Data Binding 详解(六)-双向数据绑定
知是行之始,行是知之成。文章配套的 Demo:https://github.com/muyi-yang/DataBindingDemoDemo 支持 Java 和 Kotlin 双语言,master 分支为 Java 语言代码,kotlin 分支为 Kotlin 语言代码。前面讲到的各种数据绑定都是单向绑定,都是由数据驱动 UI 变化,当 UI 发生变化时并不会引起数据的改变。当 UI 的变化需要反应到数据中时,我们一般采取向 View 设置相应的监听器,然后在监听器中修改相应的数据。这种即由数据.转载 2021-08-23 15:38:05 · 1366 阅读 · 0 评论 -
Data Binding 详解(三)-可观察(监听)的数据对象
知是行之始,行是知之成。文章配套的 Demo:https://github.com/muyi-yang/DataBindingDemoDemo 支持 Java 和 Kotlin 双语言,master 分支为 Java 语言代码,kotlin 分支为 Kotlin 语言代码。可观察(observable)是指一个对象通知其他对象其数据的更改的能力。 Data Binding 库支持创建可观察的对象、字段或集合。普通的对象都可以用于 Data Binding,但是对象数据改变并不会自动更新 UI 。使.转载 2021-08-23 15:29:09 · 1117 阅读 · 0 评论 -
Data Binding 详解(二)-布局和绑定表达式
知是行之始,行是知之成。文章配套的 Demo:https://github.com/muyi-yang/DataBindingDemoDemo 支持 Java 和 Kotlin 双语言,master 分支为 Java 语言代码,kotlin 分支为 Kotlin 语言代码。本章将讲解在 Data Binding 中的布局及布局中如何使用表达式。支持的表达式在布局中支持很多表达式和关键字:Mathematical + - / * %String concatenation +Logical.转载 2021-08-23 15:21:56 · 890 阅读 · 0 评论 -
Data Binding 详解(一)-从零开始
知是行之始,行是知之成。文章配套的 Demo:https://github.com/muyi-yang/DataBindingDemoDemo 支持 Java 和 Kotlin 双语言,master 分支为 Java 语言代码,kotlin 分支为 Kotlin 语言代码。DataBinding介绍2015 年的 Google IO 大会上,Android 团队发布了一个数据绑定框架(Data Binding Library),它是为了解决数据和 UI 的绑定问题,同时也是对 MVVM 模型的一.转载 2021-08-23 15:03:48 · 1349 阅读 · 0 评论 -
Data Binding 详解(五)-绑定适配器
知是行之始,行是知之成。文章配套的 Demo:https://github.com/muyi-yang/DataBindingDemoDemo 支持 Java 和 Kotlin 双语言,master 分支为 Java 语言代码,kotlin 分支为 Kotlin 语言代码。绑定适配器就是把布局中的属性表达式转换成对应的方法调用以设置值。 一个例子是设置属性值,比如调用 setText() 方法。 或者是设置事件侦听器,比如调用 setOnClickListener() 方法。还允许你指定设置值的调.转载 2021-08-23 14:50:12 · 893 阅读 · 0 评论 -
Data Binding 详解(四)-生成的绑定类
知是行之始,行是知之成。文章配套的 Demo:https://github.com/muyi-yang/DataBindingDemoDemo 支持 Java 和 Kotlin 双语言,master 分支为 Java 语言代码,kotlin 分支为 Kotlin 语言代码。Data Binding 生成用于访问布局变量和视图的绑定类,它将布局变量与布局中的视图链接起来。默认情况下,类的名称基于布局文件的名称,将其转换为Pascal大小写并向其添加Binding后缀。比如布局文件名是 activi.转载 2021-08-20 17:38:45 · 1179 阅读 · 0 评论 -
Retrofit用法详解
转载自: https://blog.csdn.net/duanyy1990/article/details/52139294一、 简介Retrofit是Square公司开发的一款针对Android网络请求的框架,Retrofit2底层基于OkHttp实现的,OkHttp现在已经得到Google官方认可,大量的app都采用OkHttp做网络请求,其源码详见OkHttp Github。 本文...转载 2019-02-15 11:53:43 · 238 阅读 · 1 评论 -
Android热修复Sophix
转载自: https://blog.csdn.net/wang_yong_hui_1234/article/details/79657246阿里热修复最新版本热修复技术现在已经很成熟了,至今还没有用过。虽然框架很多,但这里只介绍Sophix,原因不言而喻,对于技术来说谁的好用用谁的。Sophix亮点有一下几点使用起来配置简单,傻瓜式的接入功能也比较强大几乎兼容所有机型支持方法,资源...转载 2019-01-02 10:14:26 · 643 阅读 · 0 评论 -
Android里面label标签的区别
转载自: https://blog.csdn.net/donglindonglin/article/details/53513548突然发现activity和application里都可以设置android:label标签,那么他们两有什么区别呢? 示例:<application android:name="com.minking.imagecycleview.My...转载 2018-07-06 16:30:34 · 7576 阅读 · 0 评论 -
Assert.assertEquals作用
junit.framework包下的Assert提供了多个断言方法. 主用于比较测试传递进去的两个参数.Assert.assertEquals();及其重载方法: 1. 如果两者一致, 程序继续往下运行. 2. 如果两者不一致, 中断测试方法, 抛出异常信息 AssertionFailedError .查看源码, 以Assert.assertEquals(int expecte...原创 2018-07-31 10:39:31 · 140312 阅读 · 0 评论 -
Android各厂商自启动管理界面
最近在做后台服务常驻业务, 需要APP添加自启白名单功能. 参考了网上的一些资料, 做了一个帮助类: 自启白名单设置界面跳转功能. 有需要的朋友可以参考下. 如下: /** * Created by tgvincent on 2018/6/25. * 国内手机厂商白名单跳转工具类 * * @author tgvincent * @version 1.0 */public cl...原创 2018-07-13 17:35:56 · 3950 阅读 · 3 评论 -
Android跳转到系统的各个设置页面
ACTION_ACCESSIBILITY_SETTINGS : // 跳转系统的辅助功能界面Intent intent = new Intent(Settings.ACTION_ACCESSIBILITY_SETTINGS); startActivity(intent); ACTION_ADD_ACCOUNT : // 显示添加帐户创建一个新的...原创 2019-04-15 10:37:29 · 5174 阅读 · 0 评论 -
Android 6.0 低电耗模式 和 待机(休眠)模式
    因为公司项目在做VOIP网络电话功能, 所以就涉及到后台常驻服务: 驻留一个服务, 等待有网络电话打进来. 探索了多种后台常驻技术手段…在使用了现阶段能用的后台常驻服务手段后(用户感知比较强烈那种), 最后遇到了另一个难题: And原创 2018-12-25 09:30:53 · 3092 阅读 · 0 评论 -
Android应用耗电量分析与优化建议
转载自: https://www.jianshu.com/p/ebac88cdf9d6Battery Historian工具使用Battery Historian 一款由Google提供的Android系统电量分析工具,从手机中导出bugreport文件上传至页面,在网页中生成详细的图表数据来展示手机上各模块电量消耗过程,最后通过App数据的分析制定出相关的电量优化的方法。https://g...转载 2018-07-11 09:42:03 · 1716 阅读 · 0 评论 -
Shape详解
转载自: https://www.cnblogs.com/lang-yu/p/6112052.html 日常开发中,我们会遇到一些Button、Textview...等控件的背景是圆角矩形、圆形...等,和android默认的控件背景矩形不一致,此时shape的作用就体现出来了,我们可以根据shape属性画出很多我们意想不到的背景图案,下面我会把所有shape的属性都介绍一下。本文参考子&nb...转载 2018-09-26 17:13:06 · 2719 阅读 · 0 评论 -
Android 各种Dialog创建及其监听事件实现
转载自: https://blog.csdn.net/andie_guo/article/details/14145135在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择。关于Android Dialog的使用方法,已经有很多blog做出了详细的介绍(比如博客:7种形式的Android Dialog使用举例),但是只是给出了创建各种类型对...转载 2018-08-14 11:19:54 · 6785 阅读 · 1 评论 -
android六大布局和UI组件
一:android之六大布局1、在4.0以前版本中一共有五种布局,都是ViewGroup的子类。分别是AbsoluteLayout、RelativeLayout、LinearLayout、(FrameLayout)、TableLayout。而TableLayout是LinearLayout的子类。(中文分别是:绝对布局、相对布局、线性布局、帧布局、表格布局)。2、在2.2操作系统中将Ab...转载 2018-07-06 09:38:47 · 1452 阅读 · 0 评论 -
Android消息机制Handler解析(源码+Demo)
转载请注明出处: https://blog.csdn.net/chen_lian_/article/details/51031331 新建了一个qq群 482543750,欢迎一起学习Android的小伙伴加入。提供各种Android学习资料,面试资料,Android简历模板。Handler是开发人员在面试过程中最常见的问题之一了,这篇文...转载 2018-06-25 11:54:32 · 615 阅读 · 0 评论 -
应用常驻后台?需要用户对手机做配置
转载自: https://blog.csdn.net/Negrooo/article/details/79540067应用常驻后台?需要用户对手机做配置 现在 Android 软件想常驻后台已经不太可能了,各个手机厂商为了防止手机常驻后台采取了不同的解决方案,好处是用户告别了手机的卡顿、耗电、隐私泄露等现象,不好的地方就是用户设置太麻烦了。现在手机厂商有各自的手机管理软件,这种差别对...转载 2019-04-25 11:47:40 · 2760 阅读 · 0 评论 -
使用JobSchedule对任务进行合理排期
转载自: https://www.cnblogs.com/ouyanliu/p/7220279.html?utm_source=itdadao&utm_medium=referralJobSchedule 是Android5.0之后添加进去的,之前的版本没有。JobSchedule 原理是一种将任务安排在恰当的实际进行操作一种方案机制。具体提供了那些可选的时机,如下:在可用网...转载 2018-07-11 10:05:13 · 2949 阅读 · 1 评论 -
判断Service是否运行
后台常驻服务, 有时候需要判断Service是否在运行. 为此封装成一个工具类.有两种方法: 使用Android SDKAPI, 代码如下: /** * 判断Service是否正在运行 * * @param context 上下文 * @param serviceName Service 类全名 * @return ...原创 2018-07-19 09:26:20 · 4901 阅读 · 0 评论 -
如何判断Activity是否在前台显示
原文地址:https://www.niwoxuexi.com/blog/android00/article/223.html我们在Android开发过程中,经常会判断Activity是否在前台显示,来处理某些状态,这里谢了一个静态方法,供大家参考。方法一:用ActivityManager管理的...转载 2018-07-02 10:08:19 · 8965 阅读 · 5 评论 -
隐藏当前Activity到后台
转载自:https://blog.csdn.net/j20lin/article/details/72854913    有时候开发需要隐藏Acitvity,而不是关闭,这时候就需要使用到moveTaskToBack()函数。    moveTaskToBack()方法:在activity中调用 moveTaskToBack (boolean&转载 2018-07-02 14:55:41 · 1066 阅读 · 0 评论 -
Android中Activity四种启动模式和taskAffinity属性详解
转载自:https://blog.csdn.net/zhangjg_blog/article/details/10923643 在android应用开发中,打造良好的用户体验是非常重要的。而在用户体验中,界面的引导和跳转是值得深入研究的重要内容。在开发中,与界面跳转联系比较紧密的概念是Task(任务)和Back Stack(回退栈)。activity的启动模式会影响Task和Ba...转载 2018-07-02 16:03:40 · 135 阅读 · 0 评论 -
1像素Activity进程保活
Android8.0马上就要发布,Google对于安卓市场上各种应用占据内存空间的问题不断进行内存完善,我们的应用进程很难再保持不死之身,以前的服务唤醒在5.0已经失效,现在我们尽可能的做到保活方式就是提高进程的优先级,本文介绍一种1像素Activity保活进程的实现(据说QQ也在用)。 其整个逻辑就是在手机屏幕黑屏时,...转载 2018-07-02 10:19:42 · 410 阅读 · 0 评论 -
Android进程保活实践(上篇)
转载自原文: https://www.jianshu.com/p/53c4d8303e19下篇:https://www.jianshu.com/p/7cdae4f7763a前言进程保活的关键点有两个,一个是进程优先级的理解,优先级越高存活几率越大。二是弄清楚哪些场景会导致进程会kill,然后采取下面的策略对各种场景进行优化:提高进程的优先级在进程被kill之后能够唤醒进程优先级A...转载 2018-07-03 09:47:48 · 611 阅读 · 0 评论 -
Android进程保活实践(下篇)
原文转载自: https://www.jianshu.com/p/7cdae4f7763a前言之前写过一篇android进程保活实践(https://www.jianshu.com/p/53c4d8303e19),文章中提到的保活方法其实很早前别人都总结过,而我写那篇文章的本意,其实更多是总结一种进程保活的思路,比如文中提到的进程优先级oom_adj的概念,进程被kill的3种场景,国产手机...转载 2018-07-03 09:54:29 · 246 阅读 · 0 评论 -
Service粘性启动方式
转载自:https://blog.csdn.net/wei_chong_chong/article/details/50463593 Service的粘性表现为其所在进程被意外中止后,该Service是否可以自动重新被启动。默认情况下,使用 startService() 方法激活的Service组件时粘性的,则即使所在进程被意外中止了,稍后该Service依然会被自动创建出来。设...转载 2018-07-09 21:36:33 · 2468 阅读 · 0 评论 -
探讨一种新型的双进程守护应用保活
转载自: http://blog.csdn.net/andrexpert/article/details/53485360APP保活系列(最高支持到Android 7.0):(1) 探讨一种新型的双进程守护应用保活方法(2) 探讨Android6.0及以上系统APP常驻内存(保活)实现-争宠篇(3) 探讨Android6.0及以上系统APP常驻内存(保活)实现-复活篇&nbs...转载 2018-07-04 09:14:59 · 337 阅读 · 1 评论 -
Android 深入理解Loader机制 让APP轻装上阵
转载自: https://blog.csdn.net/sk719887916/article/details/51540610本文简书同步发布,谢谢关注。http://blog.csdn.net/sk719887916/article/details/51540610Android开发者都经历过APP UI开发不当 会造成overDraw,导致APP UI渲染过慢,但是很多人却没听过ov...转载 2018-07-10 10:57:37 · 301 阅读 · 0 评论 -
自定义手机锁屏界面
转载自: https://blog.csdn.net/chenrenxiang/article/details/72528952前两天尝试使用『悦跑圈』app跑步,发现一个蛮有意思的功能。手机锁屏之后,再点亮手机,手机锁屏界面变成了悦跑圈的界面,并且实时显示跑步的里程、速度等信息。觉得这个功能还蛮实用的,于是想试着实现一下。搜索了一些资料,具体实现过程如下:1. 首先,锁屏界面是一个单...转载 2018-07-05 17:48:44 · 1575 阅读 · 0 评论 -
android.intent.action.MAIN 和 android.intent.category.LAUNCHER
太久没换手机主题, 是时候换一下啦. 然后更换手机主题的时候发现. 手机主题也是一个应用, 但为什么桌面上找不到图标呢? 之前一直对AndroidMainFest.xml配置文件<activity android:name=".MainActivity" android:launchMode=&a原创 2018-07-06 11:27:06 · 3565 阅读 · 0 评论 -
Android电源锁和屏幕锁帮助类
后台常驻服务, 使用了1像素Activity保活手段:在息屏时, 启动1像素Activity在亮屏时, 关闭1像素Activity需要判断屏幕是否亮屏, 是否解锁. 特地写成一个帮助类. 首先AndroidMainFest中配置权限:<!--息屏亮屏1 --&amp原创 2018-07-24 11:27:41 · 1517 阅读 · 0 评论 -
Android 自定义 Dialog 大小 位置 样式
自定义大小和位置在Android 5.0以上 自定义Dialog时发现无法横向铺满屏幕 代码大致如下:Dialog dialog = new Dialog(this);dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);dialog.setContentView(R.layout.dialog_layout);Window di...原创 2018-08-30 11:23:59 · 10803 阅读 · 0 评论