自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (2)
  • 收藏
  • 关注

原创 Scheme协议之插件化必备

什么是 URL Scheme?android中的scheme是一种页面内跳转协议,是一种非常好的实现机制,通过定义自己的scheme协议,可以非常方便跳转app中的各个页面;通过scheme协议,服务器可以定制化告诉App跳转那个页面,可以通过通知栏消息定制化跳转页面,可以通过H5页面跳转页面等。1、URL Scheme应用场景:客户端应用可以向操作系统注册一个 URL scheme,该 scheme 用于从浏览器或其他应用中启动本应用。通过指定的 URL 字段,可以让应用在被调起后直接打开某些特定页

2020-11-09 10:44:23 14

原创 SVN与Android Studio的配置

在Android Studio中开发版本控制,除了Git就是SVN(小乌龟),和Eclipse不同的是Android Studio没有提供单独的插件,只能和SVN客户端关联使用,和Eclipse安装有很大区别,今天我就讲下在Android Studio中SVN的安装和配置的一些方法: 一、SVN的安装 [添加链接描述](https://tortoisesvn.net/) 官网 1、找到你的svn安装包,双击, 2、之后选择(modify)修...

2020-11-05 10:46:30 230

原创 RxJava2.0教程(二)

前言上一节教程讲解了最基本的RxJava2的使用, 在本节中, 我们将学习RxJava强大的线程控制.正题还是以之前的例子, 两根水管:正常情况下, 上游和下游是工作在同一个线程中的, 也就是说上游在哪个线程发事件, 下游就在哪个线程接收事件.怎么去理解呢, 以Android为例, 一个Activity的所有动作默认都是在主线程中运行的, 比如我们在onCreate中打出当前线程的名字:@Overrideprotected void onCreate(Bundle savedInstance

2020-09-24 10:51:42 8

原创 RxJava2.0教程(一)

前言RxJava2正式版发布了,但目前国内的资料还比较少,以前使用过RxJava1只需要看看更新文档就知道怎么使用了,但还有一些以前没用过RxJava的朋友可能就不知道怎么办了,不知道该看RxJava1还是直接跳到RxJava2。所以写下这个教程, 帮助那些没有用过RxJava的朋友入门。我先回答这个问题:学习RxJava2需要先学习RxJava1吗?这个问题就像论坛经常问学Java前需要先学习C语言吗,这里就不引战了!(PHP是世界上最好的语言!!)答案明显不是,如果你以前学过RxJava1,那么

2020-09-24 10:32:42 16

原创 Manifest merger failed with multiple errors, see logs解决方案

1、合并优先级清单文件合并是按照优先级进行合并的,低优先级的清单文件内容合并到高优先级的,假如合并的时候产生了冲突就需要解决冲突2、主工程(又区分构建体、渠道、风味) > module(按照依赖关系) > jar 包(aar)。3、合并冲突当低优先级的清单文件属性合并到高优先级中,假如高优先级中没有对应的属性,则直接合并,假如有并且不一样,这时候就有了冲突,应该去解决,怎么解决?4、补充规则:针对要合并的值不一样,该如何去合并呢?这时候就要对一些不同属性的值在不同的情况具体对待?注意

2020-07-15 20:28:58 535

原创 android开发中使用Cipher类实现加密,包括DES,DES3,AES和RSA加密

public static String Encrypt(byte[] secretKey, String encData) throws Exception { if (secretKey == null) { return null; } //1、创建Cipher对象,并且填写三种参数,算法/模式/填充模式 Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding"); //2、SecretK

2020-06-29 09:41:19 233

原创 Android开发之高德地图导航

本次编译开发是根据第三方地图(高德)实现地图导航功能。前言内容我就不在这里详细描述了,大家可参考官网信息查询。前言:1、需要登录高德开发者官网注册用户,绑定相关资料2、注册成功后,需要在控制台,应用管理栏目中,我的应用——进行创建新的应用——系统会自动生成Key补充:在创建新的应用时,需要提供自己的项目中的包名、SHA1码,这两个是整个项目的唯一标识(需谨慎操作)3、完成以上操作后,根据开发业务场景下载相关的SDK,SDK中包含了jar依赖库和so文件如果第一次使用高德地图,建议大家先把官网的D

2020-06-08 11:05:29 661 4

原创 Android开发Java转Kotlin

废话不多说,看图:一、Java转Kotlin1、选中要转的class类,然后点击code2、点击最下面的:如图好了 ,这就转换完了

2020-06-05 10:20:30 31

原创 Android studio光标变粗无法使用

写代码时,容易按到Insert键,这个按键是让光标变粗的,再按一次Insert就可以切换为正常模式。但是有时候出现的问题总是让自己摸不着头脑。所以我在这里把自己解决方案总结一下:1、 File - Settings - Editor - General - Apperance 取消 Use block caret 的勾选。点击OK ,就搞定了。2、File - Settings - Plugins - Installed 找到IdeaVim插件,将其删除掉。希望对大家有帮助!!!...

2020-05-28 10:57:18 83

原创 Gson高级使用和GsonBuilder设置

概述:在开发领域中数据传递有很多形式,通常数据调用交互采用XML,JSON,数据流,纯文本等形式;越来越多数据调用采用JSON,因为JSON数据结构简单,数据字节长度短,既简单又快速何乐而不为呢?从JSON的结构入手,所有json数据最终分为三种情况:标量(Scalar),也就是单纯的字符串或则数字形式序列(Sequence),也就是若干数据按照一定顺序并列在一起又称“数组”映射(Mapping),也就是key/value键值对Gson高级使用1.GsonBuilderGson是通过Gs

2020-05-27 09:11:56 201

原创 Android开发Kotlin之navigation

Navigation 是 JetPack 中的一个组件,用于方便的实现页面的导航,所以抽象出了一个 destination 的概念,大部分情况一个 destination 就表示一个 Fragment,但是它同样可以指代 Activity、其它的导航图。最初要有个起始页面,叫 start destination,处于栈底,是启动时的第一个页面,当然也是返回可见的最后一个页面。多个 destination 连接起来就组成了一个导航图,类似于一种栈结构,页面先进后出。destination 之间的连接叫做 a

2020-05-21 09:27:27 96

原创 Android单元测试之辅助工具

在Android Stuido新建过工程的开发者,应该有注意到,该工程默认会新建androidTest及test的测试包。在Android Stuido中,在androidTest编写的单元测试,默认使用jacoco插件生成包含代码覆盖率的测试报告;而test包下的单元测试代码,则直接使用Android Studio已有工具IntelliJ IDEA生成覆盖率,也可以通过自定义gradle task使用jacoco插件生成与androidTest相同格式的测试报告。androidTest 与 test:

2020-05-15 11:28:02 185

原创 git pull时冲突的几种解决方式

忽略本地修改,强制拉取远程到本地主要是项目中的文档目录,看的时候可能多了些标注,现在远程文档更新,本地的版本已无用,可以强拉关于commit和pull的先后顺序,commit——》pull——》push 和 pull——》commit——》push的顺序,两种情况都遇到过代码冲突。解决方法如下:未commit先pull,视本地修改量选择revert或stash2.1 本地修改量小如果本地修改量小,例如只修改了一行,可以按照以下流程-> revert(把自己的代码取消) -&.

2020-05-14 14:05:05 1302

原创 Android开发之build.gradle文件(app)

apply plugin: 'com.android.application' //说明module的类型 com.android.application为应用程序,com.android.library为类库android { compileSdkVersion 25 //编译的SDK版本,最佳选择为最新的API级别 buildToolsVersion "25.0.2" //编译的Tools版本,最佳选择为最新的API级别 de...

2020-05-13 16:48:26 141

原创 Android主题色无缝切换方案:Databinding下实现控件皮肤无缝切换

无缝切换主题色这个功能一直都是Android的开发经常遇到的。我逛的最多的B站App就是一个很好地例子,他们的皮肤切换是无缝的,那我们自己能不能自己也来搞一个,当然是可以的,虽然有重复造轮子,但是我们还是需要不断锻炼自己的开发水平,尝试不同的方案。Github可以找到一个不错的皮肤切换库:Android-Skin-Loader基于LayoutInflaterFactory的皮肤切换,涉及到LayoutInflater 提供了setFactory(LayoutInflater.Factory facto

2020-05-12 14:13:53 100

原创 Glide与Fresco的对比

Glide:1、多种图片格式的缓存,适用于更多的内容表现形式(如:Gif,WebP,缩略图、Video)2、声明周期集成(根据Activity或者Fragment的生命周期管理图片加载请求)3、高效处理Bitmap(bitmap的复用和主动回收,减少系统回收压力)4、高效的缓存策略,灵活(Picasso只会缓存原始尺寸的图片,Glice可以缓存多种规格的),加载速度快且内存开销小(默认Bitmap格式的不同,使得内存开销是Picasso的一半)Fresco:1、最大优势在于5.0以下(最低2.3

2020-05-12 13:11:57 394

原创 数据库GreeDao的使用总结

优点1.通常我们在使用GreenDao的时候,我们只需定义数据模型,GreenDao框架将创建数据对象(实体)和DAO(数据访问对象),能够节省部分代码。2.不向性能妥协,使用了GreenDao,大多数实体可以以每秒几千个实体的速率进行插入,更新和加载。3.GreenDao支持加密数据库来保护敏感数据。4.微小的依赖库,GreenDao的关键依赖库大小不超过100kb.5.如果需要,实体...

2020-04-30 15:08:01 69

原创 Kotlin——之JsonToKotlin插件

前言在使用Kotlin进行开发的时候,我们需要经常对Json数据做解析和处理,在Java的类似开发环境中,我们就需要参照Json的数据格式相应的生成对应的JavaBean,在Java开发的时候有GsonFormat这个插件,当然,在Kotlin的开发环境中肯定也不能少了这类插件一.插件的名称:JsonToKotlinClass见名知义,就是把一串Json字段串数据直接映射出一段Kotl...

2020-04-28 09:52:35 179

原创 Android混淆从入门到精通的路很长

简介作为Android开发者,如果你不想开源你的应用,那么在应用发布前,就需要对代码进行混淆处理,从而让我们代码即使被反编译,也难以阅读。混淆概念虽然容易,但很多初学者也只是网上搜一些成型的混淆规则粘贴进自己项目,并没有对混淆有个深入的理解。本篇文章的目的就是让一个初学者在看完后,能在不进行任何帮助的情况下,独立写出适合自己代码的混淆规则。说在前面这里我们直接用Android Studio来...

2020-04-27 11:03:17 39

原创 解析Retrofit

Retrofit 是 Square 公司开发的一款针对 Android 网络请求的框架,Retrofit 底层是基于 OkHttp 实现的。与其他网络框架不同的是,它更多使用运行时注解的方式提供功能。1、Retrofit基本用法首先要配置build.gradle2、Retrofit的注解分类Retrofit 与其他请求框架不同的是,它使用了注解。Retrofit 的注解分为三大类:分...

2020-04-27 09:40:50 51

原创 Android清除缓存,清除数据

概念:清除数据、清除缓存的区别清除数据主要是清除用户配置,比如SharedPreferences,数据库等等,这些数据都是在程序运行过程中保存的用户配置信息,清除数据后,下次进入程序就和第一次进入程序时一样缓存是程序运行时的临时存储空间,它可以存放从网络下载的临时图片,从用户角度触发清除缓存对用户并没有太大的影响,但是清除缓存后用户再次使用该APP时,由于本地缓存已经被清理,所有的数据需要重...

2020-04-26 14:47:21 290

原创 Androud Studio中使用Kotlin集成项目

前言在Google I/O 2017中,Google 宣布 Kotlin 成为 Android 官方开发语言。在Google I/O 2019中,Google 宣布,Kotlin 编程语言现在是 Android 应用程序开发人员的首选语言,“Android 的开发将越来越以 Kotlin 为先。” 许多新的 Jetpack API 和特性将首先在 Kotlin 中提供。Kotlin将成为An...

2020-04-24 15:45:11 80

原创 Retrofit+RxJava之封装详情

public class RetrofitConf {private static final String BASEURL = “http:// xxxxx”;private static String token;private Retrofit retrofit;private LpyService service;private Boolean isDebug = true;/...

2020-04-24 10:51:27 62

原创 GitLab拉去远程分支到本地

1,在本地创建一个gitHub仓库2,然后右键打开git选择Git Bash Here,弹出命令窗口1》输入git init命令,成功后会在本地文件中看到.git文件2》输入git remote add origin https://xxxxxx (https是gitlab上的项目链接)3》拉去远程到本地,输入git fetch origin【远程分支名】4》最后执行g...

2020-04-23 14:06:19 256

原创 百度AI开发引用官方SDK

前言http://ai.baidu.com/tech/face/collect AI开发平台需要注册用户,用户分为个人或企业在License管理中新增授权。(1)授权标识:最好是取你应用的英文名称。(2)应用类型:选择一个跟你应用一样的类型即可。(3)应用信息:如果是先弄Android的话把iOS的勾去掉,反正后续iOS也可以补充信息的。(4)安卓包名:app目录下的bui...

2020-04-19 16:58:02 216

原创 HashMap原理的解析

了解HashMap需要熟悉以下函数:LoadFactor 称为负载因子,默认值为0.75threshold 表示所能容纳的键值对的临界值threshold计算公式:数组长度 * 负载因子Size 是HashMap字段用来记录HashMap内部结构发生变化的次数HashMap的默认容量INITIAL_CAPACITY 为16HashMap采用了数组+链表+红黑树(jdk1.8)的存储结构...

2020-04-17 17:05:01 38

原创 android Studio自动创建signingConfigs进行打包

我们使用Android Studio 运行我们的app,无非两种模式:debug和release模式。两种模式也可生成生产和开发两个版本debug模式使用一个默认的debug.keystore进行签名。这个默认签名(keystore)是不需要密码的,它的默认位置在C:\Users<用户名>.Android\debug.keystore,如果不存在Android studio会自动...

2020-04-13 14:17:21 291

原创 Android的CPU架构

手机CPU架构查询需要在Android studio中的项目里打开Device File Explorer,找到proc文件,点击cpuinfo文件1、JNI的全称是Java Native InterfaceJNI是java平台的一部分,Java无法直接调用系统操作,1)通过可以实现与其他语言进行交互。如:c/c++JNI的接口函数和指针:native代码想要访问 java虚拟机需要调用...

2020-04-12 16:35:22 67

原创 Android Studio向项目添加C/C++原生代码教程

Android Studio向项目添加C/C++原生代码教程一、创建支持C/C++原生代码的新项目教程1.1、下载NDK和构建工具要为应用编译和调试原生代码,需要安装以下组件:Android原生开发工具包 (NDK)----这套工具集允许我们为Android使用C和C++代码,且其提供众多平台库让我们可以管理原生Activity和访问物理设备组件,例如传感器和触摸输入。CMake----...

2020-03-31 17:01:45 194

原创 Android 开发自定义使用svg构造交互式中国(各国)地图

自定义开发是android的必不可少的技能之一,要熟练的掌握,需要大家不断的学习,写代码才能日积月累。好了,废话不多说了;看下面的步骤:1,用的到的两个地址https://www.amcharts.com/svg-maps/?map=china (需要下载国家的svg)http://inloop.github.io/svg2android/ 下载后需要把svg文件在该地址中解析为And...

2020-02-11 19:07:45 118

原创 微信官方SDK,导致签名报错解决方案

1,调用微信官方SDK实现登录,分享,支付等功能,测试打包后总是报错签名不一致原因:是因为打包中有两种类型,一种正式的,一种是测试类型。解决方法:让Debug和Release模式使用相同的签名,在build文件中配置SigningConfigs,BuildTypes。可以直接写代码或者通过Android可视化生成此效果使用可视化方法生成方案:右键点击项目选择此处需要对新...

2020-01-10 17:03:10 91

原创 Android Studio通过git使码云上代码和本地同步

第一步:第二步:androidstudio git拉去项目No tracked branch configured for branch master or the branch doesn't exist.解决办法:按照提示在Androidstudio的Terminal中输入git branch --set-upstream-to origin即可;第三步:解决方案:...

2019-12-25 10:07:52 306

原创 RecycleView实现item中多个点击监听事件

RecycleView确实是一个好东东。它的使用大大提高了程序猿的开发效率,下面我为大家分享它的其中一个功能。如下1,在adapter类中,需要创建两个点击事件和个监听事件。public class ListenAdapter extends RecyclerView.Adapter<ListenAdapter.MyViewHolder> {private Context con...

2019-08-13 15:10:54 1010

原创 AppbarLayout是一种支持响应滚动手势的app bar布局

xml布局中控件排列顺序如下:CoordinatorLayout↓AppBarLayout↓CollapsingToolbarLayout↓RelativeLayout↓Toobar

2019-08-09 09:26:01 39

原创 RxHttpUtils框架,无法访问Android9以上网络请求的解决办法

第一:在res文件中新建一个Xml文件,再新建一个network_security_config.xml第二:把拷贝在xml文件中第三,AndroidManifest文件下 ——application——android:networkSecurityConfig="@xml/network_security_config"以上为解决方案:如有不到之处请留言...

2019-08-09 09:23:27 222

原创 日常报错问题

出现类似报错一般会是布局出现的问题,搜索当前XML文件的布局问题

2019-07-16 20:14:19 31

原创 CSDN快捷小技巧

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I...

2018-08-13 21:51:28 60

TestApplion.rar

此文件是Java源码开发,开发工具Android Studio,包含了多个功能模块开发,如指纹识别,SVG图片实现中国板块,URL链接生成二维码等等

2020-05-20

Readers.rar

快速的掌握音频播放技巧,加油

2019-08-21

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

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