5 XeonYu

尚未进行身份认证

我要认证

锲而舍之,朽木不折;锲而不舍,金石可镂

等级
TA的排名 3k+

Angular中优雅的处理RxJs自动取消订阅的方式以免出现内存泄露以及多次调用的问题

Angular中深度集成了Rxjs,只要你使用Angular框架,你就不可避免的会接触到RxJs相关的知识。在Android开发中,绝大多数的Android开发者都用过RxJava、RxAndroid或RxKotlin相关库。因其强大的操作符 以及 方便的线程切换 给我们日常开发提供了极大的便利。但是,可能是前端并不像强类型语言那么严格,及时代码写的有点小问题,也是能照样运行,不仔细排查也发现不了什么影响。在最近接触的Angular项目中,发现前端的小伙伴们很少去了解RxJs的原理,导致写的项目中,

2020-07-19 13:11:55

Angular中请求blob数据以及显示blob失败并提示 sanitizing unsafe URL value blob的解决办法

Angular中请求blob数据的请求Angular中的网络请求非常简单,我们导入HttpClientModule后,在类构造函数中注入 HttpClient 后就可以使用其提供好的相关请求方法了,这里不再赘述了 constructor( private _httpClient: HttpClient, ) { }我们先来看一下 HttpClient 这个类的相关注释。HttpClient 是一个可注入的类,带有执行HTTP请求的方法。

2020-07-19 11:45:54

手机访问Angular项目的方法

手机访问本地Angular项目

2020-06-28 20:04:15

Android 获取android密钥哈希码(keytool -exportcert -alias openssl sha1 -binary | openssl base64)

由于业务需求需要集成国外的SDK,而国外的sdk需要Android端提供一个签名哈希值‘’起初我以为是跟集成国内的高德地址一样提供个SHA1的值即可,之前我也写过一篇博客:Android获取SHA1值的详细步骤。一顿操作后发现无法通过。详细一看原来国外的sdk要求是经过openssl加密并且通过base64编码后的值。并给出了执行命令行keytool -exportcert -alias a...

2020-04-19 14:42:17

Android Studio常用插件

下面是自己平时开发时会经常是用到的插件,整理下方便换电脑时安装,直接复制名称去插件市场查找安装即可Alibaba Java Coding Guidelines可以帮助你规范你的Java代码地址:https://plugins.jetbrains.com/plugin/10046-alibaba-java-coding-guidelinesAndroid Drawable Preview方...

2020-03-25 11:15:52

Android Room提示 错误: Not sure how to convert a Cursor to this method's return type的原因及解决办法

Android Room+协程+LiveData提示 错误: Not sure how to convert a Cursor to this method's return type的原因

2019-09-27 14:37:47

Retrofit+kotlin Coroutines(协程)+mvvm(Jetpack架构组件)实现更简洁的网络请求

前言Retrofit发布的2.6.0版本内部支持了kotlin协程中的挂起(suspend)修饰符,这就意味着我们可以跟方便的用Retrofit结合kotlin协程来实现网络请求了。之前我们都是使用Rxjava2+Retrofit实现网络请求的功能,然后加入了AutoDispose来解决自动解绑的问题。https://yuzhiqiang.blog.csdn.net/article/det...

2019-09-19 09:25:54

Android使用协程(Coroutine)优雅的处理多个接口同时请求(网络并发请求)

Android中同时请求多个网络接口我们在开发过程中,很可能会遇到这样的需求,一个页面中需要同时请求好几个接口。我在之前写过一篇关于 高德逆地理编码接口返回数据格式不统一以及百度逆地理编码接口返回数据解析失败的踩坑记录 这篇文章,我当时的需求是要结合高德和百度两个接口,合并成一个我想要的数据。在文章中,我们使用了Rxjava的zip操作符来处理的两个接口同时请求的逻辑。大概代码如下: ...

2019-09-19 14:34:42

Android Studio检查依赖库是否有新版本,非常好用

AS自带的Lint检查

2019-08-08 15:58:05

mvp过渡到mvvm(Android 架构组件)

Android Jetpack话不多说,先上个官方图MVP因为前两年MVP架构非常火,于是我也将项目重构成了MVP的架构了,还写过一篇博客 从天地初开到MVC再到MVP 来记录如何从mvc过渡到mvp,以及他们的优缺点,感兴趣的可以看看。目前mvp架构我也用了很长一段时间了,也专门结合kotlin、Retrofit、Rxjava、Dagger2等主流框架封装了一个mvp的基础架构,随着...

2019-08-08 14:34:10

app:layout_behavior="@string/appbar_scrolling_view_behavior" 报红的解决办法

迁移到AndroidX后,发现 @string/appbar_scrolling_view_behavior这个地方报红了,并给出如下提示:Unresolved class ‘@string/appbar_scrolling_view_behavior’ less… (Ctrl+F1)Inspection info: Validates resource references inside A...

2019-05-15 11:09:16

Android结合Retrofit实现统一加解密处理(Get、Post、Delete、Put)

