栏目: Android

Android监听键盘状态和获取键盘高度

Android暂时还没有提供一个合适的API来获取/监听键盘的状态和高度,而我们又经常会有这个需求.最近我的一个项目中,在ugc页面需要在键盘顶部,紧贴着键盘显示一个文字提示,当键盘消失时就隐藏.因此,我需要监听软键盘的打开/关闭,以及获取它的高度.ViewTreeObserverAviewtree...

2021-07-06 152 0 0 阅读全文

Android APP终极瘦身指南

第1条:使用一套资源这是最基本的一条规则,但非常重要。对于绝大对数APP来说,只需要取一套设计图就足够了。鉴于现在分辨率的趋势,建议取720p的资源,放到xhdpi目录。相对于多套资源,只使用720P的一套资源,在视觉上差别不大,很多大公司的产品也是如此,但却能显著的减少资源占用大小,顺便也能减轻设...

2021-06-17 166 0 0 阅读全文

Flutter 如何封装文本输入框组件

上一篇(Flutter开发一个登录页面)提到了文本框封装度不够,导致代码复用性不高的问题。在实际开发过程中,往往开始是完成功能层面的开发,然而再考虑组件封装和代码优化。当然,组件封装越早做越好,因为这样会提高整个团队开发的规范性和效率。UI组件封装的考虑要点封装一个UI组件,通常需要考虑下面这三个点...

2021-06-07 238 0 0 阅读全文

Android手机信号强度检测详细介绍

android手机信号强度检测最近在面试的时候被问到一个问题,当手机处于弱网状态下,如何处理,如何监听网络信号强度变化。这里先了解关于手机信号强度的相关几个概念Android手机信号强度介绍android定义了2种信号单位:dBm和asu。它们之间的关系是:dBm=-113+2asu,这是googl...

2021-05-25 153 0 0 阅读全文

Flutter里面错误捕获的正确方法

背景我们知道,在软件开发过程中,错误和异常总是在所难免。不管是客户端的逻辑错误导致的,还是服务器的数据问题导致的,只要出现了异常,我们都需要一个机制来通知我们去处理。在APP的开发过程中,我们通过一些第三方的平台,比如Fabric、Bugly等可以实现异常的日志上报。Flutter也有一些第三方的平...

2021-04-30 147 0 0 阅读全文

Flutter生成图片保存至相册的示例

遇到一个需求,需要用Flutter生成图片,最终实现的效果如下:基本思路使用Canvas绘制图片中各元素,然后使用PictureRecorder进行记录生成。添加依赖qr_flutter:^3.1.0image_gallery_saver:^1.2.2fluttertoast:^4.0.0实现代码i...

2021-06-22 150 0 0 阅读全文

Android开发之微信底部菜单栏实现的几种方法汇总

sky-mxc总结转载注明:Android开发之微信底部菜单栏实现的几种方法汇总最近总结几种类似于微信的底部菜单实现的几种方式这里做个总结。实现方式实现的方式有很多种这里总结最常见的几种方式,以后再添加其他的。viewPager+RadioGroupviewPager+FragmentTabHost...

2021-05-11 168 0 0 阅读全文

彻底搞懂Android文件存储:内部存储,外部存储以及各种存储路径解惑

:对于任何一个应用来说,无论是PC端应用还是Android应用,存储肯定是必不可少的。对于很多做Android开发的同学来说,可能认为文件存储很简单,调用一些诸如getFilesDir,getExternalStorageDirectory方法行了,但是虽然说它们会调用相应的方法来实现简单的数据存储...

2021-06-28 150 0 0 阅读全文

Android客户端实现注册、登录详解(1)

我们在开发http://lib.csdn.net/base/15App时难免要与服务器打交道,尤其是对于用户账号信息的注册与登录更是每个http://lib.csdn.net/base/15开发人员必须掌握的技能,本文将对客户端的注册/登录功能的实现进行分析,不到之处还请指出。在这里我们仅讨论客户端...

2021-05-11 157 0 0 阅读全文

Android实现倒计时功实现

好久没有写博客了,趁着年末,总结了下最近一年所遇到的一些技术问题,还有一些自定义控件,比如倒计时功能首先倒计时的实现方式1.Handler2.Timer3.RxJava4.ValueAnimator5.其他这些方式中,我选择了ValueAnimator,主要是它的API比较友好,不需要我们去封装太多...

