不一样的Gradle多渠道配置总结

好久没有写博客了,突然想把这段时间项目中使用到的技术和多渠道相关的认识总结分享一下~ 一、新增渠道 使用AndroidStudio配合gradle,可以很方便的输出多个渠道包,只需要在app Module下的build.gradle中,对productFlavors领域进行配置即可,假设我当前开发...

2019-05-15 19:18:03

阅读数 14

评论数 0

DroidPlugin手札——home键强杀处理

DroidPlugin手札——home键强杀处理 DroidPlugin是360开源的插件化框架,github地址为:https://github.com/DroidPluginTeam/DroidPlugin。 因公司业务及项目历史原因,来公司的这段时间一直在使用DroidPlugin进行业务开...

2019-01-21 09:08:12

阅读数 4303

评论数 0

热修复与插件化基础——Java与Android的类加载器

一、java中的ClassLoader 1、类加载器 2、加载流程 Loading:类的信息从文件中获取并载入到JVM的内存中。 Verifying:检查读入的结构是否符合JVM规范的描述。 Preparing:分配一人上结构用来存储类信息。 Resolving:把类的常量...

2018-05-18 00:28:20

阅读数 253

评论数 0

热修复与插件化基础——Java与Android虚拟机

一、Java虚拟机(JVM) 1、JVM整体结构 使用javac将java文件编译成class文件。 类加载器(ClassLoader)将class字节码加载进JVM对应的内存中。 JVM将内存分配给方法区、堆区、栈区、本地方式栈4个部分,这4个部分分别存储字节码不同的部分。 垃圾回...

2018-05-13 20:31:07

阅读数 414

评论数 0

热修复——Bugly让热修复变得如此简单

一、简述在上一篇《热修复——Tinker的集成与使用》中,根据Tinker官方Wiki集成了Tinker,但那仅仅只是本地集成,有一个重要的问题没有解决,那就是补丁从服务器下发到用户手机上,如果你团队中的后台开发人员实力够强,那么完全可以自己做一个补丁管理系统,但我想应该没多少人愿意花精力在这个后...

2017-12-12 17:30:10

阅读数 1004

评论数 3

热修复——深入浅出原理与实现

一、简述热修复无疑是这2年较火的新技术,是作为安卓工程师必学的技能之一。在热修复出现之前,一个已经上线的app中如果出现了bug,即使是一个非常小的bug,不及时更新的话有可能存在风险,若要及时更新就得将app重新打包发布到应用市场后,让用户再一次下载,这样就大大降低了用户体验,当热修复出现之后,...

2017-11-14 19:28:43

阅读数 10463

评论数 16

项目实战-仿bilibili刷新按钮的实现

一、简述       最近跟小伙伴一起讨论了一下,决定一起仿一个BiliBili的app(包括android端和iOS端),我们并没有打算把这个项目完全做完,毕竟我们的重点是掌握一些新框架的使用,并在实战过程中发现并弥补自身的不足。       本系列将记录我(android端)在开发过程中的一些...

2017-10-24 13:00:19

阅读数 6917

评论数 22

高仿微信6.5.7(融云版)

一、简述 本项目由 CSDN_LQR 个人独立开发。 项目博客地址:http://www.jianshu.com/p/ae5e5ffdb1f1 项目源码地址:LQRWeChatRongCloud 项目DemoApp下载:Demo 1、简单介绍一下:这个项目是本人独...

2017-04-15 22:50:50

阅读数 6480

评论数 12

Gradle入门系列(五)——Gradle其它模块与Plugin插件

Gradle其它模块 一、Settings类 settings.gradle(对应Settings.java)决定哪些工程需要被gradle处理,占用了整个gradle生命周期的三分之一,即Initialzation初始化阶段。 二、SourceSet类 对默认的文件位置进行修改,从而让gradl...

2019-01-05 17:33:19

阅读数 347

评论数 1

Gradle入门系列(四)——初识Gradle Task

Gradle中的Task 一、Task定义及配置 TaskContainer:管理所有的Task,如:增加、查找。 定义(创建)Task // 直接通过task函数去创建 task helloTask { println 'i am helloTask.' } // 通过TaskCont...

2019-01-05 17:32:41

阅读数 270

评论数 1

Gradle入门系列(三)——初识Gradle与Project

