- 博客(31)
- 资源 (2)
- 收藏
- 关注
原创 Android Studio升级Gradle Plugin升级导致项目运行失败问题
AS升级后,AGP、JDK、gradle等一系列项目配置,需要随之升级匹配,否则项目容易报错无法运行
2023-04-18 18:59:28
8344
2
原创 Android构建系统级应用静默授权,静默安装
实现默认获取所需全部权限,不再弹窗询问授权。实现静默升级安装新版本。通过追踪源码的方式,理解如何构建系统应用实现静默安装。
2022-06-15 18:10:51
3035
2
原创 利用HomeTabModeHelper2分钟快速搭建Tab+Fragment主页框架
前言在如今各种App模式如出一辙、各个程序员们却各式各样花式实现效果的环境下,每接手一个项目,就能看到项目代码又不一样,分分钟想统一。同时为了加速后续新应用的开发,封装搭建了这么一个初步的简易框架,实现两分钟快速无脑构建首页。话不多说,先看实现的效果:简介实现功能:tab+fragment模式首页搭建支持ViewPager支持小红点展示(可选是否展示数量)支持突出展示某一个tab动态隐藏tab使用导入库implementation 'com.moore.lib:homeTabM
2020-09-24 19:17:45
1118
原创 读《代码整洁之道》有感
文章目录前言简介代码优化命名注释别写重复代码函数设计写在最后前言很多时候,我们看到一些旧的代码,觉得它不可思议,怎么会有这么糟糕的代码,你会想是谁写了这么脏乱的代码(有时候会惊喜的发现是自己),然后你只能硬着头皮去读这些代码是什么意思,然后小心翼翼地修改其中某个东西,让你的工作完成,然后提交,over。如此,代码在一次一次的提交中慢慢腐烂,最终变得散发出阵阵的恶臭味,然后甚至可能引发一些潜在...
2020-01-11 22:13:43
643
原创 配置化方式简化实现Tab+Fragment首页模式
目前最常见的app首页样式就是底部tab+多个Fragment这样的方式了,写法也有很多,基本都是在布局里写好布局,然后Activity中做点击的处理,切换样式啦、切换页面啦、记录事件啦等等。为了简化这一操作,稍微写了个控件封装了一小波,使用配置文件的方式处理这种模式。使用方式very easy,首先布局中添加该布局,并使用container_id指定Fragment的容器布局 &...
2019-11-23 11:56:52
358
原创 用责任链模式改造代码处理筛选过滤
场景介绍应用从后台进入前台的时候,跳转到启动页进行开屏广告的展示,比较常见的一种场景了。往往我们需要加上一些控制条件,不是所有的情况都跳开屏广告,那样用户体验就差了,所以就会有一系列过滤条件。初始方案最开始是这样的:判断是否需要屏蔽从某一个页面回来判断渠道根据接口内容控制间隔时间、次数限制等 if (activity instanceof SplashActivity...
2019-08-05 12:14:00
230
原创 产品经理和需求的那点事
我们天天接触各种各样的产品,很多时候不免对一些功能进行有自己的评论、见解或者改进意见等,或许会有一些自己的想法。当然,这更多扮演的是用户的角色,而要作为一名产品经理,远远不是提提想法这么简单。今天就来聊聊产品经理和用户需求的那点事。认识产品经理作为开发,产品经理是打交道最多的人之一,在普通的认知中,产品经理就是负责挖掘需求,然后跟进开发。显然,这没有错,但是作为一名产品经理,怎么把这两件...
2019-08-02 14:45:39
269
原创 提升开发效率的一些Android Studio插件整理
文章目录效率篇GsonFormatJSON To Kotlin ClassAlibaba Java Coding GuidelinesGradle View神器篇ADB IdeaDevEco IDE工具篇TranslationADB WIFI ConnectASM Bytecode OutlineGenymotion娱乐篇Background Image Plus +结语这年头,不装几个插件,怎...
2019-07-25 15:29:35
946
原创 Message对象复用(Android中的享元模式)
一、什么是享元模式1、介绍享元模式,即FlyWeight,旨在复用对象,避免重复、大量创建对象,从而节省系统资源的消耗享元模式介绍:https://www.cnblogs.com/adamjwh/p/9070107.html享元模式实践:https://www.jianshu.com/p/b925b8cb6494二、Message中的实现我们知道,Android是事件驱动机制,会有各种...
2019-06-10 16:03:31
937
原创 应用出海之--AdMob
介绍Google AdMob是目前全球最大的移动APP广告平台,向应用程序开发者以及需要在应用程序中进行广告投放的广告主开放,为在移动端上发掘商机、塑造品牌和实现收益提供解决方案。其实就是在应用内、游戏页面、网页中展示广告的平台广告类型区别横幅广告占据一小块区域,使用AdView加载,内部为webView实现。加载完成后自动广告,点击后跳转到相应市场或者网页。插页广告全屏显示的广...
2019-04-30 15:22:59
7430
原创 ArrayList原理剖析
提问基于什么实现的?数组?链表?队列?为什么能一直add元素?分析实现方式定义的变量:维护了一个数组:transient Object[] elementData; // non-private to simplify nested class accessprivate int size;ArrayList内部所有的add、remove、set、get都是对elemen...
2019-03-28 20:02:16
157
原创 Android串口使用总结
准备工作NDK环境串口通信使用的C文件注意:c文件中需要修改函数名为当前包名的路径,c文件和.h头文件都需要修改接入底层库使用SO库引入main目录下新建jni录,将C文件置于该处新建Android.mk、Application.mk文件并配置编译项目,得到编译好的so库文件,生成目录默认为:app\build\intermediates\jniLibs\app\debu...
2019-01-09 16:16:33
765
原创 Twitter登录Callback URL not approved for this client application错误记录
因为做的APP是面向海外版,这两天突然说Twitter登录失败,查了各种原因和解决方案,最终解决,并提供两种解决方案。问题描述如果手机安装Twitter客户端,无影响,如果未安装,则提示登录失败,不能登录。二话不说,连上手机看日志:06-15 16:22:25.734 1015-1015/com.example.testlogin E/Twitter: Invalid ...
2018-06-15 17:04:25
6408
1
原创 源码解析--理解EventBus工作流程
EventBus源码解析(上)EventBus的创建和变量创建EventBus对象EventBus成员变量EventBus的订阅Register()unRegister()EventBus源码解析(上)EventBus是我们使用相当频繁的一个开源库,使用方式比较简单,功能强大,如此抢到的一个库,怎能不一探其内部实现?EventBus的创建和变量...
2018-05-22 18:30:34
539
原创 Android Socket通信(一)--基于UDP协议通信
最近做功能需要用到使用UDP协议和服务器进行通信,之前没有接触这一块,所以花了些时间了解和实现,这里做一下记录和分享。
2017-03-16 15:03:55
13467
1
原创 为什么写博客,如何使用GithubPages+hexo搭建个人博客站点
我们经常看博客,也很多人写博客,也有很多人搭建了自己的博客站点,那么我们为什么要写博客?又为什么要搭建个人博客?如何搭建个人博客? 使用GithubPages+hexo搭建个人博客站点
2017-01-11 21:45:00
1219
转载 Android常用的工具资料
AndroidDevToolsAndroid Dev Tools官网地址:www.androiddevtools.cn收集整理Android开发所需的Android SDK、开发中用到的工具、Android开发教程、Android设计规范,免费的设计素材等。欢迎大家推荐自己在Android开发过程中用的好用的工具、学习开发教程、用到设计素材,欢迎Star、Fork
2016-04-13 14:58:33
6397
原创 安卓5.0后httpclient
安卓5.0之后谷歌不推荐使用httpclient,所以如果要使用的话,要自己手动添加到libs中,位置在:%SDK目录%\platforms\android-23\optional\org.apache.http.legacy.jar
2015-12-02 10:28:23
767
原创 人脸识别 在线音乐,自己开发的一款不太成熟的安卓APP
人脸识别 在线音乐,自己开发的一款不太成熟的安卓APP使用Face++公司的人脸识别技术在线播放音乐使用酷狗音乐API
2015-11-08 09:10:29
1533
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人