Android中对接口进行统一加密在之前的博客中我们介绍了 加密方案的选择 和 Android中加解密需要注意的地方本篇博客我们主要来看一下Android中加密的注意事项。在开发过程中,接口是很多的,我们不可能分别对每个接口的请求数据都进行加密,这样写起来以及后期维护是非常麻烦的,所以,肯定要是统一处理的还有我们常用的Get、Post、Delete、Put请求他们的请求数据存放位置是不一...

2019-05-13 11:38:42

Flutter报A RenderFlex overflowed错误(宽高度溢出)或者Flutter Widget不显示的解决办法(Expanded、Flexible)

我们在用Flutter写ui的时候,经常会遇见写完Widget后不显示,例如如下代码:代码很简单,实际上就是一个行控件里面放了一个Text和一个ListView。import 'package:flutter/material.dart';void main() => runApp(MyApp());class MyApp extends StatelessWidget { ...

2019-04-22 16:43:44

高德逆地理编码接口返回数据格式不统一以及百度逆地理编码接口返回数据解析失败的踩坑记录

最近有个需求是定位后根据定位的经纬度获取当前地址的详细信息,例如获取街道名称,街道号,乡镇街道编码,区域编码等信息。于是乎找到了高德的逆地理编码接口,看了看正好符合我的需求。然而使用起来并不顺利!由于我使用的Retrofit,正常情况下都是直接将json自动解析成实体类,但是由于接口返回的数据格式不规范,导致我遇见的一些问题,下面记录一下解决办法,希望能帮到你。高德逆地理编码接口返回数据格式...

2019-04-15 16:07:27

Flutter中的异步(Future、async、await、FutureBuilder)和 网络请求

Flutter 异步编程在Android开发中,异步编程是必不可少的,比如网络请求、IO操作等很多都是异步操作,而在Android原生中,有主线程和工作线程的概念,耗时操作都是要放到工作线程中的,ui要在主线程中更新,因此,原生Android开发中对线程的处理是必不可少的,幸运的是,一些第三方库例如Rxjava、RxAndroid让我们的线程切换起来十分的方便。但是Flutter是基于Datt...

2019-04-10 21:46:38

Flutter页面跳转和传值传参,接收页面返回数据、以及解决返回(pop)页面时黑屏的问题

Flutter导航和路由在Android中,我们使用Intent或者第三方路由SDK来解决页面之间的跳转和传值。在Flutter中,官方给我们提供了导航控件和路由控件来帮助我们进行页面的跳转和传值。官方文档: Flutter导航和路由在Flutter中,屏幕和页面统称为路径,我们可以通过routes来定义路径的别名,通过 Navigator来管理这些路径。下面文章中我还是用页面表示路径,...

2019-04-09 15:38:27

完美解决kotlin反射提示java.lang.IllegalStateException: No BuiltInsLoader implementation was found错误

Kotlin反射和混淆踩坑记录,解决kotlin反射运行时报 java.lang.IllegalStateException: No BuiltInsLoader implementation was found.以及java.lang.IllegalAccessException: Class java.lang.Class<kotlin.reflect.jvm.internal.a.e$d> cannot access private field java.lang错误的解决办法

2019-04-02 13:34:26

Android/Java完美使用RSA2结合AES对数据进行加解密(兼容RSA2 SHA256WithRSA,可使用2048长度的秘钥,AES Android各版本通用)

上一篇博客数据加解密方案选择中我们介绍了加密的几个方案选择,其中,最后一个方案使用RSA集合AES实现双向认证是目前来讲最安全的,也是含盖了前面几个方案的知识点。本篇博客我们就以最后一个方案为准,来进行代码实战,并记录一下踩过的坑。Android中的AES加密(兼容所有版本)在Android中使用AES加密的时,如果你从网上找的工具类,在Java环境下运行是没有问题的,但是当你放到手机或者...

2019-03-19 15:07:32

网络传输数据加解密方案选择(RSA+AES)

为什么要对数据加密理由很简单,为了安全。因为之前一直在赶项目,没有对传输的数据做处理,导致我这边通过抓包软件直接能看到我请求发的是什么数据,服务端给我返回的数据是什么。而且可以通过抓包软件修改响应数据返回给客户端,这样一来,客户端实际上接收到的数据并不是服务端给我的源数据,而是被第三者修改过的数据,如此一来,数据传输的安全就很有必要了。那如何保证数据传输的安全呢?总体要做到一下两点1....

2019-03-18 17:43:44

Flutter json转实体类(插件自动生成)

Json数据转成实体类的好处将Json数据转成实体类可以方便我们开发的时候使用数据,手动输入字段名称的话很容易出错,并且接口多的话很不好维护。Flutter中是否有Gson、FastJson这样的库在Android原生开发中,我们有很好用的Gson、FastJson等第三方库来帮助我们将json转成实体类。但是,在Flutter中可能不会有这样的第三方库供我们使用了,详细原因请看 JSON ...

2019-03-13 15:14:37

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 分享王者
    分享王者
    成功上传51个资源即可获取