android开发
xudailong_blog
徐代龙的新博客:http://blog.csdn.net/xudailong_blog
微信公众号:蛇崽网盘教程资源
展开
-
mac 下 jdgui invalid input fileloader
在一次反编译中,前面几个步骤都是正确的,将classes.dex成功转为classes-dex2jar.jar文件,在即将把classes-dex2jar.jar文件在jd-gui中打开的时候,出现了jdgui invalid input fileloader这个错误,如下图所示:在网上搜了又搜,说是Java版本的问题,也一度想在下个jdk7的,后面搁置了会,一觉醒来,通过精确搜索,搜到这篇文...原创 2019-08-17 18:07:04 · 7118 阅读 · 0 评论 -
Android 换肤过程中CoordinatorLayout与AppbarLayout结合后出现的视差颜色未换过来的坑
使用的换肤插件可参考上一篇文章Android一键换肤功能实现及实现过程中Glide图片显示问题但是在使用的过程中,换肤后,使用的主题还是会出现之前使用的蓝色主题,这时候的视差阴影显示的为蓝色,整个布局文件: (写得有点长)<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http:...原创 2019-02-21 12:12:03 · 803 阅读 · 0 评论 -
Android实现菊花loading动画
在一些网络请求中,用户操作中,我们往往需要一些耗时等待的动画,一开始本来用一个比较酷炫的三方加载动画,后来因为嫌弃太丑,不得不切换使用原始的菊花加载动画,可谁知UI给出一系列的菊花动画图片,虽然动画有帧动画一说,可加载多张图片,但是本着不占用存储空间的准则,这里只使用一张图片,然后将之旋转起来即可完成动画。首先loading.png图片(我们放在res/drawable下)创建一个动画文件...原创 2019-02-25 21:33:10 · 6404 阅读 · 2 评论 -
Android一键换肤功能实现及实现过程中Glide图片显示问题
因为时间紧,任务急,工程量可能会大,使用的换肤框架是https://github.com/burgessjp/ThemeSkinning 这个,代码嵌入量少,集成进去也简单,作为新手,可以把demo运行起来,多点几下,就差不多了。场景因为在我的项目中是需要把状态栏,主页底部Tab页的资源文件,还有其他页面的资源文件都需要替换掉,所以,相对于白天黑夜模式的换肤,工程量可能会多一些。集成步骤...原创 2019-02-20 11:07:51 · 524 阅读 · 0 评论 -
java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter positionVie
在使用SmartRefreshLayout下拉刷新后,RecycleView在刷新未完成的时候会报如下的错,并闪退掉。报错信息如下:java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter positionViewHolder{a5b247d position=5 id=5,...原创 2019-02-28 11:10:58 · 7338 阅读 · 2 评论 -
JSONObject 获取全部键(键值对)
JSONObject也是迭代器,故可使用Itear的方式进行获取全部键,主要是针对不确定键的情况下使用直接上代码:JSONObject jsonObject = new JSONObject(response); //response 为strIterator<String> keys = jsonObject.keys();while (keys.hasNext()...原创 2019-02-21 14:48:15 · 27510 阅读 · 1 评论 -
ScrollView嵌套多个recyclerview(两个以上),出现不显示数据的情况
因为是在项目中使用的,使用情况是这样子的:一个Activity中有ViewPage,ViewPage嵌套多个Fragment,Fragment中又有一个Scrollview嵌套多个RecycleView,其中Fragment的布局可能是下面这样子的。因为数据是从服务器请求下来的,导致有时候往往加载不出来,也试过很多方法,一开始以为是ViewPage嵌套Fragment出现的问题,后面单独把R...原创 2019-01-28 21:31:34 · 3642 阅读 · 4 评论 -
java倒叙遍历list
for (int i = list.size() - 1; i >= 0; i--) { System.out.println(list.get(i));}原创 2019-01-28 10:45:15 · 15215 阅读 · 0 评论 -
Android 集成腾讯Bugly
这篇文章主要记录在项目中集成腾讯Bugly来进行项目中bug的手机,以及通过在后台管理页面对bug查看,进行bug的处理,具体的可以参考腾讯Bugly官方文档集成步骤去腾讯Bugly官网申请账号,或者是直接用个人的QQ号,这里尽量使用公司的账号申请,同时,Bugly的申请不需要身份验证之类的,只需要绑定手机号,进行个短信验证即可。申请完后,就下载腾讯Bugly的SDK:腾讯BuglyS...原创 2019-01-15 11:37:01 · 1366 阅读 · 0 评论 -
Android Home键启动Activity反应慢的坑
问题最近做项目时遇到这样一个问题,需求是这样的:在一个播放界面,播放时退出当前界面,或者点击home键时,窗口上会显示一个小的悬浮窗,点击这个悬浮窗,就会跳转到相关的播放界面。不得不说这个悬浮窗是全局的,即当程序返回到Home界面还很显然这个悬浮窗是全局的,即时程序退至后台,依然坚挺的显示在界面上,但是在测试的时候会发现这样一个问题:当点击home之后,立即点击悬浮窗跳转,会有一段时间的...原创 2019-01-14 22:21:47 · 2376 阅读 · 5 评论 -
Android实现沉浸式状态栏实现在项目中的使用
不得不说,Android实现沉浸式状态栏确实是一个不深不浅的坑,懂门路的人几分钟就能解决掉,不懂门路的人,网上找资料查资源估计也要个一两天,当然了,我也是苦于其中,不过到最后还是找出来了。ImmersionBar一个star数超过5K的三分库,且适配方面做得很好。地址:ImmersionBar github地址简单用法:依赖:implementation 'com.gyf.immer...原创 2019-01-09 10:44:58 · 503 阅读 · 0 评论 -
Android仿微信开关按钮SwitchButton
使用系统自带的功能,只需要设置selector选择器就可实现下面的功能这里说明一下:使用Android原生的switch选择器难免在某些布局上显得很丑。UI一般给图都会给出上诉的图xml设置这里需要注意的地方:Switch下的thumb与track,一个是滑块,一个是滑动背景。Selector滑块:switch_ios_thumb.xml<?xml version="1...原创 2019-01-09 10:20:24 · 2420 阅读 · 1 评论 -
Android多个fragment懒加载的坑(卡顿)
在Android开发中,有很多种情况都是viewpage+fragment左右滑动进行布局的,例如下面的今日头条在今日头条app上,我们可以看到,其顶部都是一栏的类型数据源,可滑动,可联动下面的viewpage里的fragment,但是很多时候,viewpage+fragment中的fragment每次都将走onCreate方法,导致在视觉上造车一定的卡顿,而且在加载当前fragment的时候...原创 2018-12-25 23:36:15 · 3968 阅读 · 0 评论 -
Android Studio在vivo手机上调试apk出现解析包出错
在Android studio开发过程中出现解析包时出现问题,用的是vivo y73 Android 8.1的手机,今年刚新出的手机,在开发的时候一直用着是6.0的系统,突然用到8.1的系统进行适配,发现各种报错,还有一个是手机处理器也是一个需要注意的地方。下面是解决方法:一,取消instant Run的第一个勾选这样问题就解决掉了。...原创 2018-12-15 13:30:23 · 8042 阅读 · 8 评论 -
Android 宽高相等的adapter item内容
使用一张网上的图:很多时候,我们需要用使用这样的排列,宽高固定,然后是中间留有一定的边距,毫无疑问,这里我们需要用到gridadapter。GridView的item是正方形,而android需要适配不同尺寸的手机,所以不能写死item的高度和宽度。因为GridView是可以根据numColumns来分配item的宽度的,所以我们把item布局的高度设为与宽度一样就能实现适配了。(一):所...原创 2019-03-14 22:37:22 · 677 阅读 · 0 评论 -
Android Studio :Could not find com.android.tools.build:aapt2
Android Studio 又一次升级,从Android Studio3.2升级到Android Studio3.3,每次升级都是抱着必死的很大的决心进行升级,就怕Android Studio罢工,到时候一番乱搞。问题大概是下面这个样子的:Could not find com.android.tools.build:aapt2:3.2.0-alpha14-4748712.Searched ...原创 2019-03-14 22:45:59 · 8853 阅读 · 0 评论 -
Android studio升级AndroidX
在开发flutter APP的时候,因为某个包的引入导致现在需要将Android Studio升级AndroidX,这个坑也是挺深的flutter构建APP的时候报以下的错误:The Gradle failure may have been because of AndroidX incompatibilities in this Flutter app如下图:下面我们通过Androi...原创 2019-06-29 13:28:53 · 5664 阅读 · 0 评论 -
Android mob(sharesdk)微信分享/微信朋友圈分享/QQ分享/QQ空间分享/新浪微博分享(自定义)
使用场景H5混合开发转Android 原生开发,之前也是用的友盟分享、微信原生、QQ原生、微博原生分享,今天这个项目恰好是用的mob的sharesdk分享,老实说,还是第一次使用,一开始接手项目的时候,还以为mob是个后台。来一张效果图:如果打算使用分享的话,那么请尽快申请各大平台的appkey、appID等。这里我就不多细说了。下面主要是如何用sharesdk进行配置登录mob,选择...原创 2019-06-17 23:10:54 · 4932 阅读 · 1 评论 -
Android M 小米手机 Settings.canDrawOverlays(悬浮窗权限:SYSTEM_ALERT_WINDOW)一直返回false的问题
因为项目中使用到了悬浮窗,而在Android 系统M以上,使用悬浮窗是需要用到SYSTEM_ALERT_WINDOW这个属性。主要是根据以下文章进行了参考(一)Android悬浮窗权限“android.permission.SYSTEM_ALERT_WINDOW”判断是否开启问题下面这篇文章使用到的代码:public static boolean checkFloatPermission(...原创 2019-04-18 11:31:48 · 6267 阅读 · 0 评论 -
Android glide加载本地图片遇到的问题
问题:加载本地图片一直加载不出来,也不知道是哪里出现的问题,以为是图片命名的方式,试了也没用,后面又看了glide的源码发现glide加载本地图片也是用的那样的方法,后面问了下上家同事,郭佬,才发现一开始的问题便是图片路径的问题。步骤:首先检查图片路径(不要写绝对路径!!!):我是将一个ImageView通过模糊度生成一个图片保存到SD卡中,然后再在其他的地方进行调用展示(一):图...原创 2019-04-26 10:49:02 · 20498 阅读 · 2 评论 -
Android webview设置背景透明,去掉白色
在完全去掉其他控件的颜色基础上,显示的webview依旧还是显示为白色的底,但是在控件上面并没有设置颜色,如下: <WebView android:id="@+id/webview" android:layout_width="wrap_content" android:layout_height="wrap_content" andr...原创 2019-04-26 10:14:52 · 12097 阅读 · 0 评论 -
Android 8.0 华为手机 桌面应用图标显示圆形适配方案
Android 8.0的启动图标适配方案可以参考以下两篇文章一篇是郭霖大神的Android应用图标微技巧,8.0系统中应用图标的适配还有另外一篇:android8.0桌面图标适配以及相应问题的解决看过这里两篇文章的都大概懂了个原理,就是Android 8.0的启动图标分为两层,在桌面的时候能更加生动形象的将一个图标用类似3D的效果展现出来。不过,本来一开始我也是使用郭霖的方法进行Andro...原创 2019-04-16 15:55:29 · 5281 阅读 · 2 评论 -
使用JiaoZiVideoPlayer播放视频方向横过来出现的问题
在开发中使用的是 饺子播放器(JiaoZiVideoPlayer) ,原来的节操播放器,不得不说确实很多坑在里面,因为项目中使用的是rtmmp格式的播放流,饺子播放器对此支持的不是太好,又因为项目中使用到全局小窗口播放视频,导致每次切换到小窗口的时候都会造成卡顿,黑屏的现象。以后等有时间,还是会把JiaoZiVideoPlayer 饺子播放器给换掉,用阿里云免费的播放器,或者使用 基于饺子播放器...原创 2019-04-12 10:25:40 · 3282 阅读 · 0 评论 -
微信报错 {"errcode":40029,"errmsg":"invalid code, hints: [ req_id: CJaBfz4ce-QYCtNa ]"}
在Android 开发中使用微信原生登录出现:{"errmsg":"code been used, hints: [ req_id: Rwakxa0262th10 ]","errcode":40163}友盟登录里是直接获取到access_token,将微信信息给返回来。已经将使用过code了,而我使用的微信原生登录,也是用的同一个WXEntryActivity,故再次使用这个code 的时候...原创 2019-04-02 20:39:43 · 3442 阅读 · 0 评论 -
Android 关于微信原生登录和友盟第三方微信登录来获取code那些坑(40029问题)
如果你恰好集成了微信原生登录与友盟三方登录。那么可以继续往下看了。问题描述:本来在APP端使用openid就可以了的,结果未想到,后台要我们传一个Code过去,就是微信里面的Resp.Error.code这个 code友盟登录里是直接获取到access_token,将微信信息给返回来。已经将使用过code了,而我使用的微信原生登录,也是用的同一个WXEntryActivity,故再次使用这个...原创 2019-04-02 20:29:25 · 3929 阅读 · 0 评论 -
You cannot start a load for a destroyed activity
问题描述:You cannot start a load for a destroyed activity在使用Glide图片加载的过程中,因为一开始使用的时候并未出现这个问题,但是后面在调试的时候,莫名的出现这个问题,网上搜问题,下面是各种关于该问题的解答https://blog.csdn.net/mackkill/article/details/78068203问题中有描述,glide所...原创 2019-04-02 20:13:02 · 868 阅读 · 0 评论 -
Android textview换行
在某种情况下需要将TextView里面的文本进行换行,这时候只需要在将要换行的前面加上 \n例如:1.更新内容;\n2.更新内容啦;\n3.更新内容,赶紧查看;\n1.更新内容在Android Studio上显示不出来效果,但是你运行起来,跑真机上就可以了。关注「蛇崽网盘教程资源」公众号 ,在微信后台回复「领取资源」,获取IT资源200G干货大全。更多资源请访问:超详细图文搭建个...原创 2019-04-02 19:55:18 · 9102 阅读 · 0 评论 -
Android 仿照微信查看大图(三方控件)
github 地址:https://github.com/VicJcc/BrowseImg推荐理由:轻便,还是要结合业务场景。原创 2019-03-29 20:29:32 · 3379 阅读 · 0 评论 -
友盟分享 微博 c8998文件不存在
这个提示有可能是在微博页面,也有可能是在授权页面在Application中进行友盟分享的设置 PlatformConfig.setSinaWeibo("118209977", "f9aa33c15f35ab3157e81ecaac78395","http://app.xxxx.com/");如果其他地方没有配置错误的话,微博的APPKey 、Secret都有了,但是第三个你可能不知道...原创 2019-03-15 12:21:41 · 656 阅读 · 0 评论 -
Failed to find Build Tools revision 27.0.3
因为电脑系统的问题,导致运行一下Android Studio整个8G的电脑内存都给吃没了,索性又重装了下电脑,重新安装了下Android Studio。错误信息11:44 Gradle sync failed: Failed to find Build Tools revision 27.0.3 Consult IDE log for more details (Help | Show L...原创 2018-12-03 12:17:02 · 13739 阅读 · 12 评论 -
ScrollView默认位置不是最顶部
场景描述, 在scrollview中套用了一个recycleview,发现,recycleview上面的部分TextView不能被显示,直接显示的是recycleview的底部。分析原因:在Activity计算窗口的高度时,是在listview没有填充数据时候就完成的,由于ScrollView嵌套listview时没有指定高度,所以ScrollView就会按照layout中定义的默认高...原创 2018-10-24 23:48:55 · 954 阅读 · 0 评论 -
Android EditText去掉下划线
默认的EditText是带有下划线的,有时候我们需要去掉下划线跟边框主要是在xml中进行设置主要代码为:android:background=”@null”<EditText style="?android:attr/textViewStyle" android:layout_width="wrap_content" ...原创 2018-09-07 21:27:18 · 5777 阅读 · 0 评论 -
android app下运行linux脚本代码
场景在@函兮的要求下,在手机root的情况下,完整的利用八核的性能,将linux代码写入到android 手机上,通过app的形式,进行测试。代码# 强制读写系统分区busybox mount -o rw,remount /dev/block/bootdevice/by-name/system# busybox mount -o rw,remount /dev/block/...原创 2018-03-04 16:36:00 · 1343 阅读 · 0 评论 -
android edittext 默认不获取焦点
在edittext 的父控件进行设置: android:focusable="true" android:focusableInTouchMode="true"原创 2017-12-25 22:22:51 · 3608 阅读 · 0 评论 -
Android 删除没用的Import 包
这里是手动删除Import无用的包,当然也可以设置自动删除无用的import包 1 手动删除import包:ctrl + alt + o 2 自动删除import包: File–>Settings–>Editor–>General–>Auto Import 选中Optimizes imports on the fly,和Add unambiguous imports on th原创 2017-12-06 23:04:29 · 810 阅读 · 0 评论 -
Android Studio 3.0 清除项目用不到的资源
自己也是一直找,一直找,真正要清除无用资源需要通过Android studio的 Remove Unused Resources选项功能来清除无用资源 操作步骤:选中工程,右键选中Refactor从Refactor中选中Remove Unused Resources (在倒数第几个)可以选择Preview 先预览下会清除的资源清单, 或者选择Refactor直接确认清除无用资源如图:原创 2017-12-06 23:00:23 · 1831 阅读 · 0 评论 -
多个RecycleView 嵌套显示不全的情况
场景:项目中最外层使用ScrollView,里面嵌套了recycleview,recycleview中又嵌套了多个recycleview,导致部分recycleview显示不出来app界面的结构图:<xml><LinearLayout>*******<RecycleView></RecycleView>*****<ScroolView><RecycleViewid="@+id/rec原创 2017-12-14 23:00:01 · 3041 阅读 · 0 评论 -
Each module has to have a unique path
在android工作中从仓库中down下来的时候,首次运行出现: Each module has to have a unique path使用android studio开发工具:因为同事一起把.iml文件给上传上去了,每次builde都会出现不同的错误,这次出现:Each module has to have a unique path,在stackflowe上说,直接删除就行了,结果,就原创 2017-12-11 22:02:55 · 1900 阅读 · 0 评论 -
android recycleview 没有填满屏幕
最近使用recyclerview 每次绘制的item 虽然写的是填充父控件,但是每次效果都是包裹内容。没有填满手机屏幕,后来才意识到是填充子view的时候出现了问题没有填满屏幕的时候,你可以试着在item_view的主布局设置一个background,这时候看下主布局的填充内容。原来的代码:@Overridepublic MyViewHolder onCreateViewHolder(ViewG原创 2017-11-21 22:52:54 · 2072 阅读 · 2 评论 -
android webview 加载https
在设置的WebViewClient 接收所有信任证书 wv.setWebViewClient(new WebViewClient() { @Override public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {原创 2017-11-21 22:47:04 · 1487 阅读 · 0 评论