初识Gradle 一、Gradle的基本概念 一个开源的项目自动化构建工具,建立在Apache Ant和Apache Maven概念的基础上,并引入了基于Groovy的特定领域语言(DSL),而不再使用XML形式管理构建脚本。同时,gradle还是一个编程框架,可以让开发者使用编程的思想来实现应用...

2019-01-05 17:32:06

阅读数 454

评论数 1

Gradle入门系列(二)——groovy高级语法

groovy高级语法 一、json操作 使用groovy自带的json工具进行json操作 groovy.json.JsonSlurper:将json原数据转成实体对象 groovy.json.JsonOutput:将实体对象转成json数据 def list = [ new Person...

2019-01-05 17:31:28

阅读数 176

评论数 0

Gradle入门系列(一)——groovy基础语法

groovy基础语法 一、变量 1、类型 对象类型、基本类型(本质是对象类型) int x = 0 println x.class double y = 3.14 println y.class 输出: class java.lang.Integer class java.lang.Doub...

2019-01-05 17:30:49

阅读数 218

评论数 0

解决ImageView超出父控件(或屏幕边界)时,图片挤压问题

一、需求 在屏幕边缘显示一张图片,超出屏幕宽度时,只显示图片的左边部分,并且不被挤压,其余部分剪切。但我在实际开发中,踩了个坑,这里做个记录,下面通过图片直观了解一下情况: 理想 现实 目前可以确定,这种情况会出现在使用RelativeLayout...

2018-09-05 11:37:40

阅读数 619

评论数 1

热修复与插件化基础——dex与class

一、dex/class浅析 1、class与dex对比 类型 class文件 dex文件 定义 能够被jvm识别、加载并执行的文件格式 能够被dvm识别、加载并执行的文件格式 如何生成 使用java命令(javac) 使用java命令、d...

2018-05-13 20:21:58

阅读数 241

评论数 0

使用PorterDuff解决clipPath无法抗锯齿问题

一、简述 前段时间公司史无前例的接了一个大数据外包项目(哇~我们又不是外包公司(╯°Д°)╯︵ ┻━┻),要求搞很多图表方便观察运营的数据情况,图表当然要用到MPAndroidChart啦,但并不是所有的图表都可以用它用实现,这时就需要自定义View了,其中有一个要求,如下图所示,这就是本篇要实...

2018-03-16 14:20:07

阅读数 1925

评论数 1

Libgdx——使用pixmap绘制透明圆角矩形

一、简述 1、需求 最近在使用Libgdx进行游戏大厅开发,遇到这种需求:为个别文本控件(Label)设置纯色透明的圆角矩形背景。 2、思路 Libgdx中的Label是提供背景设置的:对Label的Style的background属性进行设置即可,这个background是个Dr...

2018-02-09 09:37:24

阅读数 531

评论数 0

热修复——Tinker的集成与使用

一、简述 Tinker是微信官方的Android热补丁解决方案,它支持动态下发代码、So库以及资源,让应用能够在不需要重新安装的情况下实现更新。当然,你也可以使用Tinker来更新你的插件。 上面是Tinker官方Wiki的原话,意思嘛相信大家都看得明白,但注意啦,它并没有说Tinker可以让...

2017-12-06 17:51:26

阅读数 412

评论数 0

使用注解打造自己的IOC框架

一、简述IoC和AOP可谓是后台开发入门必学的知识(Spring相关),但这两者都仅仅只是概念而已,并非具体技术实现,同样的,Android也可以使用IoC和AOP,之前已经写过如何在Android开发中使用AOP了,有兴趣的朋友可以看我之前的博客(顺便点个关注吧),所以,本文主题便是IoC。 ...

2017-11-28 19:49:58

阅读数 402

评论数 0

手撸一个简易Android数据库框架

一、简述众所周知,移动端(不管是Android还是iOS)使用的数据库是Sqlite,这种小型的数据库很适合移动端存储大量的数据,使用上也跟mysql基本无差,但官方提供的API在操作性方面真不咋的,你必须掌握一定程度的sql语句,否则将很难驾驭。所以,有很多第三方的数据库框架就开始流行,如:Gr...

2017-11-27 11:55:26

阅读数 1012

评论数 0

提示
确定要删除当前文章?
取消 删除