自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(126)
  • 资源 (1)
  • 收藏
  • 关注

转载 RN 与android原生界面互调

1. Linking 唤起APP.检查该app能否被唤起,也就是检查该app是否已安装成功; Linking提供了canOpenURL(url: string): Promise<boolean>;这个方法,用来检测某个url是否可以打开; Linking.canOpenURL('appscheme://').then(canopen => { ... }) 唤起并传递参数。 使用Linking打开app调用openURL方法即可:Linking.

2020-10-13 16:13:25 498

转载 Android 与reactnative 通信的方式

转载:https://blog.csdn.net/changsimeng/article/details/64444850在做React Native开发的时候避免不了的需要原生模块和JS之间进行数据传递,这篇文章将向大家分享原生模块向JS传递数据的几种方式。方式一:通过Callbacks的方式说起Callbacks大家都不陌生,它是最常用的设计模式之一。无论是Java,Object-c,C#,还是JavaScript等都会看到Callbacks的身影。原生模块支持Callbacks类型的参

2020-10-13 11:15:32 272

原创 npm install错误

npm ERR! cb() never called!npm ERR! This is an error with npm itself. Please report this error at:npm ERR! <https://npm.community>npm ERR! A complete log of this run can be found in:npm ERR! C:\Users\user\AppData\Roaming\npm-cache\_logs...

2020-09-22 18:35:08 156

原创 原生Android应用集成react-native混编

记载的是已有android工程,要集成react-native的过程,所记录的问题在stackoverflow都可以找到解决办法的1.引入react-native 参考:https://blog.csdn.net/mhhyoucom/article/details/836190112.运行时可能报错:Activity needs to be set if initial lifecycle state is resumed解决参考:https://stackoverflow.com/ques

2020-09-14 15:42:17 267

原创 EditText设置值失效

原文:使用setText()方法设值进行数据回显后,再次editText上值无法更新,本无数据的时候也会显示最初设置的值。查阅很多资料,解决方法及原因如下:解决方法是给这个editText添加属性android:saveEnabled="false",原因是安卓view状态保存,旋转屏幕或打开一个活动后,onSaveInstanceState会保存了EditText的内容,然后在onCreate的时候把EditText设置成功了,但是随后会在->onRestoreInstanceState尝试

2020-08-19 09:21:11 771 1

原创 kotlin组件化问题记录

先看kotlin教程,然后进行kotlin改造,能够更好锻炼使用,同时容易发现问题、解决问题1.加入kotlin的插件apply plugin: 'kotlin-android'apply plugin: 'kotlin-android-extensions'apply plugin: 'kotlin-kapt'2.kotlin注解处理是kapt用kapt替换annotationProcessor3.如果使用了Butterknife一.onBindView 加@JvmFil.

2020-07-22 11:47:24 145

原创 关于Android应用支持IPV6

今天看了一些关于Android应用关于支持IPV6的问题,简单记录ipv从地址来说比v4多了“[]”,长度更长1. 正常来说OKHttp,XUtils等上层网络框架是支持ipv6的。但是如果你的应用中用到了socket,比如长连接,或者是直接用socket进行数据传输等,这时就需要进行ipv6的适配了。后面适配时再补充2.Glide关于ipv6的支持。看到了https://www.jianshu.com/p/c8ebb4a3cc76。这篇文章介绍了绕过的方法,但看了glide的源码,发现有些不同

2020-07-17 10:14:06 9710 1

原创 kotlin之Reduce/ReduceRight/fold/foldRight

