![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
安卓
文章平均质量分 70
BigSweetee
我还能学习更多
展开
-
ide插件开发 android studio mvp插件
首先放几个坑前面俩个是在别的链接中看到的地址1, idea 开发插件的时候,src 下需要创建包名。不要直接在src 创建文件。否则也会出现 AndroidStudio 插件无效的问题2, JDK版本问题,在此前,尝试用 IDEA 默认的jdk (11),发现运行在AndroidStudio 无效,IDEA 上可以使用。需要切换为 JDK8版本,AndroidStudio、IDEA都可以运行。3,android studio版本需要和ide插件的build版本匹配否则会出现这个图andr原创 2021-03-25 18:24:55 · 122 阅读 · 0 评论 -
APP性能优化之-APK瘦身
简单分享APP性能优化之-APK瘦身lib包优化armeabi-v7a,x86 // so库可以只用armeabi-v7a minSdkVersion:21 android 5.0 对比图font文件查询了很多资料,暂时没有好办法,font文件缩减的本质是删除位图,删除无关字形(比如日语韩语),删除字形名称,创建字形的子集,使用后发生大小没有什么变化打包优化shrinkResources...原创 2019-10-14 14:28:56 · 187 阅读 · 4 评论 -
Android 的Canvas的drawArc方法参数介绍
Canvas有一个方法drawArc这是用来绘制一个圆弧的 方法名为drawArc(float left, float top, float right, float bottom, float startAngle, float sweepAngle, boolean useCenter, Paint paint)里面参数很多,今天网上搜索了一下,都说的不准确和详细,所以写个博客记录一下首先看下原创 2017-10-25 18:38:23 · 6464 阅读 · 0 评论 -
andorid面试题和笔记(持续更新)(framework)
事件分发机制首先事件指的是触摸事件,首先是viewgroup的事件分发,viewgroup里面有子view,ViewGroup的相关事件有三个:onInterceptTouchEvent、dispatchTouchEvent、onTouchEvent。View的相关事件只有两个:dispatchTouchEvent、onTouchEvent。简单的来说就是viewgroup遍历自己的子view,如果原创 2017-10-09 13:42:14 · 604 阅读 · 0 评论 -
android 8.0 报错StartForeground Bad Notification Error 解决方法
今天升级了android8.0 并且在一个8.0的系统上运行,居然报错了 报错日志就是标题这个了 也就是使用startForeground方法开启通知的时候报错的 在android8.0后 需要给notification设置一个channelid不要问我为什么 解决方法如下//新增--------------------------------------------- String CH原创 2017-12-20 14:40:54 · 35474 阅读 · 15 评论 -
解决因为gradle版本不同导致打开不同的项目build无敌慢的问题
如题,相信这个问题很多人都碰到过,比如在github看到一个很不错的项目。clone下来打开,然后界面一直处于死机状态,新手玩家可能会觉得这个项目好像有问题?不给任何提示就是打不开其实这是因为你在网上cloen下来的项目gradle版本和你的不同导致,可能在你的本地没有网上项目的gradle版本,导致android studio认为这个版本是你需要下载的,然后开始帮你下载,而且android stu原创 2018-01-24 11:47:04 · 4084 阅读 · 0 评论 -
android开发艺术探索第一章总结
异常情况下acitivty生命周期,比如在屏幕旋转的时候 onSaveInstanceState->oncrate->onRestoreInstanceState分别执行3个方法onSaveInstanceState在onstop方法之前调用,用来保存信息。onRestoreInstanceState在onstart之后调用,用来取出信息,当此方法被调用的时候,bundle一定有值很多...原创 2018-03-06 18:18:37 · 204 阅读 · 0 评论 -
android开发艺术研讨第二章简要记录
ipc,跨进程通信,android通过binder机制进行进程中的通信,在android中一个进程一般指一个应用,也可以通过在androidmanifes中指定process属性来实现多进程多进程实现很简单,但是多进程间的数据传递不简单当启动一个不同进程的activity时,application会重新执行oncreate方法,同时,不同的进程,相同的类会分配到不同的地址空间比如在原创 2018-04-27 14:48:10 · 266 阅读 · 0 评论 -
android开发艺术探索第四章
view的工作原理DecorView和ViewRoot ViewRoot对应ViewRootImpl,他是链接windowsmanager和DecorView的枢纽 viewroot控制view的三大流程 流程如图所示 DecorView中包含一个标题栏和一个内容栏 内容栏的id为content,在setcontentview的时候设置view进去MeasureSpecMeasureS原创 2018-04-28 13:38:31 · 210 阅读 · 0 评论 -
recyclerview+viewpager实现多分类fragment界面 仿京东分类界面
好久没写博客了,今天决定写一篇简单的功能实现热热手这是我2018年10月份在京东app录制的他们的分类界面,今天主要就是实现这样的一个分类的界面整理思路首先整理思路啊。整体界面的实现方式可能很多,但是需要尽可能的用简单的方式,比如左边的分类界面和右边的一起看的话,好像用tablayout+viewpager也可以实现?虽然说他们都是垂直的,我们平时使用的是水平的,但是应该要实现的话也不是问...原创 2018-10-15 15:06:21 · 7281 阅读 · 11 评论 -
Viewpager2实现类似抖音的主界面
##背景一般上下滑动的全屏界面,都是使用viewpager做。好处是系统封装好了,可以直接调用相应的api就能使用坏处是viewpager的刷新机制比较麻烦,而且往头部添加数据也不是很方便后来有人使用RecyclerView+PagerSnapHelper将recyclerview打造成类似viewpage的效果好处是recyclerview功能强大,能满足大部分需求坏处是这俩个搭配会...原创 2019-08-08 09:41:19 · 2745 阅读 · 1 评论 -
eventbus流程源码跟踪
eventbus是一个很常见的android库,平时开发用的也比较多但是会用和了解它的原理是不一样的,今天主要通过正常的一条eventbus流程,来分析一下它的内部实现首先还是看一下基本用法在oncrate或者onresume注册 根据需求在不同的地方注册EventBus.getDefault().register(this)对应的在相应的ondestory onstop中取消注册E...原创 2019-09-18 14:22:44 · 244 阅读 · 0 评论 -
带你实现拍照||从相册选择->裁剪->上传服务器
涉及到的知识点: 1,调用系统拍照功能,拿到图片进行裁剪,上传服务器 2,调用手机相册,拿到图片进行裁剪,上传服务器 3,拍照权限,读取写入存储卡权限的请求和处理。 4,上传服务器使用的我以前封装的retrofit2和rxjava的类有兴趣的可以看retrofit2+rxjava2封装解析 下面进入正题1,实现拍照功能首先我在主界面放了俩个按钮一个点击拍照,一个点击从相册获取,底部放置一个原创 2017-09-12 17:24:59 · 498 阅读 · 0 评论 -
values-sw<n>dp,px,dp,dpi
1,values-swdp用来做适配,表示最小宽度 最小宽度计算方法sw=160*手机宽度像素/dpidpi获得方式dpi= context.getResources().getDisplayMetrics().densityDpi比如我的vivo x7plus分辨率为1080*1920 根据上面公式得到dpi=480那么sw=160*1080/480=360dp所以会在values-sw360原创 2017-09-27 16:50:52 · 899 阅读 · 0 评论 -
自定义view的简单实现(一)
自定义view(一)简单的五角星绘制最近在研究自定义的view,俗话说什么东西都得从简单到困难,而自定义view又是安卓进阶必备,所以今天开发一个很简单的自定义view的五角星,作为入门实战 首先新建一个Wujiaoxing的java文件继承view,实现俩个参数的构造方法就行了,因为我们只在布局中使用,如果要在java文件中使用,最好是把构造方法都实现一下,然后相互调用 首先实现onMea原创 2017-02-17 11:41:20 · 304 阅读 · 0 评论 -
安卓多渠道打包的搭建
前言最近学习了多渠道打包,此博客用以记录学习的内容 多渠道打包,渠道可以理解为应用市场,多渠道打包就是生成支持各种应用市场的apk文件,因为安卓的应用市场很多,所以这个知识也是很重要的 ··············································原创 2017-02-27 11:45:47 · 1320 阅读 · 2 评论 -
自定义view(二)五子棋
前段时间在慕课网上看了hyman大神的五子棋视频,发现下面没有提供源代码,然后自己跟着编写了一份,梳理了一下思路,用作总结画棋盘首先自定义view的四部曲 1,在attrs中申明自定义的属性 2,在View的构造方法中获得我们自定义的属性 3,重写onMeasure方法 4,重写ondraw方法 五子棋的自定义属性我都写死了,也可以不写死,写在attrs中动态的改变,这样都可以生成构造方法原创 2017-03-07 10:28:11 · 673 阅读 · 0 评论 -
tniker热修复命令行接入
上篇写了gradle导入的方式,这篇讲解命令行接入的方式 首先还是导入包,同时修改下签名的配置 很简单 直接放出源码apply plugin: 'com.android.application'android { signingConfigs { release { keyAlias 'china' keyPassword原创 2017-03-14 10:00:50 · 765 阅读 · 0 评论 -
gradlew assembleRelease打包之前的配置
离上次博客好像有半个多月了,今天说下gradle的相关知识 今天打包碰到很多gradle相关的问题,在网上发现资料比较少,特别是配置本地gradle的资料更少,所以这篇博客记录一下怎么配置本地的gradle打包,而不是等待android studio去慢慢的下载 大家都知道gradlew assembleRelease是打包的命令,但是只知道这个可能你并不能成功的打包,至于多渠道打包的配置这篇博原创 2017-04-12 18:52:36 · 40245 阅读 · 1 评论 -
开始你的kotlin?
网上看到太多的kotlin语法介绍,基础语法,个人觉得学习东西实践是进度最快的,但是看到网上关于如何开始kotlin的文章比较少,或者是这种太简单,所以没啥人写,所以我来作个记录 首先看下官网的介绍 kotlin官网https://kotlinlang.org/docs/tutorials/kotlin-android.html··· Installing the Kotlin plugin原创 2017-06-06 15:47:55 · 464 阅读 · 0 评论 -
android app缓存清理
研究了一天的清理缓存,写下心得, APP的缓存主要来源, 网络图片的缓存,本地的数据库,本地的SharedPreferences, 可以根据需求进行清理, 首先第一个网络图片的缓存,一般网络框架会设置缓存,比如 OkHttpClient client = new OkHttpClient .Builder() .addI原创 2017-06-23 18:46:13 · 4196 阅读 · 0 评论 -
跨界面跳转,并清除之前的界面
有的时候有这样的需求 A->B->C->D 这是4个activity A调到到B这样类推, 这个时候D上面有一个返回A的按钮,点击之后返回A,同时B,C,D3个activity需要清除, 网上搜到的都是设置flag,FLAG_ACTIVITY_CLEAR_TOP,或者FLAG_ACTIVITY_CLEAR_TASK 这样能实现这个需求,但是如果你在A界面构建了web服务,那么这个web服原创 2017-07-18 16:29:46 · 967 阅读 · 0 评论 -
Android图片放置技巧
打开studio可以看到默认生成了 这些文件是用来放置APP icon的 规则如下 还有项目中的一些图片放置规则如下 dpi获取方法float xdpi = getResources().getDisplayMetrics().xdpi;float ydpi = getResources().getDisplayMetrics().ydpi;选择ui图的时候,尽量选取高密度的,比如原创 2017-07-18 16:14:27 · 2588 阅读 · 0 评论 -
android秒启动unity,和给unity添加过渡图片
1,本篇不讲解unity如何集成,网上很多,主要讲解下面几个点 一,最容易出现的bug 二,快速启动unity 三,帮unity添加过渡图和可能会遇到的问题一,android 在退出unity的时候,unity会执行结束进程,同时也会结束掉你的APP的进程 解决办法是 重写unityplay,重写kill方法。搞定public class MyUnityPla原创 2017-07-26 15:24:39 · 3683 阅读 · 1 评论 -
漂亮的viewpager画廊效果
首先看下效果图和整个项目的结构 很简单的一个项目,这也是我在简书写的第一个项目,虽然简单,但是我觉得很漂亮现在开始分析代码首先看下MainActivity的代码public class MainActivity extends AppCompatActivity { private int pagerWidth; private ViewPager mViewPager;原创 2017-09-01 16:13:35 · 3814 阅读 · 0 评论 -
自定义radiobutton,progressbar,edittext软键盘
自定义radiobuttonprogressbaredittext软键盘自定义的radiobutton自定义的progressbar自定义的软键盘的样式自定义radiobutton,progressbar,edittext软键盘在现实的开发中很多时候,安卓自带的组件的性能可能不能满足我们的需要,所以需要自定义一些东西 把最新用到的3个最定义的小控件,做个记录自定义的radiobutton首先看原创 2017-01-17 10:51:27 · 489 阅读 · 0 评论