- 博客(154)
- 资源 (20)
- 收藏
- 关注
原创 AdapterViewFlipper 添加item点击事件
AdapterViewFlipper 添加item点击事件使用AdapterViewFlipper实现广告滚动功能,在使用setOnItemClickListener时无法接收回调。原因由于在其父类AdapterViewAnimator中重写了onTouchEvent函数,但是在MotionEvent.ACTION_DOWN时返回值一直是false,导致onTouchEvent函数中的MotionEvent.ACTION_UP,无法回调,从而无法回调OnItemClickListener。因此要想
2021-01-18 14:43:37
542
原创 使用Retrofit+Okhttp+LiveData+协程的MVVM实现的网络请求框架
MVVM-Coroutine最近看到很多人在学习kotlin的时候,都有提及到协程,于是也就在网上跟着学习了一波。但是学过之后在什么用到呢?很多大牛开始用这个代替Rxjava或者线程来写MVVM框架了。更多关于个方面的原理问题,这里就不讨论了。以下就是我参考了网上很多大佬写的例子加入了自己的一些想法,模仿的一个MVVM框架分享给大家。希望能给要学习MVVM的小伙伴做个参考。使用retrofit+okhttp+协程的mvvm请求框架特点:使用自定义的MutableLiveData的Observer,
2020-11-01 16:56:52
1847
原创 android CardView,LinearCardView,RelativeCardView自定义和使用
在开发过程中我们的view或布局要使用圆角和阴影的时候我们可以使用shape自定义圆角和阴影系统自带的CardView来封装一层,之后设置圆角和阴影但是以上2中方式都有个缺点:自定义shape的时候,在对ViewGroup设置背景时,如果里面的子view有背景颜色同时比较靠近边角的时候,子view会伸出圆角范围且会把底层的ViewGroup设置圆角覆盖掉,或者漏出一个角。这样就达不到我们想要的效果了。使用系统的CardView来设置的话,由于CardView是继承FrameLayout
2020-10-23 11:40:46
970
原创 RecyclerView ItemDecoration 自定义高度和颜色
自定义高度和颜色RecyclerView ItemDecoration自定义RecyclerView ItemDecoration,针对RecyclerView的横向和竖向的分割线,具体特点如下支持像ListView一样可以使用颜色作为分隔线(也支持drawable)支持自定义分割线的高度支持控制是否显示最后一条分割线下面贴上完整代码供参考/** * recycler view 横竖方向使用的divider * * @author wangjian */public class L
2020-10-17 11:29:43
1901
3
原创 建议使用 keytool -importkeystore -srckeystore D:\xx- pkcs12“ 迁移到行业标准格式PKCS12
最近在用Android Studio Build ->Generate Signed Bundle or APK 生成一个key store的时候有个异常提示网上搜索其他人使用命令行生成的签名的时候也会有下面的提示(本人用命令行没有出现提示):但是,直接点击 ok,也会在对应的目录中生成key store文件,即使我们不按照上面的提示转换也可以正常使用的。但是官方建议我们转换一下我们还是转换一下吧步骤:一. 通过android studio或者命令行生成我们的xxxxxx.jks签名文件,
2020-09-12 16:13:00
4717
1
原创 Android启动APP时黑屏白屏
介绍黑白屏前先介绍2个概念冷启动:指 app 第一次启动或者启动被后台杀死后在这个状态打开 app,这种启动方式叫做冷启动。热启动:指 app 没有被后台杀死,按home仍然在后台运行,通常我们再次去打开这个 app,这种启动方式叫热启动。每当我们冷启动打开app的时候,会出现一会儿的黑屏或者白屏才进入Activity的界面显示,但是有些app却不会如手机QQ,微信。为什么会出现这样的现象呢?:主要是由于在应用启动的时候需要加载相关资源,在还没有执行到setContentView之前,界面显示的黑屏
2020-07-08 16:30:28
712
原创 okhttp添加日志拦截器,上传文件RequestBody.writeTo调用两次
okhttp添加日志拦截器,上传文件RequestBody.writeTo调用两次在使用okhttp上传文件监听进度时,由于OkHttpClient添加了日志拦截器,会导致RequestBody.writeTo调用2次下面先介绍2中解决方法,后面分析调用2次的原因方法一:在添加日志拦截器的时候,控制是否打印日志,如:在上传文件时设置HttpLoggingInterceptor.Level.NONE再或者,粗暴点,就直接在上传文件的时候,重新创建一个OkHttpClient实体删掉HttpLog
2020-06-29 10:50:36
2219
原创 ubuntu下编译webrtc for Android
安装虚拟机;VMware tools;共享文件夹(以下所有的过程都在共享文件夹下进行);执行apt-get update(确保源同步过程不出现错误);安装apache2sudo apt-get install git apache2 curl libcurl3 libcurl3-dev php5-curl之后弹出页面,使用tab键选择按钮,enter确认sudo ...
2020-04-03 10:22:20
2641
转载 Ubuntu添加开机root用户登录
1:当安装好虚拟机,安装好Ubuntu操作系统后,登陆的时候发现除了自己的设置的用户就是外来用户,其实Ubuntu中的root帐号默认是被禁用了的,所以登陆的时候没有这个账号,但是如果每次使用root都进行切换的话会显的很繁琐,所以下文就是设置root账户。(由于操作过程中忘记截图,但是为了方便大家的操作,此图非自己所做,特此声明)2:首先打开终端开启root账户 :sudo passwd ...
2020-04-03 10:12:12
479
1
原创 ubuntu下PjSip2.10编译 for android
PjSip官网编译指导:https://trac.pjsip.org/repos/wiki/Getting-Started/Android编译环境:ubuntu 16.0414.04也是可以的我创建的根目录:/home/pjsip-install/,下面所有操作编译都在这个目录里面执行了下面使用到的所有编译工具下载地址链接:https://pan.baidu.com/s/1BmQtX...
2020-04-02 17:42:21
2099
1
原创 cmake-3.17 cmake-3.18.2下载
cmake 官方下载地址https://cmake.org/files/,里面有各个版本,网速的好的小伙伴可自行选择合适的版本下载但是外国的网上下载太慢,下面分享几个我已经下载好的版本:Linux版本cmake-3.17.0.tar.gzcmake-3.9.2.tar.gzwindows版本cmake-3.15.5-win32-x86.msi由于csdn下载需要积分,就放到百...
2020-03-25 16:28:01
11783
34
原创 pjsip csipsimple源码下载
csipsimple源码google官网下载地址:https://code.google.com/archive/p/csipsimple/source/default/source由于连接外网比较慢,所以就直接一次把所有的源码都给下载下来了,分享给需要的人(官方也很久没有更新过这个项目了,但是里面的功能还是很全面的 ),包括的项目所有的功能源码,但是源码是eclipse的,使用Androi...
2020-03-24 11:06:40
393
转载 Git下拉和提交等遇到:fatal: early EOF fatal: index-pack failed
以下分享3种解决方法:方法一:找到.gitconfig,添加如下配置。(或者用git config --global命令)[core] packedGitLimit = 512m packedGitWindowSize = 512m [pack] deltaCacheSize = 2047m packSizeLimit = 2047m windowMemory = 2047m...
2020-03-23 10:04:32
5184
原创 百度云Windows Git-2.31.0-64-bit.exe下载,Git Bash
由于在官网下载Git太慢了,现在下载下来分享给网速慢的小伙伴放在csdn的下载需要积分,就放到百度云了You are downloading the latest (2.25.1) 64-bit version of Git for Windows. This is the most recent maintained build. It was released 28 days ago, ...
2020-03-19 10:03:29
18268
29
原创 mysql升级Caused by: com.mysql.jdbc.exceptions clause; this is incompatible with sql_mode=only_full_gr
mysql由5.7.22升级5.7.25版本的时候报Err1055异常Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column...
2020-01-06 15:05:02
225
原创 linux 下 使用cronolog对Tomcat 输出catalina.out 日志按照自定义日期格式进行切割 亲测可用
在Linux系统下,tomcat日志默认输出到catalina.out,随着时间的推移,catalina.out会持续增大,不方便管理和查询。本文将介绍如何用 cronolog工具进行日志按日期分割,亲测可用linux环境 centos7.3.1611 (Core) cronolog版本 cronolog-1.6.2tomcat版本 Apache Tomcat/8.5.40linux版...
2019-12-27 09:47:28
2463
1
转载 idea配置tomcat,tomcat能启动,访问项目404
1.先检查tomcat是否安装正确,能否正常启动2.检查idea,部署项目的访问路径,注意下图红框中必须是“/”转自:https://blog.youkuaiyun.com/weixin_43817709/article/details/97751595...
2019-12-24 17:28:41
968
原创 idea tomcat 怎样出现update classes and resources
idea Tomcat 在使用JRebel热更新的时候如何 出现update classes and resources如下步骤1. 首先配置好tomcat server2. 打开配置界面,选择Deployment3. 在Deployment标签界面下选择右边的+加号,添加一个Artifact,选择项目带有expload的注意: 不要选择带war的4. 查看已经显示了我们要找的 u...
2019-12-24 16:39:58
3476
1
原创 java程序CPU占用过高问题排查
记录:java程序CPU占用过高问题排查https://blog.youkuaiyun.com/puhaiyang/article/details/78663942Linux CPU信息和使用情况查看(CentOS)https://www.cnblogs.com/lsdb/p/7063577.html一次生产 CPU 100% 排查优化实践 Disruptor 的使用https://blog.cs...
2019-04-28 15:31:12
1082
原创 MySQL5.7 添加用户、删除用户与授权
登录mysql:mysql -uroot -prootMySQL5.7 mysql.user表没有password字段改 authentication_string;一. 创建用户:命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';例子: CREATE USER 'dog'@'localhost' IDENTIFIED ...
2019-04-27 13:26:52
336
原创 Tomcat无法登陆,在服务端Manager App无法打开
Manager App无法打开或登陆,主要有2个原因1. 在tomcat安装目录下的/conf/tomcat-users.xml里面要做如下配置如: <role rolename="manager-gui"/> <role rolename="admin-gui"/> <user username="test" password="123456" roles=...
2019-04-18 17:18:20
1234
原创 解决No module named png,No module named requests问题
有这个提示一般是由于缺少pypng模块,所以下载一下就可以了如下:window上进入python的安装目录E:\python2.7.16\Scripts在上面的目录中打开cmd执行:pip install pypng就可以了...
2019-04-12 15:39:50
5740
4
原创 resin-pro-4.0.61.tar.gz下载
百度云下载地址:链接:https://pan.baidu.com/s/1VPioBnoYwpqTRTtEH5YZcw提取码:mk6p
2019-04-02 16:00:18
574
原创 linux 查看java的安装路径
获取java安装路径前要判断是否已经安装成功java执行命令:javaUsage: java [-options] class [args...] (to execute a class) or java [-options] -jar jarfile [args...] (to execute a jar file)where opt...
2019-04-02 10:10:32
13822
2
转载 主线程中的Looper.loop()死循环为什么不会导致ANR?
源码的 ActivityThread 类中执行Looper.loop();的main函数,也就是主线程的入口public final class ActivityThread { public static void main(String[] args) { // 为主线程创建looper Looper.prepareMainLooper(); ...
2019-03-25 15:26:43
4822
1
原创 秒懂Android Handler和Looper消息原理
在理解Android Handler消息机制原理前请务必理解Threadlocal使用特点推荐文章https://www.jianshu.com/p/f2ff9c38c5be下面是我对Threadlocal的理解可供参考:每个线程都可以通过ThreadLocal来存储并获取保存的数据,多个线程之间是相互独立的。ThreadLocal在当前线程操作数据只对当前线程有效ThreadLoca...
2019-03-21 17:32:43
845
原创 CentOS7使用iptables开放特定端口
CentOS7 默认使用firewalld防火墙,如果想换回iptables防火墙,可关闭firewalld并安装iptables。一、关闭firewall:关闭防火墙systemctl stop firewalld.service禁止开机启动防火墙systemctl disable firewalld.service查看防火墙状态(关闭后显示not running,开启后显示r...
2019-03-19 14:24:10
5204
原创 ERROR: PID file /var/run/opensips.pid does not exist -- OpenSIPS start failed
ERROR: PID file /var/run/opensips.pid does not exist -- OpenSIPS start failed解决办法:查询密码设置表mysql> SHOW VARIABLES LIKE 'validate_password%';+--------------------------------------+--------+| V...
2019-03-19 11:46:32
3852
原创 ERROR 1045 (28000): Access denied for user 'opensips'@'localhost' (using password: YES)
在用户表中插入数据时:执行过mysql授权:grant all privileges on opensips.* to opensips@'%' identified by '123456' with grant option;刷新权限flush privileges;之后在对数据库表进行操作时报如下错误mysql: [Warning] Using a password on th...
2019-03-19 11:29:17
1329
4
原创 VMware虚拟机下Centos7 桥接方式网络配置完整步骤
一、打开虚拟机的设置页面,设置虚拟机桥接模式如图:选择桥接模式(复制物理网络连接可选)二、桥接模式配置VMware虚拟机网络1. 查看宿主机网络信息:ipconfig /all 以太网适配器 本地连接: 连接特定的 DNS 后缀 . . . . . . . : ...
2019-03-18 17:51:02
81352
54
原创 springboot-demo实例
springboot-demo实例demospringboot学习的小demo,希望对初学者有点帮助项目使用了swagger2自动生成文档使用thymeleaf进行模板数据填充使用mybatis封装对数据库的操作(数据库文件在根目录的springboot.sql,需要创建数据库springboot进行导入,具体配置可参考application.properties)具体实现可参看代码...
2019-03-14 15:45:20
400
原创 mysql 数据库导入导出方法
mysql 数据库导入导出一般形式:mysqldump -h IP -u 用户名 -p -d 数据库名 > 导出的文件名参数解析:-h:表示host地址-u:表示user用户-p:表示password密码-d:表示不导出数据注意:(1)-p 后面不能加password,只能单独输入数据库名称(2)mysqldump是在cmd下的命令,不能再mysql下面,即不能进入m...
2019-03-14 11:04:37
36081
6
转载 CentOS安装MySQL的步骤
1、官方安装文档http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/2、下载 Mysql yum包,官方链接,可自行选择版本http://dev.mysql.com/downloads/repo/yum/下载到本地再上传到服务器,或者使用wget 直接下载wget http://repo.mysql.com/mysql57-com...
2019-03-13 17:56:46
265
原创 adb wifi 连接手机调试
查看android设备的IP地址,这里有三种方式查看Android设备IP。(1).设置-关于手机-状态信息-IP地址中查看(2).设置-WLAN-点击当前链接上的Wi-Fi查看IP例如:设置—〉无线或网络—〉WLAN设置—〉查看当前连接Wi-Fi的IP地址(部分机型需要按menu键并选择“高级”选项—〉IP地址)(3).通过adb命令查看设备IP地址:adb shell netcfg前...
2019-03-07 10:17:17
558
原创 android基于手机tcp抓包
首先手机需要root哦1、下载tcpdump链接:https://pan.baidu.com/s/1Ze31eleBZ2cc7iQrKZ5Eeg 提取码:6ytx 2、通过adb命令上传到手机里adb push tcpdump /system/bin3、导出日志文件adb shell tcpdump -p -vv -s 0 -w /sdcard/capture.pcaptcp...
2019-03-07 10:12:50
3883
3
原创 Intellij idea解决乱码问题
解决方法第一步:修改intellij idea配置文件:找到intellij idea安装目录,bin文件夹下面idea64.exe.vmoptions和idea.exe.vmoptions这两个文件,分别在这两个文件中添加:-Dfile.encoding=UTF-8第二步:找到intellij idea的file—settings—Editor—FileEncodings的Global...
2019-03-07 10:03:09
1081
1
原创 react-native集成bug记录
bug记录:Command run-Android unrecognized. Make sure that you have run npm install and that you are inside a React-native project.此时需要下载node_modules依赖库,输入如下命令:yarn add react-native-cli...
2019-03-07 09:47:41
293
原创 code-push更新react-native项目
code-push更新使用:(参考地址:https://blog.youkuaiyun.com/sinat_17775997/article/details/69364463)在android的Application和React项目中的app.js配置 deployment key查看项目信息 code-push deployment ls ReactDemo查询key值 code-push ...
2019-03-07 09:45:43
312
原创 react-nativea安装和卸载响应组件
react-native安装组件:如:安装react-native-video组件npm install react-native-video --savereact-native link react-native-videoreact-native卸载组件如:如:卸载react-native-video组件react-native unlink react-native-vide...
2019-03-07 09:41:18
1634
原创 创建新的react-native项目
需要先安装npm创建项目react-native init ReactDemo 通过npm安装最新版本npm install项目的android->app->src->main目录下创建一个名为assets空文件夹,执行如下命令react-native bundle --platform android --dev false --entry-file index...
2019-03-07 09:39:07
2646
tcpdump文件,tcpdump
2018-10-18
okhttp library
2016-04-29
Android Layout ID Converter
2016-04-11
expandview
2016-04-07
listview局部刷新
2015-05-08
上拉下拉listview
2014-12-09
viewpage中的imageview支持双指缩放,支持大图高清图
2014-12-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人