kotlin的高阶函数:Reduce() ReduceRight()val s = listOf<String>("1", "2", "3")println(s.reduce { acc, s -> s + acc })println(s.reduce { acc, s -> acc + s })println(s.reduceRight { s, acc -> s + acc })println(s.reduceRight { s, acc -> ac.

2020-07-10 15:46:34 463

原创 闭包和函数式编程

1.闭包刚工作时用到js就接触了闭包,但其实并没有完全理解闭包的含义。其实很多人应该也是说不清闭包的概念的,因为这个和程序语言设计是有关的,不是简单的编程问题。打算kotlin改造,看了几篇文章,觉得对闭包又有了一些理解,所以记录一下:将函数作为参数时,需要将自由变量在单独的一个环境中保存,然后该函数引用这个单独的环境,我们称之为深约束。而这样捆绑起来的整体也就是我们所说的闭包。有篇文章这样讲解闭包的概念:https://www.jianshu.com/p/c22db2a91989作者考

2020-07-10 10:30:46 188

原创 MpAndroid 丢失精度问题

MpAndroid的数据都是Entry形式的,而Entry的x和y都是float,这就会出现一个问题,就是如果数据超过八位会出现精度丢失。如果利用markerview显示点的数值,会出现偏差至于为什么精度丢失,是因为java本身数据存储方式导致的,可以自行查资料。解决方案:Entry有好几个构造方法,利用这个:public Entry(float x, float y, Object data) { super(y, data); this.x = x;}利用data

2020-07-02 15:58:21 275

原创 Android插件化开发

Android插件化开发和组件化开发其实是类似的,都是为了便捷开发,提高效率。但插件化的一个好处就是可以实现在线下载更新安装插件,类似热更新的功能,而热更新的classloder技术在插件化中也是关键点。主要插件化框架:2019年 爱奇艺qisaw 腾讯shadow2017年 滴滴virtualapk 360 Replugin之前还有ali altas Driodplugin等等主要的技术我觉得是类似的,shadow号称0HOOK,但aiqiyi说看了企鹅的源码,是有hook的,有兴趣.

2020-07-01 11:16:43 704 3

转载 java加解密(cipher / mac/ signature)

前言本文主要讲解常用加密算法,消息摘要,二进制字符变换等的java实现,对于加密算法本身的原理只会做简单的介绍,详细的原理可百度。相关概念加密加密是指将可读取的明文作为输入,通过特定的变换操作得到不易读取的输出(通常是二进制序列),目前常用的加密算法包括 对称加密的AES/DES,非对称加密的RSA/DSA/EC,加密很重要的一点就是解密,无论多复杂的数学变换,一定可以通过相应的逆变换得到原始输入,这是的加密行为才有意义。hash(哈希变换)hash值又称散列值或者消息摘要,对

2020-06-19 14:31:41 1022

原创 EditTextView点击任意位置,可调起键盘

记录一下这个小问题EditText默认是第一行获取焦点的,直接设为match_parent是不能实现这个效果的实现思路:1.EditText可设置多行,android:lines=xx,根据实际调整lines的数值2.gravity为top,保证焦点保持在第一行<ScrollView android:id="@+id/sv_content" android:layout_width="match_parent" android:layout_heig.

2020-05-18 15:00:05 267 2

原创 Android遇到418错误,提示爬虫

由于公司设置了华为的拦截策略,Android短的app突然爆出418错误,提示疑似爬虫攻击。最后请运维去掉了华为的拦截。经过调研和事件,被确定为爬虫攻击,是因为user-agent的问题1.代码使用okhttp,okhttp默认的user-agent是okhttp/版本号2.如果写过爬虫的可能会有了解,有种反爬虫机制,就是有些商业数据是禁止爬取的,需要模拟浏览器的user-ag...

2020-04-27 10:11:29 6262 1

原创 蛋疼的问题记录

今天打开工程突然出现gradle sync一直转圈圈,但是没有任何操作,不能build,也不能run,无任何log找了一圈,在event log里面发现,Gradle sync failed: Illegal char <:> at index 10:这是十分蛋疼的,因为iml文件是as自动生成的打开看,也只是配置相关的东西解决:打开as的idea log:java...

2019-11-26 11:09:31 505

转载 Github常用框架集合

Script桥接https://github.com/JackyAndroid/AndroidChromium ★1476 - 谷歌浏览器安卓版源码项目https://github.com/TheFinestArtist/FinestWebView-Android ★1428 - 可自定义webviewhttps://github.com/cprcrack/VideoEnabledWebVi...

2019-11-15 11:50:27 2876

原创 凹凸屏

普通activity可以通过设置toolbar/statusbar等全面显示,但是如splashActivity就必须通过设置了包括navigator也是在style里面设置即可,不然有河边问题,而且图片会压缩或拉伸1. 适配长屏幕的全面屏我们首先要确保应用在长屏幕设备上 (纵横比大于或等于 18:9) 也能够正常运行,尤其是现在市面上长屏手机越来越多,而且这些设备往往同时还采用了凹口...

2019-09-27 13:32:04 387 1

转载 Lint found fatal errors while assembling a release target.问题的分析与解决

Lint found fatal errors while assembling a release target.问题的分析与解决转载请注明:Lint found fatal errors while assembling a release target.问题的分析与解决 | KaelLi的博客问题还原新的一期版本开发,过程比较顺利,测试那边的bug也比较少,正是美滋滋的打r...

2019-07-26 15:42:30 246 1

原创 android studio 配置代码仓库

repositories {mavenCentral()maven { url "https://jitpack.io" }maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }maven { url 'http://maven.oschina.net/content/groups/public/' } ...

2019-07-13 17:08:14 792 2

转载 极光厂商通道集成指南

参考:https://www.jianshu.com/p/233e92bf682chttps://blog.csdn.net/mck477/article/details/88827318http://docs.jiguang.cn/极光厂商通道集成指南小米集成指南 1、使用JCenter自动化集成步骤 确认AndroidStudio的Project...

2019-07-05 13:59:04 5839 1

转载 关于Gradle配置的小结

博文出处:关于Gradle配置的小结,欢迎大家关注我的博客,谢谢!前言使用 Android Studio 来开发 Android 工程的过程中,接触 Gradle 是不可避免的,比如配置签名、引入依赖等。那么 Gradle 到底是什么东西呢? Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化建构工具。它使用一种基于 Groovy 的特定领域语言...

2019-07-03 17:01:18 159

转载 正则表达式

正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”)。模式描述在搜索文本时要匹配的一个或多个字符串。1.正则表达式基本语法两个特殊的符号'^'和'$'。他们的作用是分别指出一个字符串的开始和结束。例子如下:"^The":表示所有以"The"开始的字符串("There","The cat"等);"of despair$":表示所以以"of ...

2019-07-03 14:03:11 140

转载 HTTPS认证过程

HTTPS和HTTP的区别主要如下:1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进...

2019-04-15 10:22:23 13423 2

转载 RSA加解密,加签以及验签

由于RSA算法是不对称加密算法,所以每次加密得到的数据都不相同,同理加签得到的数据每次也不一样。简单的说下不对称算法,就是两把不同,但是完全匹配的秘钥,去进行加解密,公钥对外提供进行数据加密,私钥自己保存,对加密的数据进行解密。所以私钥不要泄露。RSA算法原理:1、任意互质的两个质数p,q。2、得到连个质数的乘积n。3、得到两个质数的欧元函数f(n)=(p-1) * (q-1)...

2019-04-15 10:18:34 1152 1

转载 RSA加密的原理——为什么被公钥加密的可以被私钥解密?

RSA加密的原理——为什么被公钥加密的可以被私钥解密?目录 一,RSA 数学理论基础 二,RSA实现原理 三,RSA加密的过程 四,参考文献引言在密码学最开始,都是使用的普通加密模式 A 用加密规则加密了字符串m 然后发给B B 用A的加密规则来解密,得到原始信息m在这个过程中A必须把自己的加密规则告诉B,否则B无法解密这段...

2019-04-12 17:39:20 1397

转载 消息摘要和数字签名

消息摘要算法简述定义它是一个唯一对应一个消息或文本的固定长度的值,它由一个单向Hash加密函数对消息进行作用而产生。如果消息在途中改变了,则接收者通过对收到消息的新产生的摘要与原摘要比较,就可知道消息是否被改变了。因此消息摘要保证了消息的完整性。消息摘要采用单向Hash函数将需加密的明文"摘要"成一串密文,这一串密文亦称为数字指纹(FingerPrint)。它有固定的长度,且不同的...

2019-04-12 17:22:43 3360 1

转载 https及证书认证

一、HTTPS通讯原理Https是基于安全目的的Http通道,其安全基础由SSL层来保证。最初由Netscape公司研发,主要提供了通讯双方的身份认证和加密通信方法。二、SSL协议通信过程1.客户端浏览器发送一个连接请求给服务器,服务器将自己的证书(包含服务器公钥S_PuKey)、对称加密算法种类以及其他相关信息返回给客户端2.客户端浏览器检查服务器传送到CA证...

2019-04-12 17:05:27 33469 2

转载 life

onAttach(Activity) : called once the fragment is associated with its activity. 调用该方法,将fragment与activity相关联onCreate(Bundle) : called to do initial creation of the fragment. 调用该方法,将fr...

2019-04-10 11:44:33 143

原创 as run failed

D:\TemplateApp>gradlew compileDebugSource --stacktrace -info这个命令可以发现很多隐蔽的错误比如我run的时候爆出如下错误,很蛋疼,无从下手:org.gradle.execution.MultipleBuildFailures: Build completed with 1 failures. at org....

2019-04-10 11:20:29 201

转载 代码风格

程序规范的重要性:对于许多初学者来说,敲代码的时候根本不知道程序的书写还有规范这一说,如果从事程序员IT行业,试想一下以后工作的时候需要你敲得代码将会是成千上万行,如果按照你的随意去书写或者不规范的方法去书写,当软件测试时,谁能看懂你的代码,就算能看懂,效率也会降低几倍,所以每个公司也会有自己的一套代码风格,但大致规矩都差不多,让自己在初学阶段就养成良好风格何而不乐?这篇博客主要讲讲书写程序...

2019-04-03 11:19:14 89

原创 大数据-安装hadoop

1.下载hadoop,安装 。 我安装的是3.1.22.配置HADOOP_HOME和Path,和java的配置方法一样3,修改hadoop安装目录下etc/hadoop/hadoop-env.cmd 的JAVA_HOME为你的java路径(如果你的java路径没有空格,不修改也可以。注意空格问题)4.下载sardetushar_gitrepo_download,替换你安装的bi...

2019-04-02 13:38:47 416 2

转载 Android屏幕适配全攻略(最权威的官方适配指导)

https://blog.csdn.net/bz419927089/article/details/45419023转载:http://blog.csdn.net/zhaokaiqiang1992Android的屏幕适配一直以来都在折磨着我们这些开发者,本篇文章以Google的官方文档为基础,全面而深入的讲解了Android屏幕适配的原因、重要概念、解决方案及最佳实践,我相信如果你能认...

2019-03-29 14:26:54 155

原创 代码的细节

比如我们写下代码:boolean one = isOne();boolean two = isTwo();if (one && two) {...} else if (one && !two) {...} else {...}这里逻辑有问题吗?其实这里运行没有问题代码确实有问题的,第二个分支的two一定是false...

2019-03-27 16:31:46 111

原创 大数据技术栈

大数据基础:Linux操作java语言HadoopScalaspark时间应该主要在Hadoop,Hadoop是分布式系统基础框架,主要包括map reduce过程:hadoop技术栈: Pig Chukwa Hive Hbase Mapreduce ...

2019-03-26 13:54:48 250

转载 android手机web页面调试

开始页面会一直空白,查询资料发现是因为国内无法访问 https://chrome-devtools-frontend.appspot.com,所以采取更改HOSTS的方法,步骤如下:1.打开C盘路径:C:\Windows\System32\drivers\etc\,找到hosts文件2.打开hosts文件,在末尾添加61.91.161.217 chrome-devtools-front...

2019-03-13 16:00:18 1701

转载 Android Http网络开发神兵利器

Android Http网络开发神兵利器 Android Http网络开发神兵利器 Http协议 HTTP简介 主要特点 Request Response Code Method Header 网络请求库 URLConnection...

2019-03-13 11:33:27 271

原创 Python学习笔记(五)

存储:前面学到了写文件,这个可以存储,但应该也是二进制流存储这里提到了json存储,这个存储的原理还不太清楚,但应该类似于对象序列化之类写入json文件:username = 'xiao tian tian'with open(filename, 'w') as f_obj: json.dump(username, f_obj)读取json文件:with open(fi...

2019-03-13 10:19:18 90

原创 Python学习笔记(四)

文件和异常读取文件内容:with open('pi_digits.txt') as file_object: contents = file_object.read() print(contents)无需关闭,python会帮你做这个事python读取末尾时,会返回一个空字符串,表现为多一个空行,去除空行:with open('pi_digits.txt') a...

2019-03-12 18:02:50 96

原创 Python学习笔记(三)

类的基本使用class Cat(object): """docstring for Cat""" def __init__(self, arg): super(Cat, self).__init__() self.arg = arg def year(self): print(self.arg) def action(self):首先__init__是创建类必须带的...

2019-03-12 17:07:45 163

原创 Python:学习笔记(二)

求模 %,与c java 相反求余 //round 四舍五入&gt;&gt;&gt;10 % 31&gt;&gt;&gt;10 % -3-2&gt;&gt;&gt;-10 % 32&gt;&gt;&gt;-10 % -33函数def test(): print(a)a = 8;test()简单函数定义和调用de...

2019-03-12 15:57:28 119

PluginApp.rar

replugin的demo实现。内部插件化,本地实现直接apk启动。已经趟过坑,可以直接使用。有分下载,没分联系我直接发

2020-07-02

空空如也

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

TA关注的人

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