Android进阶
文章平均质量分 71
dodod2012
其实我是一个搬运工,搬走了别人的砖头从来不留名O(∩_∩)O哈哈~
展开
-
Java的优先级任务队列的实践
优先级任务队列 PriorityBlockingQueue(阻塞优先级队列)、Comparable转载 2023-09-21 16:40:55 · 189 阅读 · 0 评论 -
[Android]解决HttpURLConnection上传大文件时出现OOM问题
HttpClient转载 2022-10-25 14:59:34 · 803 阅读 · 0 评论 -
Android:JNI之Java和C层的相互调用及多线程的回调实现
Java层存储JNI层动态创建的C++对象(Java调用C++)C++中存放Java对象(C++回调Java)实现多线程的回调转载 2022-08-12 16:27:24 · 2083 阅读 · 0 评论 -
检测是否具有悬浮窗权限Settings.canDrawOverlays(context) 不靠谱的解决方法
悬浮窗Settings.canDrawOverlays(context)转载 2022-07-13 15:31:22 · 1850 阅读 · 0 评论 -
Android6.0源码分析之录音功能(一)
转载转载转载界面部分参照如下代码:SoundRecorder从现在开始一周时间研究录音,下周出来一个完整的博客,监督,激励!!!2017-02-09--------2017-02-17----------------------------------------------------------------------------------------------------------------------------------------------------------转载 2022-04-12 16:25:05 · 1246 阅读 · 0 评论 -
Android 8.1/9.0 一份能用的录音机源码
源码位置SoundRecorder原来的源码存在如下的问题1、app 图标不可见2、不支持录音文件列表浏览3、app 主界面是对话框风格其他问题1、没有外置SD卡无法录音。 解决办法:改为存到手机里,改一下startRecording()中sampleDir路径,这个都会吧。2、import android.os.storage.VolumeInfo;import android.os.storage.DiskInfo;这两个类访问,不到。要么用反射,要么相转载 2022-04-12 16:08:51 · 885 阅读 · 0 评论 -
封装一个阻塞队列,轻松实现排队执行任务功能!
前言个人觉得队列的使用在项目开发中挺多地方可以用到的,所以将如何封装一个队列的过程记录下来,总体来说难度并不大,但毕竟能力有限,如果各位有好的建议或意见欢迎提出来,如果本文能帮到你的话,记得点赞哦。需求背景在项目开发中,会经常遇到一些需要排队执行的功能,比如发动态时上传多张图片,需要一张一张的上传,比如直播间动画连需发送或者收到消息需要展示时,需要一个一个动画去展示等等场景,这时候会容易想到用队列去实现,但是我想不少小伙伴会直接弄一个 list,存着要执行的任务,然后通过递归的方式去遍历列表实现转载 2020-12-09 14:57:35 · 768 阅读 · 1 评论 -
Android 消息队列
Android 消息队列PriorityBlockingQueue(阻塞优先级队列)、Comparable首先看看要封装的队列需要有什么功能在实际中,我们执行的任务大概可以分两种,一个是有明确的执行时间的,比如,要连续显示10个动画,每个展示5秒这种。一个是没明确的执行时间的,比如连续上传10张图片,每个上传任务的完成时间是需要等到上传成功回调回来才知道的这种。所以队列第一个功能是每个任务都可以兼容这两种情况,而且当然是一个执行完再执行下一个,排队执行既然要排队执行,当然会有优先级之分,所转载 2020-11-13 15:37:37 · 4087 阅读 · 6 评论 -
StorageManager获取U盘挂载状态
StorageManager是Android SDK中管理存储设备的一个类。其中的存储设备分内部存储和外部存储,外部存储可以有SDCard、U盘等其他挂载的外设。StorageVolume代表的是一个设备信息的数据结构,里面包含了名称、路径、挂载状态等等信息。以前获取设备列表的方法大多是通过反射获getVolumeList()方法获取到StorageVolume[]数组,但是现在发现完全没有必要的,通过getStorageVolumes()方法便可以获取到StorageVolume的集合。只是在取Stor原创 2020-08-13 16:47:41 · 1666 阅读 · 0 评论 -
Android开发——Android中常见的4种线程池(保证你能看懂并理解)
0.前言转载请注明出处:http://blog.csdn.net/seu_calvin/article/details/52415337使用线程池可以给我们带来很多好处,首先通过线程池中线程的重用,减少创建和销毁线程的性能开销。其次,能控制线程池中的并发数,否则会因为大量的线程争夺CPU资源造成阻塞。最后,线程池能够对线程进行管理,比如使用ScheduledThreadPool来设置延迟N秒后执行任务,并且每隔M秒循环执行一次。下面会通过介绍线程池中的真正实现者——ThreadPoolExecu转载 2020-07-22 16:32:12 · 546 阅读 · 0 评论 -
Android获取拓展外置SD卡(可插拔)路径及读写外置SD卡的方法
有需求做一些类似文件管理器的,就会用到获取外置可移动SD卡的路径。一般的通过Environment或者Context获取的都是手机自带的存储卡路径,类似storage/emulated/0/加后缀。由于谷歌之后的意思是像ios一样,不支持外置USB或者外置可移动SD存储。但是国内的厂商一般都支持。先大概分个类,6.0以下的使用方法一,6.0以上的使用方法二。Android10 三星S10亲测如...转载 2020-03-02 16:50:40 · 2413 阅读 · 0 评论 -
【Android SDK 开发】随想录:开发一流Android SDK
原文地址:https://blog.csdn.net/dd864140130/article/details/53558011 本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布自从前段时间离职后,因为个人的事情一直没有选择再工作,也导致原有的文章并没有按时产出.最近个人的事情整理的也差不多了,恰好有不少朋友来问有关SDK开发方面的...转载 2019-04-02 16:35:10 · 330 阅读 · 0 评论 -
Android 开发:由模块化到组件化(一)
原文地址:https://blog.csdn.net/dd864140130/article/details/53645290 在Android SDK一文中,我们谈到模块化和组件化,现在我们来聊聊组件化开发背后的哪些事.最早是在广告SDK中应用组件化,但是同样适用于普通应用开发以下高能,请做好心理准备,看不懂请发私信来交流.本文不推荐新手阅读,如...转载 2019-04-02 16:37:27 · 191 阅读 · 0 评论 -
【Android动态加载】Android 动态加载(二) - 基础篇(二)
原文地址:https://www.jianshu.com/p/8fbc09adbde4上一节我们记录了动态加载了基础知识:动态加载的定义、好处、Java中的动态加载与Android中的动态加载、及Android中动态加载的大致流程,那么这一节我们就来记录下ClassLoader类加载器、动态加载的两种方式。1. 什么是类加载器?类加载器就是ClassLoader,专门用于处理类加载问题...转载 2019-04-15 16:21:29 · 231 阅读 · 0 评论 -
【Android动态加载】Android 动态加载(三) - 类的加载流程源码分析
原文地址:https://www.jianshu.com/p/3370b43bf7c01. 概述基于上节课我们分析的Activity的启动流程后,那么这节课我们就来分析下类的加载流程,流程图如下:类的加载机制.png2. 分析举个例子:比如从MainActivity跳转到TestActivity,那么就针对于这样一个具体的场景,就来分析下这个找类的过程,即就是类的加载...转载 2019-04-15 16:39:03 · 214 阅读 · 0 评论 -
【精品转载】Android代码混淆技术总结
原文地址:https://www.anquanke.com/post/id/85843一、前言最近一直在学习Android加固方面的知识,看了不少论文、技术博客以及一些github上的源代码,下面总结一下混淆方面的技术,也算是给想学习加固的同学做一些科普,在文中将到的论文、资料以及源码,我都会给出相应的链接,供大家进一步去深入学习。后面我会弄成一个系列的文章,如有一些混淆技术没讲到,还希望...转载 2019-04-03 11:03:46 · 555 阅读 · 0 评论 -
【Android动态加载】Android 动态加载(四) - 简单demo实现
原文地址:https://www.jianshu.com/p/ea66f6e287881. 动态加载?此处的动态加载指的是从服务器或者其他地方获取 jar包,在运行的时候,加载jar包,然后与app中的jar包互相调用,这里为了方便演示效果,直接把 jar包放在 assets目录下,在程序运行的时候直接从 获取assets下边的jar包,来模拟从服务器端获取2. 动态加载原理?An...转载 2019-04-16 10:01:02 · 806 阅读 · 0 评论 -
【Android动态加载】Android 动态加载(六) - 360开源框架DroidPlugin的使用介绍
原文地址:https://www.jianshu.com/p/7dd23d39d11d1. 360的DroidPlugin插件化架构使用步骤详见360的github具体demo:https://github.com/Qihoo360/DroidPlugin1>:打开上边网址,下载源码;2>:使用AS导入DroidPlugin的lib库,添加依赖;3>:让BaseA...转载 2019-04-17 11:10:25 · 450 阅读 · 0 评论 -
【Android SDK 开发】Android SDK开发技术分享
原文地址:https://blog.csdn.net/zhangxinjin/article/details/51602577 最近在工作中负责统一支付平台的SDK开发部分,就此总结下SDK开发的技术点、注意事项、与普通app开发的差别,作为自我总结,也作为公司内部互相学习的分享,希望有Android开发需求或者对Android有兴趣的同学(互相学习称为...转载 2019-04-02 16:01:10 · 1713 阅读 · 0 评论 -
【Android SDK 开发】sdk开发项目心得
原文地址:https://blog.csdn.net/jackzhouyu/article/details/52497594 这是博主第一次sdk开发工作,是开发过程中的感悟和心得,写得不好,还请指正公司背景是一家专门从事sdk开发服务的公司,这次楼主接到sdk开发的任务,项目经理告知说可以依靠之前公司的sdk进行修修改改就可以完成任务,楼主就这么...转载 2019-04-02 15:59:16 · 2066 阅读 · 1 评论 -
【Android SDK 开发】浅谈SDK的开发与设计
原文地址:https://blog.csdn.net/swjbjxr/article/details/50987496 SDK,全称:Software Development Kit,作为一种软件产品为程序员所熟知。SDK由程序员开发,提供给程序员,有着非常独特的开发和设计特点。如果说语言是程序员与设备的交流,那么SDK完成程序员与程序员之间的...转载 2019-04-02 15:54:03 · 1316 阅读 · 0 评论 -
FilePicker一个Android文件选择器
原文地址:https://php.ctolib.com/article/wiki/61529文件选择器效果图:钉钉中上传的附件的文件选择器,可以选择常用文件和根据文件夹选择全部文件,demo中也实现了这种效果 界面跟钉钉不一样,展示方面没啥好说的每个项目的UI展示可能都不一样,关键是数据是怎么或得的。介绍:http://blog.csdn.net/mingyunxiaohai...转载 2019-03-28 14:42:29 · 15201 阅读 · 0 评论 -
【Android SDK 开发】谈谈Sdk迭代开发设计需要考虑的方面
原文地址:https://mp.weixin.qq.com/s/mXFBaoRHGnzb3DIlCeeEzA作者:Trilen链接:http://blog.csdn.net/u010019468/article/details/75425742本文由作者投稿推送。Sdk开发设计与Apk开发不同的地方还是有些明显的不同之处,明显的区别是使用对象不一样,Sdk是基于开发者使用...转载 2019-04-01 16:49:06 · 1394 阅读 · 0 评论 -
【Android SDK 开发】SDK开发过程的一些问题总结
原文地址:http://ju.outofmemory.cn/entry/145292过去的一年多时间里都在做SDK, 这一年从Web开发转到Android开发也算是成功的转型了, 被坑了很多次, 也坑了很多人很多次, 在各种互坑的过程中学到了些东西. 写在这里也算是对过去一年坑别人的一次反省(阿弥陀佛~~).SDK有一个很大的特点, 它的用户是程序猿(这是我大学时代梦寐以求的呢); 而Ap...转载 2019-04-01 16:30:18 · 616 阅读 · 0 评论 -
【Android SDK 开发】安卓开发常用工具和第三方库汇总
原文地址:https://academy.realm.io/cn/posts/tools-and-libraries-for-common-android-problems/我的名字叫 Ryan Cooke 我在 Pinterest 的核心体验团队工作。今天在这里我会谈论各种 Android 库:它们各自的优点,缺点和其他相关知识。目的是高效地概述尽可能多的库,这样,当你遇到一个问题的时候,你...转载 2019-04-01 15:50:22 · 1806 阅读 · 0 评论 -
【Android SDK 开发】开发一流的 Android SDK:Fabric SDK 的创建经验
转载地址:https://www.tuicool.com/articles/jMBbqu原文地址:https://realm.io/cn/news/oredev-ty-smith-building-android-sdks-fabric/About the Speaker: Ty SmithTy 是一个在 Twitter 的 Android 技术负责人,专职于 Fabric 开发工具团...转载 2019-04-01 15:46:37 · 357 阅读 · 0 评论 -
VirtualApp原理解析(1)--初始化及注入流程
原文地址:https://blog.csdn.net/leif_/article/details/72420934 VirtualApp原理解析(1)–初始化及注入流程VirtualApp是一款可以达到应用双开效果的开源项目。源码地址:https://github.com/asLody/VirtualApp这一系列简要分析其原理。先来看下Vi...转载 2019-03-04 16:15:05 · 1698 阅读 · 0 评论 -
Android开发中常用的Manager类
原文地址:https://blog.csdn.net/qq_15991013/article/details/70336493 kaQwwSg.png1. ActivityManager:与系统中正在运行的所有活动进行交互。获取ActivityManager对象的方法是在拥有context的环境下使用下面的方法: A...转载 2019-04-26 10:55:25 · 2291 阅读 · 0 评论 -
【Android动态加载】Android 动态加载(一)- 基础篇(一)
原文地址:https://www.jianshu.com/p/fb03c2b592411. 动态加载1>:app在运行时候,通过加载一些 app原本不存在的可执行文件,实现一些特定的功能;2>: 这些可执行文件是可以替换的;3>:更换静态资源不属于动态加载,静态资源包括:换启动图、换主题、在服务器中配置参数开关,控制广告的显示与隐藏;4>:动态加载的核心是:动...转载 2019-04-15 16:11:15 · 355 阅读 · 0 评论 -
【Android基础】获取WebView的页面标题(Title)-----WebChromeClient.onReceivedTitle()方法的重写
原文地址:http://blog.csdn.net/sodino/article/details/17635897应用开发中需要获取WebView当前页面的标题,可能通过对WebChromeClient.onReceivedTitle()方法的重写来实现代码如下:public class MainActivity extends Activity { public void转载 2016-05-06 17:41:30 · 1845 阅读 · 0 评论 -
Android 申请自启白名单权限
申明下这些代码都是网上各个角落搜的,为了方便查看,我自己把他放到这里,不做其他用途/*** GoTo Open Self Setting Layout* Compatible Mainstream Models 兼容市面主流机型** @param context*/public static void jumpStartInterface(Context contex...转载 2019-08-29 11:13:13 · 3341 阅读 · 1 评论 -
一次 NotificationListenerService 体验
上个礼拜给别的公司团队做一个自己用的监听通知的app,需求是这样的,收款方展示支付宝二维码,当付款人扫码付款成功之后,收款方在app能看到拦截下来的支付宝信息(收款金额,付款人,语音播报的内容等等),收到拦截消息之后及时刷新页面并把金额提交给后台(不可重复提交,提交失败也记录本地),并发出提示音,数据需保存本地,还有商户区分,app可以增加或修改不同的商户,每个商户对应各自的数据(今日统计,收款列...转载 2019-08-29 10:07:58 · 454 阅读 · 0 评论 -
2019 Android开发趋势及必备技术点!
一、关于Android的前景不断地也听见很多人在谈做Android是否还有前途、Android研发在走下坡路了、Android的工作太难找了,对于这些其实我的看法很简单,现在真的还没到说Android开发已经无路可走的地步,当然未来怎样我无法预判。现在各大公司其实都很缺Android研发(中高级),不断的在招人,就拿很多一线互联网来说,别说来面试的人了,就简历都拿不到太多,需要花很多时间去找简历...转载 2019-08-23 00:26:08 · 3578 阅读 · 2 评论 -
Handler.postDelayed的原理
大部分同学在回答Handler的原理的时候都能回答出Handler将消息丢到MessageQueue中,然后Looper.loop死循环不断从MessageQueue中拿消息去执行。这块我之前也有写个文章介绍,如果忘了可以去看看。但是如果再继续追问Handler.postDelay又是怎么做到的就讲不出来了。这里就给大家讲一讲。源码解析首先来看看handler里面是怎么处理post...转载 2019-08-16 16:48:26 · 944 阅读 · 1 评论 -
Android Handler postDelayed的原理
前言我们经常用Handler中的postDelayed方法进行延迟操作,像这样new Handler().postDelayed(new Runnable() { @Override public void run() { //操作内容 } },100);我们都知...转载 2019-08-16 16:46:41 · 1328 阅读 · 0 评论 -
Android 内存优化总结&实践
原文地址:https://mp.weixin.qq.com/s/2MsEAR9pQfMr1Sfs7cPdWQ导语智能手机发展到今天已经有十几个年头,手机的软硬件都已经发生了翻天覆地的变化,特别是Android阵营,从一开始的一两百M到今天动辄4G,6G内存。然而大部分的开发者观看下自己的异常上报系统,还是会发现各种内存问题仍然层出不穷,各种OOM为crash率贡献不少。Android开发发...转载 2019-06-12 16:41:12 · 374 阅读 · 0 评论 -
设计模式看了又忘,忘了又看?
原文地址:https://mp.weixin.qq.com/s?__biz=MzIxMzgwMTAyMg==&mid=2247483988&idx=1&sn=ba3a799c4beb08c156d66f6e8efb2235&scene=19#wechat_redirect设计模式汇总耗时了 5 个月,终于把设计模式一整个系列写完。其实设计模式这一系列文...转载 2019-05-28 14:59:22 · 180 阅读 · 0 评论 -
Android面试知识点汇总
原文地址:https://blog.csdn.net/u013806583/article/details/81558608 四大组件:Activity:生命周期:启动模式: standard、singleTop、singleTask、singleInst...转载 2019-05-20 16:35:31 · 654 阅读 · 0 评论 -
2018 Android面试心得,已拿到offer
原文地址:https://blog.csdn.net/qq_27053103/article/details/79564062从16年毕业至今,就职过两家公司,大大小小项目做了几个,非常感谢我的两位老大,在我的android成长路上给予我很多指导,亦师亦友的关系。从年前至今参加面试了很多公司,也收到了几家巨头的offer,还有其他公司的。总结下经验,也是对过去的一个回顾和总结吧。一、简...转载 2019-05-20 16:33:14 · 1617 阅读 · 7 评论 -
Android保活实现方案梳理
原文地址:https://blog.csdn.net/chunqiuwei/article/details/95649955 参考资料...转载 2019-08-07 16:04:19 · 742 阅读 · 0 评论