
Android
文章平均质量分 60
易小四
这个作者很懒,什么都没留下…
展开
-
Android: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList...问题的解决方案
异常导入第三方SDK并编译运行时,出现了:“Caused by: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file “/system/framework/org.apache.http.legacy.boot.jar”, zip file “/data/app/com.yiguozhen.handheldsmart-SWfW3u7Cj8q39Ii-pdhONg==/base.apk”],n原创 2021-08-26 14:59:29 · 12162 阅读 · 4 评论 -
flutter:插件开发No pending exception expected: java.lang.NoSuchMethodError: no static method问题的解决
出现的问题:No pending exception expected: java.lang.NoSuchMethodError: no static method "Lcom/baidu/vis/unified/license/AndroidLicenser;.getDeviceId(Landroid/content/Context;)Ljava/lang/String;" 2020-11-24 11:59:08.395 18597-19185/? A/zygote64: runtime.cc:531]原创 2020-11-24 17:29:54 · 3355 阅读 · 0 评论 -
Flutter插件开发集成aar包出现:Could not determine the dependencies of task ':flutter_vpn:compileDebugAidl'.问题
概述:最近在做一个Flutter的插件开发,需要在android及ios原生中集成sdk,然后Flutter通过插件调用sdk的方法。这其中涉及到aar包的集成,虽然是Flutter的插件开发,但是关于android原生的aar包集成还是差不多的,按照正常的aar包集成流程操作,本以为很顺利,但是却出现了这个问题:这个问题非常奇怪:aar资源包引用是成功的,也能识别到对应的资源文件。但是就在...原创 2020-02-13 19:10:13 · 7128 阅读 · 0 评论 -
Android:More than one file was found with OS independent path 'res/values/values.xml
概述:最近在集成一个一键登录的sdk时遇到了这个问题:More than one file was found with OS independent path 'res/values/values.xml。分析问题:1.首先根据报错日记:这是由于相同命名的资源文件重复,所以系统编译的时候无法识别到底需要加载哪一个文件;2.接着,顺着这个思路,去全局搜索,看看自己的资源文件或者导引用的...原创 2020-02-13 00:02:04 · 4487 阅读 · 1 评论 -
Android:Calling startActivity() from outside of an Activity? context requires the FLAG_ACTIVITY_NEW_
概述:最近在开发一个Flutter插件项目的时候,遇到这个问题:Calling startActivity() from outside of an Activity? context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?android原生集成一个三方的sdk,通过flutter插件调用...原创 2020-02-12 23:25:53 · 1934 阅读 · 0 评论 -
android:关于AAPT: error: style attribute 'attr/windowActionBar...'问题的解决方案
概述:在一个Flutter工程中,引入一个第三方aar包之后进行编译,出现了“AAPT: error: style attribute ‘attr/windowActionBar (aka com.opun.flutter_easy_login_example:attr/windowActionBar)’ not found.”问题。解决思路:1.从报错的信息来看,是缺少了资源文件。一开始以...原创 2020-02-12 00:20:27 · 20517 阅读 · 1 评论 -
android:Multiple dex files define Landroid/support/v4/app/FragmentState异常解决
Multiple dex files define Landroid/support/v4/app/FragmentState编译的时候,经常会遇到这个问题。该问题的主要原因是:项目中依赖的资源包中存在重复依赖,从而出现了这个问题。基于问题的主要原因出发,可以想到解决方案:把重复依赖的资源包删除或者排除在外。而根据解决思路,由于实际情况的不同,可以有两种主要的解决思路:1)若重复依赖的资源包...原创 2020-01-15 11:39:39 · 691 阅读 · 0 评论 -
Android 路由框架ARouter简述
前言:ARouter在实现Android组件化开发中是很重要的技术,同时,应用到页面跳转中有点也比较明显,目前Android开发中也比较流行。一:什么是路由?说简单点就是映射页面跳转关系的,当然它也包含跳转相关的一切功能。二:为什么需要路由Android系统已经给我们提供了api来做页面跳转,比如startActivity,为什么还需要路由框架呢?我们来简单分析下路由框架存...转载 2018-08-29 15:51:08 · 327 阅读 · 0 评论 -
android:ijkplayer播放器的集成及简单自定义播放器
关于ijkplayer最近公司准备要开发的项目里涉及到播放器的功能模块,于是对Android播放器框架进行了预研。目前ijkplayer框架是为大多数公司及开发者青睐的框架。 ijkplayer是一个基于FFmpeg的轻量级Android/iOS视频播放器。FFmpeg的是全球领先的多媒体框架,能够解码,编码, 转码,复用,解复用,流,过滤器和播放大部分的视频格式。它提供了录制、转换以及流化音视...转载 2018-09-28 11:40:20 · 3122 阅读 · 0 评论 -
模块化开发遇坑及解决方案
在团队多人合作开发的项目中,模块化开发就目前而言是比较常见的团队开发模式。而模块化开发时,对于习惯了独立开发的人而言,刚刚开始接触也会经常遇到一些比较常见的坑,这里记录一二,同时提供参考的解决方案,希望对大家有所帮助。问题一:模块化开发中,当前模块R文件却显示导入的是其他模块的R文件解决方案:首先检查所有资源文件是否命名规范及是否使用了其他模块的资源文件,然后,检查AndroidManifes...原创 2019-05-23 09:26:52 · 695 阅读 · 0 评论 -
android:RxJava上手
前言:是时候入手RxJava了。RxJava 到底是什么RxJava 好在哪API 介绍和原理简析 1. 概念:扩展的观察者模式 观察者模式 RxJava 的观察者模式 2. 基本实现 1) 创建 Observer 2) 创建 Observable 3) Subscribe (订阅) ...转载 2018-08-31 09:42:27 · 236 阅读 · 0 评论 -
Android:MVP框架浅析
前言:其实我们日常开发中的Activity,Fragment和XML界面就相当于是一个 MVC 的架构模式,Activity中不仅要处理各种 UI 操作还要请求数据以及解析。这种开发方式的缺点就是业务量大的时候一个Activity 文件分分钟飙到上千行代码,想要改一处业务逻辑光是去找就要费半天劲,而且有点地方逻辑处理是一样的无奈是不同的 Activity 就没办法很好的写成通用方法。 而MVP...转载 2018-08-23 16:35:56 · 1908 阅读 · 1 评论 -
android studio:关于项目同步下载依赖资源文件时 “ Error:Read timed out”问题的解决方法
问题的现象及主要原因: 在使用android studio 3.0的时候,导入Module或者重新打开工具进行Project的初始化时,由于项目中使用了一些类库或者jar包,而这些资源文件是存在远程仓库上的,所以需要sync同步下载。主要的原因有: 1)在同步资源文件的时候,一方面AS是设置了一定的联网连接时间; 2)另一方面,可能本身电脑防护...原创 2018-08-17 13:19:22 · 30956 阅读 · 3 评论 -
android ConstraintLayout 控件使用总结
前言:ConstraintLayout 出来那么久了,一直没怎么使用过,今天认真撸了一把,瞬间感觉高大上,所以,速度收下。 ConstraintLayout(约束布局)已经推出有一段时间了,在 Android Studio 中也作为了默认布局,能够减少布局的层级并改善布局性能,因此很有必要来研究下其功能与使用方法 ConstraintLayout 能够灵活地定位和调整子View的大小,子 V...转载 2018-08-07 15:30:18 · 823 阅读 · 0 评论 -
Android:WebView与js交互小结
前言:现在Android应用市场是大多数的APP都内置了Web网页(Hybrid App),比如说很多电商平台,淘宝、京东、聚划算等等,而这其中涉及到一个比较重要的技术点:WebView 与js的交互。 目录 1. 交互方式总结Android与JS通过WebView互相调用方法,实际上是: Android去调用JS的代码 JS去调用Android的代码 ...转载 2018-08-06 17:42:58 · 226 阅读 · 0 评论 -
关于Android 6.0以后动态权限获取踩的坑
前言:根据Google官网的api,Android 6.0以后,Google处于安全性的考虑,在应用中需要使用某些权限的时候,需要我们在开发的时候动态获取。 因此,在实际开发过程中,我们一般都是根据官网的api在代码中为项目动态申请权限。而实际的效果是,在我们动态申请权限之后,在项目运行时需要使用权限的地方也会相应的弹出权限选择对话框。在网上也能找到很多这个实现的帖子,比如下面这个环信的...原创 2018-07-14 16:12:02 · 592 阅读 · 0 评论 -
Android App应用内截屏监控及涂鸦功能实现
前言:最近在一个APP里面看到了针对应用内截屏并对截屏的动作进行监听的功能,就想了解其中的实现方式。Android截屏功能是一个常用的功能,可以方便的用来分享或者发送给好友,本文介绍了如何实现app内截屏监控功能,当发现用户在我们的app内进行了截屏操作时,将自动展示该截屏,并提供用户随意圈点涂鸦,添加马赛克,撤销,分享等功能。实现效果如下:实现该功能有以下技术需求:当app在前台展示...转载 2018-10-24 15:25:53 · 2416 阅读 · 0 评论 -
Git:实际项目中如何使用Git做分支管理
前言:一直都听说Git作为一个强大的版本管理工具,功能强大,但是实际开发的时候只是使用了其中的一些基本的功能,同时,其分支管理、合并策略等并不了解。借此机会,学习一番:1.分支的作用分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进...转载 2018-10-24 18:10:36 · 1930 阅读 · 1 评论 -
TabLayout+ViewPager实现切换卡布局
前言:TabLayout是sdk 22之后的新特性,TabLayout+ViewPager实现切换卡布局在很多应用上是比较广泛的,同时实现起来也比较简单,交互效果也很不错,今天和大家一起分享其基本用法,在开始使用的时候,可能会遇到不少的坑(反正我是踩到坑了。。。。。。)。一 引入依赖库:在项目的build.gradle文件下添加库依赖 implementation 'com.android...原创 2019-05-24 14:56:30 · 644 阅读 · 0 评论 -
事件分发机制
前言:Android事件分发机制是Android开发者必须了解的基础,以前对于这一块内容的理解也是一知半解的,在网上也很难找到比较完整的资料,自己水平有限,搂源码也有一定的难度,还好,今天在简书上看到一篇关于分发机制介绍很全的帖子,果断收藏,推荐一下。 https://www.jianshu.com/p/38015afcdb58...转载 2018-04-11 00:04:58 · 154 阅读 · 0 评论 -
Android 8.0 悬浮窗变动与用法
前言:最近使用悬浮窗功能的时候,Android 8.0以上设备时出现了问题:android.view.WindowManager$BadTokenException: Unable to add window — token android.os.BinderProxy@447a6748 is not valid; is your activity running?或者android.vie...转载 2019-09-20 17:59:05 · 597 阅读 · 0 评论 -
Android FileProvider详细解析和踩坑指南
前言:今天修改项目的漏洞的时候,偶然发现一个关于FileProvider的坑,及时记录一下。其实很早之前我的应用就已经兼容到Android7.0了,此次写这个文章就是想详细梳理一下android的文件系统,以及做一下FileProvider的解析。Android7.0 (N) 开始,将严格执行 StrictMode 模式,也就是说,将对安全做更严格的校验。而从 Android N 开始,将不允...转载 2019-07-05 18:01:58 · 28781 阅读 · 5 评论 -
Android使用ItemTouchHelper打造可拖拽的RecyclerView
前言最近涉及到一个关于班级学生座位的项目,需求是教师长按item可以根据学生的对座位进行拖拽更换位置,这个需求与今日头条等新闻app中的拖拽或者删除频道选项类似。通过百度一番,发现recyclerView还有一个ItemTouchHelper的东东。不得不说,recyclerView确实强大,于是,找了一个个人认为写的比较好的帖子,和大家一起分享一下。ItemTouchHelper是suppo...转载 2019-06-26 17:14:27 · 577 阅读 · 0 评论 -
android:关于transformDexArchiveWithExternalLibsDexMergerForDebug问题的参考解决方案
前言之前集成别人的一个项目时,build的时候是可以通过的,但是在实际运行的时候却出现了“transformDexArchiveWithExternalLibsDexMergerForDebug”问题。如图:其他人的解决方法参考通过百度一个多小时,大多数的说法都是项目中重复依赖同一个库,但是依赖库的版本不一致导致的问题。因此,大家给出的解决方案也很多:比如:1.将项目下的.gradle...原创 2019-06-26 14:52:41 · 4309 阅读 · 1 评论 -
自定义view实例:录音及播放进度控件
前言:今天和大家分享一个项目中用到的录音及播放进度控件。一 代码实现:1.view:public class RecordView extends View { /** * 进度条颜色 */ private int progressColor; /** * 描边颜色 */ private int strokeCol...原创 2019-05-23 11:10:09 · 323 阅读 · 0 评论 -
自定义view实例:圆形进度条绘制
前言:由于项目要求,需要绘制一个圆形的进度条以进行学生成绩答题选项中,各个选项正确率的表示。同时需要根据是否达到要求显示不同的颜色。代码实现:public class AnalysisProgressBar extends View { private Paint progressPaint; /** * 绘制背景圆弧的画笔 */ private ...原创 2019-05-22 18:53:29 · 180 阅读 · 0 评论 -
自定义view实例:渐变色仪器表盘
渐变色的仪表盘在很对应用中应该是比较常见的,如图:在绘制这个view的时候,没什么难度,主要还是颜色渐变的使用。好,不废话,先把代码贴上,然后再一步步说明:一 具体绘制过程public class TemperatureProgressBar extends View { private int mRadius; private int mProgressBarWidt...原创 2019-05-24 17:36:20 · 622 阅读 · 0 评论 -
java:线程基础
前言:线程是java开发中的重要的一块内容,还有多线程并发等,而我们也需要从基础学起。一、线程与进程的区别:1)线程:进程中负责程序执行的执行单元 线程本身依靠程序进行运行 线程是程序中的顺序控制流,只能使用分配给程序的资源和环境2) 进程:执行中的程序 一个进程至少包含一个线程3 )单线程:程序中只存在一个线程,实际上主方法就是一个主线程4 )多线程:在一个程序中运...转载 2018-07-25 17:05:31 · 293 阅读 · 0 评论 -
java:jvm类加载机制浅析
前言:对于一般java开发者而言,提到jvm大多数人是一脸懵的(至少我自己是这样的感觉),但是,jvm类加载机制又是java很重要很重要的技术点,所以,还能说什么,硬着头皮,干就是了。好好撸一撸,或许就会发现另一片天地。jvm类加载机制概述:虚拟机的类加载机制可以简单描述如下:Java虚拟机把描述类的数据从Class文件中加载到内存中,并对数据进行校验、解析和初始化,最终形成可以被...转载 2018-07-25 15:33:48 · 335 阅读 · 0 评论 -
android 屏幕尺寸适配实现方案
前言:一直在网上看到很多的屏幕尺寸适配方法,以前只是负责项目单模块的开发,没有真正意义上的做过屏幕适配,最近自己负责一个项目的独立开发,终于有机会自己从头到尾做了一次适配。 一、一般网上有关的屏幕适配方案: http://www.cocoachina.com/android/20151030/13971.html 这篇个人觉得阐述的很全面,技术点很全、原理说明等方面都是说的很好的,里面有关于...原创 2018-05-14 17:30:25 · 3479 阅读 · 0 评论 -
基于okhttp 实现本地图片的上传
最近项目中涉及到用户头像上传的问题,所以,就Okhttp,实现本地图片文件的获取,同时上传服务器。 一、首先,需要设置手机的读写权限(尤其是android 6.0以后,需要动态获取,否则,会出现获取文件失败问题,关于动态权限的获取,可以参考另一篇博客:https://blog.youkuaiyun.com/ygz111111/article/details/80281966) 二、获取本地文件:...原创 2018-05-11 15:34:35 · 1917 阅读 · 1 评论 -
android 6.0及以上动态权限的获取
基于安全性能的考虑,android 6.0(API 23)以后,google规定了系统需要动态获取权限 一、总结需要用户手动获取的权限: 所属权限组 权限 日历 READ_CALENDAR 日历 WRITE_CALENDAR 相机 CAMERA 联系人 READ_CONTACTS 联系人 WRITE_CONTACTS 联系人 GET_ACCOUNTS 位置 ACCES...转载 2018-05-11 15:17:05 · 9593 阅读 · 0 评论 -
android:关于Error:(4, 5) Error retrieving parent for item: No resource found that matches ...问题的解决方案
问题:使用AS 启动项目进行编译的时候,控制台输出报错: 定位到报错的位置: 异常分析:根据字面意思,缺少与styles文件中的“ThemeAppCompat.Light.DarkActionBar”相匹配的资源文件,而ThemeAppCompat.Light.DarkActionBar为API 26 的描述,而对应的找到gradle文件中的compileSdkVersion 版本,发...原创 2018-04-23 09:12:19 · 1074 阅读 · 0 评论 -
关于 Android Studio 运行时出现的gradle project refresh failed: protocol family unavailable异常的解决方案
在集成Google 地图SDK 的时候,根据要求创建了一个Google Maps Activity,而创建完成之后,build的时候出现了协议不可用的问题,“gradle project refresh failed: protocol family unavailable异常”;直接把Model删除,sync之后,还是存在这个异常。 异常分析:关于这个异常,网上有很多的说法,也提供了很多的解决...原创 2018-04-04 17:31:01 · 436 阅读 · 0 评论 -
Android Studio3.0使用Butterknife注解框架报错及其解决方案
前言:现在用的AS是3.0的,今天在编译运行之前使用AS 2.1写的一个Demo时,出现了使用下面这个问题: 原因分析:新版本AS3.0在使用注释处理器时,必须显式声,而在项目中依赖于编译类路径中的Butterknife jar包含有注释处理器,因此需要将它添加到annotationprocessor配置。事实上,报错信息已经给出了我们这个问题的解决方案,即:“set android.def...原创 2018-04-04 09:26:51 · 1912 阅读 · 0 评论 -
Android点击EditText文本框之外任何地方隐藏键盘及光标的解决办法
为了体验便捷一些,今天想实现店家Edittext意外的区域使弹出的键盘消失,经过查找,大致有俩种方法可以采用,都是采用点击edittext意外的区域,键盘消失,但这俩种又有很大区别。第一种:InputMethodManager imm= (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); @...转载 2018-03-27 15:33:23 · 4940 阅读 · 0 评论 -
android studio 基本设置
前言:经常使用AS,这个工具感觉是很强大的,有些经常使用的功能设置我们都知道,而今天偶然看到一个博主针对这个工具的使用及基本设置写的很详细,也很有用,分享给大家,希望对大家有所帮助。 下面直接贴上原文链接: https://www.cnblogs.com/smyhvae/p/4390905.html...转载 2018-03-30 11:01:25 · 144 阅读 · 0 评论 -
android 手机系统的性能测试
2.1 性能指标a,响应时间/加载速度b,动画帧率 图片处理器每秒刷新的帧数(FPS),可用来指示页面是否平滑的渲染。高的帧率可以得到更流畅,更逼真的动画,不过帧率达到60fps以上,人眼主观感受到的差别就不大了。所以以60fps作为衡量标准,即要求每一帧刷新的时间小于16ms,这样才能保证滑动中平滑的流畅度。c,内存使用 在android系统中,每个APP进程除了...转载 2018-03-20 16:20:35 · 6236 阅读 · 0 评论 -
Android 初识Retrofit
以前一直听说Retrofit,今天偶然看到一篇很好的帖子,跟大家分享一下,附上原文链接:https://blog.youkuaiyun.com/jdsjlzx/article/details/52015347转载 2018-03-22 18:12:47 · 166 阅读 · 0 评论 -
APP开发流程工作详解
本文转载自互联网,如有侵权,请联系我及时删除。谢谢。(一)项目启动前 从事产品的工作一年多,但自己一直苦于这样或者那样的困惑,很多人想要从事产品,或者老板自己创业要亲自承担产品一职,但他们对产品这个岗位的认识却不明晰,有的以为是纯粹的画原型,有的是以为做项目管理跟踪项目进度,有的是做竞品分析给老板看。实际上,这些都不是产品经理的核心和重点。在较为成熟的企业,因为产品的壮大和人员的增多,...转载 2018-03-19 10:27:30 · 18654 阅读 · 0 评论