2021-07-06 171 0 0 阅读全文

Android Studio多渠道批量打包及代码混淆

一、批量打包1、集成了友盟统计,并在AndroidManifest.xml中添加了如下代码2、在app的build.gradle的android标签下添加如下代码:productFlavors{myapp{}_360{}appchina{}hiapk{}}productFlavors.all{fla...

2021-05-11 187 0 0 阅读全文

Android—Android Lint工具项目资源清理详解

最近维护的项目已经有两年多,经过很多前辈的迭代,项目并没有变得健壮,而变得很臃肿.用Androidlint工具清理了一次,清楚了不少废弃的布局和资源.1.Androidlint工具可以右键项目,Androidtools,退出的时候clearlintmarkers即可也可以如图:2.结果出来了,分析分...

2021-05-25 134 0 0 阅读全文

Android Studio提示"Unable To Find Valid Certification"的解决办法

此篇总结的解决方案有些过时,请移步我的另一篇博文,将为大家带来最新的解决方案:AndroidStudio构建项目提示“UnableToFindValidCertification”最新解决方案不知道大家有没有跟我有同样的体会,AndroidStudio的报错真的折腾人,提示信息一点都不明确,也不会告...

2021-06-28 187 0 0 阅读全文

Android实现Unity3D下RTMP推送的示例

像Unity3D下的RTMP或RTSP播放器一样,好多开发者苦于在Unity环境下,如何高效率低延迟的把数据采集并编码实时推送到流媒体服务器,实现Unity场景下的低延迟推拉流方案。关于屏幕采集,有两种方案:1.直接封装Android原生的屏幕采集工程,在unity提供接口,拿到屏幕权限后,获取屏幕...

2021-06-22 463 0 0 阅读全文

Android使用ContentProvider初始化SDK库方案小结

做AndroidSDK开发的时候,一般我们会将初始化的方法封装为,然后让调用SDK的开发者在Application的onCreate方法中进行初始化。但是目前一些主流的SDK框架,并没有提供相关的方法进行初始化,但是我们在使用的时候也能正常使用,通过挖掘其源码,可以看出来他们一般使用的Content...

2021-04-26 155 0 0 阅读全文

Android AIDL实例与原理分析

为使应用程序之间能够彼此通信,Android提供了IPC(InterProcessCommunication,进程间通信)的一种独特实现:AIDL(AndroidInterfaceDefinitionLanguage,Android接口定义语言)。简单来说,AIDL就是定义一个接口,客户端(调用端)...

2021-06-28 172 0 0 阅读全文

Android Studio实现音乐播放器

Androidstudio音乐播放器,供大家参考,具体内容如下实现目的:利用广播在myapplication中原本button点我暂停按钮是灰色无法点击的,此时发送一条短信给自己的安卓手机,按钮变成黑色,音乐开始播放,此时点击点我暂停按钮,音乐停止。结果截图:发送短信给自己后:,点我暂停按钮变成黑色...

2021-04-13 158 0 0 阅读全文

自定义GridView仿头条频道拖动管理

项目中遇到这样个需求:app的功能导航需要可拖动排序,类似头条中的频道拖动管理。效果如下,gif不是很顺畅,真机会好很多。虽然类似的文章网上搜一下有很多,但写的都不令人满意,注释不清晰,而且动画还不够流畅。经本人整理优化后,拿出来供后续有需要的使用。实现原理:gridView作为基本控件Window...

2021-07-06 137 0 0 阅读全文

Android在Service和Activity之中实现音乐播放进度条传递信息的两种方式和MediaPlayer做音乐播放器采坑以及解决办法

实现播放时的进度条显示,或是定时从service获取某些信息,是我们日常开发中经常遇到的需求,下面介绍当音乐再service中运行时,activity如果获取音乐进度信息的两种方式:一、在activity中建立消息接收机制我们需要在activity中建立一个用于接收信息的handler(handle...

2021-06-29 215 0 0 阅读全文

Android Activity的4种启动模式图文介绍

记得第一次探讨Activity的启动模式,是在2017年8月份,那个时候对一年后走出校门的未来很是憧憬,时间真快,已经毕业四个月,工作和生活也都趋于稳定。一、小相信很多人和我一样,在初学Android甚至初入职场的时候不了解Acticity的启动模式,或者为了面试刷题刷到了,但并不理解启动模式的作用...

2021-04-18 171 0 0 阅读全文