
android
文章平均质量分 90
IT互联网大叔
这个作者很懒,什么都没留下…
展开
-
秒懂:kotlin 集合操作fold vs reduce
更多精彩原文: 组件化开花,就问你香不香 架构师之路:重读设计模式《Head First 设计模式》 kotlin如何解决java开发痛点,让程序员happier google为何选择kotlin?kotlin如何解决java开发痛点【续】? 深入浅出,kotin Any类 深入kotlin:const 对话 val,有必要用const申明变量吗? 一分钟入门kotiln协程,线程切换 android获取进程名函数,如何优化到极致? android定位权限适配看这篇就够了 突破A原创 2021-07-18 11:06:58 · 1051 阅读 · 0 评论 -
android开发的大利好: windows11发布
https://www.bilibili.com/video/BV1w44y1z71x?from=search&seid=17486204796392603309just one more small surprise(来一个小小的蛇扑莱斯。)android apps coming to windows(android apps 即将登陆windows系统)I mean coming to windows they‘ll be integrated in your taskbar(我.翻译 2021-07-18 10:52:31 · 297 阅读 · 0 评论 -
组件化开花,就问你香不香
从2017年只有几个大厂在做组件化,到今天已经繁花似锦。越来越多的团队,越来越多的项目都做了组件化。大叔相信即使你没有做过组件化项目,但是,对组件化也早就听烂了。但是,组件化开发多少有些技术门槛。有很多大神写过相关文章,通俗易懂的不多。深入浅出的更不多。大叔不才,愿意冒着不要脸的风险一试,通俗易懂、深深浅浅的来聊聊组件化开发,如果对你有一点点启发,请记得回来给大叔点个赞。这篇blog,大叔酝酿了很长长长长长长长长长长长长长长时间。一、单工程开发 -> 多module分层开发这种分.原创 2021-07-18 10:49:56 · 183 阅读 · 1 评论 -
架构师之路:重读设计模式《Head First 设计模式》
一、前言前些年看的似懂非懂的技术书,现在重头看,好像并不难,而且会有种酣畅淋漓的感觉。《设计模式》就是如此,大学那会,学设计模式,无论大叔怎么努力学,都是似懂非懂的状态;大叔一度怀疑自己,是不是不适合做程序员?是不是选错专业了?大叔最近把《Head First 设计模式》重头刷了一遍,真的受益匪浅。此情此景,大叔特别想絮叨两句,别嫌我烦哈。当我们遇到学不会、学不通的技术时,千万不要怀疑自己;大叔觉得,程序员这个职业,没有适合不适合的说法,只有喜欢与不喜欢的区别。你若喜欢这个行业,他就一定适合原创 2021-05-26 07:43:49 · 407 阅读 · 5 评论 -
2020年,小小程序员平庸但不怂的一年
别人的2020忙着写了好几本掘金小册;大叔连写小册的资格都没有。别人的2020,40万粉丝,却依然谦称道:小小程序员平凡的一年;2020大叔有103位“掘金关注者”,只能自称到:小小程序员平庸的一年;看了大佬们的2020总结,惭愧不如。大叔的2020是平庸;承认自己平庸是多么痛苦的过程;不过没关系,只要不怂,总有翻盘的希望……一、2020年的股市今年的股市行情真的不是一般的好。身边股市赚钱的人一大把。赚大钱的人也不少。我的港股账号从年初的5万资产,玩到现在15万了。A股也.原创 2020-12-11 23:36:45 · 340 阅读 · 0 评论 -
java动态代理,轻轻松松从入门到精通
动态代理、动态代理、动态代理,首先它是动态的,然后他能实现代理模式。“动态”、“代理”,这两个词将贯穿全文。一、什么是动态代理java的动态代理,首先它是用来实现**“代理模式**”的。然后他是动态的可以灵活的代理**“任何类”**【当然这个类需要有接口】。我们先来看看动态代理能实现的效果。如上示意图,类TestA、TestB想调用TargetObject0、TargetObject1……等目标对象的任何方法,都需要经过InvocationHandler的invoke方法。注意这是说的.原创 2020-09-24 00:33:17 · 1397 阅读 · 1 评论 -
google为何选择kotlin?kotlin如何解决java开发痛点【续】?
上篇,kotlin如何解决java开发痛点,让程序员happier 写的很长,大叔以为在快餐式学习的时代,没几个人会看到最后。没想到,看完整篇的掘友还不少。@懒洋君 鼓励大叔,让大叔再写一篇,多写几个痛点,说是会来给大叔点赞,希望不是骗大叔的~ 哈~今天这篇比上篇还长,你还会看完整篇吗?哈哈哈~~一、google为何选择kotlin?我们先来聊点有趣的八卦:谷歌为何选择kotlin,而不是继续改造java?谷歌选择kotlin的原因真的是因为kotlin比java更好用吗?大叔可以肯定的说,.原创 2020-07-13 23:36:27 · 5020 阅读 · 3 评论 -
kotlin如何解决java开发痛点,让程序员happier
一、引言A modern programming language that makes developers happier.正如官网的slogan所描述:kotlin,是一门让程序员写代码时更有 幸福感 的 现代 语言。同时,也正如维基百科里介绍:JetBrains公司希望Kotlin能够推动IntelliJ IDEA的销售kotlin是一门奔着钱而生的语言,我相信他一定会成为一门有 “钱途” 的语言。JetBrains这家公司真的把程序员当 人,把程序员当用户来对待。从kotli原创 2020-06-21 21:45:46 · 5653 阅读 · 1 评论 -
打破你的认知,java,除以0一定会崩溃吗?
一、引言在这个浮躁的社会,我们都学会了一种技能,快速学习使用各种开源库、开源框架。学习使用各种高端大气的技术,热修复、插件化、模块化、ORM……这些技能固然重要,但是有时候也要放慢脚步,耐着性子,打打基本功。不要看不起这些零零碎碎的基础知识,这些基础日积月累,慢慢的会让你跟同事拉开差距。接下来,我们直奔主题。开始我们的基本功。二、代码1System.out.println("1/0=" + 1/0);大叔的灵魂拷问:上面的代码会崩溃吗?如果不会,会输出什么呢?上面的代码会崩溃吗原创 2020-06-07 22:06:29 · 3997 阅读 · 7 评论 -
把断言(Assert)发挥的淋漓精致,提高代码的健壮性
目录 一、什么是断言,什么情况下应该使用androidAssert? 二、在release版本中移除断言代码,只在debug中保留 三、集成AndroidAssert库 总结一、什么是断言,什么情况下应该使用androidAssert?通常断言(assert)是在单元测试时,用来校验函数返回的结果。在自动化测试用来校验程序运行结果。但是我们接下来要讨论的并不是单元测试中使用断言,而是在项目业务代码中使用断言。我们一起来看几个,大家非常熟悉的例子。这些情况下使用断言会让代码原创 2020-06-02 23:45:58 · 3646 阅读 · 0 评论 -
gradle版本与android的gradle插件版本兼容Unable to find method org.gradle.api.tasks.compile.CompileOptions.setB
今天踩了一个gradle版本的坑,记录一下一、编译报错,如下完整报错日志:编译失败ERROR:Unable to find method 'org.gradle.api.tasks.compile.CompileOptions.setBootClasspathERROR: Unable to find method 'org.gradle.api.tasks.compile.CompileOptions.setBootClasspath(Ljava/lang/String;)V'.Possib.原创 2020-05-29 01:27:49 · 6194 阅读 · 1 评论 -
一分钟入门kotiln协程,线程切换
本文从头到尾,就两个字:简单。一、android项目中引入协程库非常简单,在kotlin的android项目中,添加两个依赖库,便可以享受协程了。如下commit:https://github.com/vectorzeng/KotlinStudy/commit/49dbee4e2083ec786e755d5ca081cf35ce61ab15implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.3'implement.原创 2020-05-25 07:03:51 · 7996 阅读 · 0 评论 -
深入浅出,kotin Any类
一、Any vs Object,两个类的成员变量的差异。public open class Any { public open operator fun equals(other: Any?): Boolean public open fun hashCode(): Int public open fun toString(): String}public clas...原创 2020-05-05 19:10:51 · 3568 阅读 · 0 评论 -
android时间戳总结:System.nanoTime(),System.currentTimeMillis(),SystemClock
今天的主题,从头到尾就两个字:时间。坚持看完整篇blog,一定会有收获。开发中经常要用到时间戳,下面将会详细介绍,如下系统函数的功能和差异 :System.nanoTime()System.currentTimeMillis()SystemClock.uptimeMillis()SystemClock.elapsedRealtime()SystemClock.currentThre...原创 2020-05-04 21:34:36 · 9218 阅读 · 1 评论 -
android开发奇技淫巧《通过main方法,写单元测试》
阅读完这篇blog大概需要3分钟。假如我们在android项目里写一个java的main方法会怎么样?这是一个有趣的问题,并且会让你惊喜。如下代码段:import android.app.Activity;import android.os.Bundle;import androidx.annotation.Nullable;import java.util.Arrays...原创 2019-11-24 23:52:16 · 3217 阅读 · 0 评论 -
详解:android O 对Service的限制【Background Execution Limits】
目录哪些APP内的Service后台运行会被系统限制?android O 对Service增加了哪些限制?疑惑:存在通知栏的App,是否属于前台APP?如何判断App处在后台?如何判断APP处在空闲期?如何做到:APP进入空闲期时,不让系统立即回收Service, 启动Service不Crash。官方文档官方文档摘抄重要部分1. 哪些app的Service后台运行会...原创 2019-11-18 23:48:32 · 3558 阅读 · 1 评论 -
突破Android O 系统对Service的限制
接着上一篇《android O 对Service的限制【Background Execution Limits】》内容。我们将解决下面两个问题,并提出一个有趣的问题。app处在空闲期(idle)时,如何启动Service?在App进入空闲期(idle)时,如何让Service不被立即回收?1. App处于空闲期时,如何启动一个Service?JobService,可以再空闲...原创 2019-11-18 23:47:07 · 3339 阅读 · 0 评论 -
大叔给自己写了个大纲
前言从2012年开始,断断续续,一共写了10来篇博客,一直没坚持下来。于是给自己定了个小目标,写了这个大纲。这次一定要坚持下来:非特殊情况外,不管多忙多累,每周至少一更,周期半年+。这次想坚持写博客的原因:给自己6年多工作经验一个交代:不能只是年纪在长大,眼看着,小哥哥变成了大叔;技术成长,技术积累也要让人看的见,才能踏实。提高:写作能力,文字组织能力,表达能力。都说程序员3年一...原创 2019-11-18 23:26:36 · 267 阅读 · 0 评论 -
3分钟学会,Android开发必备技能之《adb root安卓模拟器,协助:问题跟进、android系统分析、竞品分析》
目录1.如下图,执行命令adb root,可直接root模拟器。2.adb root成功之后:3.注意:你有可能adb root失败,提示如下日志:4.下篇预告:3分钟学会,Android程序员必备技能之《android源码下载及阅读》如下图,执行命令adb root,可直接root模拟器。adb root成功之后:可以进入系统所...原创 2019-10-27 23:27:17 · 3676 阅读 · 0 评论 -
3分钟学会,Android程序员必备技能之《在线查看 android 开发文档 && 离线查看android 开发文档》
目录1.在线查看 android 开发文档2. 如何而离线查看android 开发文档?3. 其他下篇预告:3分钟学会,Android程序员必备技能之《adb root安卓模拟器:帮助问题跟进、android系统分析、竞品分析》1.在线查看 android 开发文档 https://developer.android.google.cn/ 千万注意,是“....原创 2019-10-21 09:44:09 · 3601 阅读 · 0 评论 -
android 实现悬浮控件
实现桌面View 如桌面歌词原创 2014-10-13 20:37:45 · 8943 阅读 · 0 评论 -
android 代码优化:关闭输出日志
关闭日志输出 我们在应用开发时,经常会输出各种日志来debug代码。但是等到应用发布的apk运行时不希望它输出日志。 那么我们可以通过proguard优化代码来删除各种日志输出代码。在打出的apk中就不会再输出日志。android 关闭输出日志Log.v(),Log.i(),Log.w(),Log.v(),Log.e()等去除android 的log日志:原创 2014-03-22 02:57:23 · 36582 阅读 · 10 评论 -
AndroidManifest 属性解析以及 代码动态获取属性值
AndroidManifest.xml文件部分属性配置解析,以及如何在代码中获取指定配置值。<manifest package="com.jiese.test" android:versionCode="1" android:versionName="1.0" > <application android:debuggable="fal原创 2014-03-21 22:38:17 · 7708 阅读 · 0 评论 -
android 处理鼠标滚轮事件
android处理滚轮事件,并不是如下函数:1) public boolean onKeyDown(int keyCode, KeyEvent event) 2) public boolean dispatchKeyEvent(KeyEvent event) 3) public boolean onTouchEvent(MotionEvent event)原创 2014-03-03 21:06:17 · 15008 阅读 · 0 评论