- 博客(316)
- 资源 (4)
- 收藏
- 关注
原创 卡顿分享
卡顿分享什么是卡顿 如何衡量卡顿 产生卡顿的原因 卡顿优化 工具使用什么是卡顿卡顿是人的一种视觉感受,比如我们滑动界面时,如果滑动不流畅我们就会有卡顿的感觉,这种感觉我们需要有一个量化指标,在编程时如果开发的程序超过了这个指标我们认为其是卡顿的。FPS(帧率):每秒显示帧数(Frames per Second)。表示图形处理器每秒钟能够更新的次数。高的帧率可以得到更流畅、更逼...
2019-10-10 10:51:35
516
翻译 Android 优质技术分享
转自https://mp.weixin.qq.com/s/_v2NMSQmZA9HLVq03AzbWQ早该有这个系列了,主要更新这一周或者两周的一些觉得大家应该了解的信息。上一期入口:Android 优质技术分享 1期https://mp.weixin.qq.com/s/YPxeEUMQDWpOWQpBPdUgXAGoogle I/O‘19 要来啦!2019 Google I/...
2019-10-10 10:23:10
1559
转载 Android Studio/Intellij Idea 中Java文件太长导致无法识别问题
1. 今日使用Google的protobuffer3 遇到一个问题,当pb编译生成的java类文件过大时(十万行左右),就会导致as无法识别java文件。2. 解决办法: 1. 分解proto文件。 把每个Message分开编译,但是这种解决方法不方便,一般我们的pb文件是由后台同事写的,我们重写一遍,不利于协同工作。3. 简单的解决办法首先找到idea的安装目录,然后找到bin目录...
2019-09-03 14:53:00
1198
转载 Android Studio 工具:Lint 代码扫描工具(含自定义lint)
什么是 LintAndroid Lint 是 SDK Tools 16(ADT 16)开始引入的一个代码扫描工具,通过对代码进行静态分析,可以帮助开发者发现代码质量问题和提出一些改进建议。除了检查 Android 项目源码中潜在的错误,对于代码的正确性、安全性、性能、易用性、便利性和国际化方面也会作出检查。Android Lint 作为项目的代码检测工具,是因为它具有以下几个特性:已经被...
2019-06-20 20:37:48
3416
原创 记录下刷机步骤Pixel 3 XL
1、 adb devices2、adb reboot bootloader 出现no command,点击电源和上音量键3、adb sideload ota_file.zip
2019-04-03 17:21:31
9500
原创 匿名类
new AsyncTask<Void, Void, Void>() { @Override protected Void doInBackground(Void... params) { while(true); } }.execute();new Runnable() { @Override pub...
2019-01-04 16:16:16
790
转载 Android中常见的内存泄露及解决办法汇总
内存泄露就是指该被GC垃圾回收的,由于有另外一个对象仍然在引用它,导致无法回收,造成内存泄露,过多的内存泄露会导致OOM。 android中的内存泄露通常是Activity或者Fragment的泄露。下文分析以Activity展开,Fragment同理。1. 非静态内部类、匿名内部类2. 静态的View3. Handler4. 监听器(各种需要注册的Listener,Watcher...
2018-12-31 20:23:40
474
转载 内存泄漏总结
内存泄漏主要为activity泄漏有几大情景:1,内部类泄漏 内部类持有外部类,但外部类关闭时内部类依然被持有造成泄漏2,静态常量泄漏 静态变量长期维持到大数据对象的引用,阻止垃圾回收3,资源未关闭泄漏 资源性对象如Cursor、Stream、Socket,Bitmap4,注册反注册泄漏 我们常常写很多的Listener,未反注册会导致观察...
2018-11-12 10:49:41
232
原创 android 预防内存泄漏
1. 如果某些单例需要使用到Context对象,推荐使用Application的context,不要使用Activity的context,否则容易导致内存泄露。单例对象的生命周期和Application一致,这样Application和单例对象就一起销毁。2. 优先使用静态内部类而不是非静态的,因为非静态内部类持有外部类引用可能导致垃圾回收失败。如果你的静态内部类需要宿主Activity的引用...
2018-10-19 17:57:22
236
原创 git 使用,记录下方便查询
首先安装好Git客户端后,配置ssh创建SSH Key。在windows下查看【c盘->用户->自己的用户名->.ssh】下是否有id_rsa、id_rsa.pub文件,如果没有需要手动生成。 手动生成执行以下命令:$ git config --global user.name "lYY"$ git config --global user.email "lYY@ma...
2018-08-30 10:53:26
291
转载 linux下安装gcc详解
1、了解一下gcc 目前,GCC可以用来编译C/C++、FORTRAN、JAVA、OBJC、ADA等语言的程序,可根据需要选择安装支持的语言。我自己linux上是4.1.2版本,是不支持openMP的,而自己又要用到openMP,所以自己在原来的基础上安装了一个4.2以上版本的。 在安装之前,系统必须有cc或者gcc的编译器,如果没有,就不能安装更高版本的gcc了,如果是这种情况,...
2018-07-24 09:53:22
832
转载 使用PyCharm进行远程开发和调试
使用PyCharm进行远程开发和调试你是否经常要在Windows 7或MAC OS X上面开发Python或Web应用程序,但是它们最后需要在linux上面来运行呢? 我们经常会碰到开发时没有问题但是到了正式的Linux环境下面却出现问题。那么怎样保证开发环境跟运行环境的一致呢?通常有两种方法解决。一种是使用PyCharm内置支持的Vagrant,这个教程可以参考Vagrant开发环境配置。 不过...
2018-07-13 15:33:17
380
转载 mac上配置redis
首先使用brew进行安装 brew install redis 安装完之后进入/usr/local/etc目录,打开目录下的redis.conf文件,修改daemonize no为daemonize yes cd /usr/local/etc vim redis.conf 启动redis服务器 redis-server /usr/local/etc/redis.conf 启动redis命令行 re...
2018-07-10 13:39:04
879
转载 Java内存分配之堆、栈和常量池
Java内存分配主要包括以下几个区域:1. 寄存器:我们在程序中无法控制2. 栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中3. 堆:存放用new产生的数据4. 静态域:存放在对象中用static定义的静态成员5. 常量池:存放常量6. 非RAM(随机存取存储器)存储:硬盘等永久存储空间******************************************...
2018-07-05 15:25:39
176
原创 ffmpeg源码查看支持
在ffmpeg 下查看以下解码支持./configure --list-decoders 编码支持 ./configure --list-encoders封装支持./configure --list-muxers解封装支持./configure --list-demuxers通信协议支持./configure --list-protocols...
2018-06-21 15:35:56
1170
原创 mac 下bash_profile 里 ndk 配置
vim ~/.bash_profile添加以下:export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Homeexport PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"export ANDROID_SDK_ROOT=/Users/admi...
2018-06-19 14:04:43
623
转载 Android studio gradle 无法获取 pom文件
Android studio 3.1 导入app项目后,gradle无法获取 pom文件具体保存内容如下: Could not GET 'https://dl.google.com/dl/android/maven2/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0.0-d...
2018-06-11 20:52:13
3469
转载 第一次使用Android Studio时你应该知道的一切配置(三):gradle项目构建
目录:1、gradle的概念2、gradle配置jar包,和libs文件夹导入jar包的区别3、签名打包: (1)Studio (2)命令行 (3)gradle wrapper的原理4、BuildConfig的使用5、简单介绍module中build.gradle文件参数含义 一、gradle的概念:gradle是一个构建工具gradle是以Groovy语言为基础的gradle主...
2018-06-11 19:44:25
197
原创 Hiding AppBarLayout and giving its space to the remaining view
android.support.design.widget.AppBarLayout appbar = (android.support.design.widget.AppBarLayout) findViewById(R.id.appbar);CoordinatorLayout.LayoutParams lp = (CoordinatorLayout.LayoutParams)appbar....
2018-05-31 17:24:34
327
转载 一文让你搞懂design设计的CoordinatorLayout和AppbarLayout联动,让Design设计更简单~
一、写在前面 其实博主在之前已经对design包的各个控件都做了博文说明,无奈个人觉得理解不够深入,所以有了这篇更加深入的介绍,希望各位看官拍砖~二、从是什么开始 1、首先我们得知道CoordinatorLayout是什么玩意儿,到底有什么用,我们不妨看看官方文档的描述: CoordinatorLayout是一个“加强版”FrameLayout,它主要有两个用途: 1、用...
2018-05-31 10:22:11
737
原创 学习windowSoftInputMode,解决软键盘遮挡住输入框的问题
它的设置必须是下面列表中的一个值,或一个 ”state…”值加一个 ”adjust…”值的组合。值作用adjustPan当显示软键盘时,调整window的空白区域来显示软键盘。软键盘还是有可能遮挡一些有内容区域,这时用户就只有退出软键盘才能看到这些被遮挡区域并进行交互。adjustNothing当显示软键盘时,不调整window的布局adjustResize当显示软键盘时,调整window内的控件...
2018-05-23 16:58:16
1041
转载 WinDbg 查找问题异常堆栈,堆栈跟踪UnhandledExceptionFilter
UnhandledExceptionFilter 函数调用时没有异常处理程序定义来处理引发的异常。 函数通常将异常传递达 Ntdll.dll 文件这将捕捉并试图处理它。 在该进程的内存快照存在某些情况下,您可以看到到一个线程持有锁点的线程调用的 UnhandledExceptionFilter 函数。 在这些情况中您可以按照本文标识导致异常的 DLL 中的步骤。Windbg.exe 打开转储文件下...
2018-05-21 17:11:42
2486
转载 CEF General Usage(CEF3预览)
介绍CEF全称Chromium Embedded Framework,是一个基于Google Chromium 的开源项目。Google Chromium项目主要是为Google Chrome应用开发的,而CEF的目标则是为第三方应用提供可嵌入浏览器支持。CEF隔离底层Chromium和Blink的复杂代码,并提供一套产品级稳定的API,发布跟踪具体Chromium版本的分支,以及二进制包。CEF...
2018-03-01 16:50:18
787
转载 Xcode 8上 storyboard xib 使用imageView不显示问题
原因:更新xcode8后点击xib文件 修改一个约束,xcode8需要选择Device 如下图:xcode8需要选择Device再运行却发现cell上的imageView消失了第一时间在各个网站上搜素,却没有结果。xcode8刚出来碰到这个问题的人还不错吧,没有类似问题。定位问题:1.打断点看imageView是否已经创建,打印imageVi
2017-09-14 13:51:55
1566
转载 常用的第三方库
原文链接列举一下在平常开发中的一些常用的工具xcode 插件Alcatraz: xcode 插件管理工具FuzzyAutocompletePlugin: 代码智能提示、自动补全KSImageNamed-Xcode: 引入图片自动提示,预览ColorSense-for-Xcode: 代码生成颜色预览,可视化编辑VVDocumente
2017-08-25 13:33:35
1470
转载 iOS常用第三方库大全
下拉刷新EGOTableViewPullRefresh – 最早的下拉刷新控件。SVPullToRefresh – 下拉刷新控件。MJRefresh – 仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者上拉刷新功能。可以自定义上下拉刷新的文字说明。具体使用看“使用方法”。 (国人写)XHRefreshControl – XHRefreshContr
2017-07-19 15:29:23
1211
转载 iOS中都有什么设计模式?各个设计模式的作用?
一 iOS中都有什么设计模式?1.代理模式2.观察者模式3.MVC模式4.单例模式5.策略模式6.工厂模式 二 各个设计模式的作用?(一)代理模式在观察者模式中,一个对象任何状态的变更都会通知另外的对改变感兴趣的对象。这些对象之间不需要知道彼此的存在,这其实是一种松耦合的设计。当某个属性变化的时候,我们通常
2017-07-18 14:50:38
698
转载 iOS 中 常用的第三方库
原文链接一、基本流程使用的第三方轮子二、列表相关的轮子三、图片相关的轮子四、其他可能用的轮子一、基本流程使用的第三方轮子基本流程使用的第三方轮子ReachabilityMasonrySnapKitAFNetworkingAlamofireYTKNetworkYYModelMantleJSONModelSwiftyJ
2017-07-03 22:44:33
368
转载 CEF3开发者系列之CEF3入门
CEF全称Chromium Embedded Framework,是一个基于Google Chromium 的开源项目。Google Chromium项目主要是为Google Chrome应用开发的,而CEF的目标则是为第三方应用提供可嵌入浏览器支持。CEF3不仅开源,而且跨平台,框架的开发者也不断的在更新,英文资料较丰富,对HTML5,CSS3等支持也很好。目前CEF3被全球很多公司使用,国内使
2017-06-21 14:22:39
1760
转载 cef3加载flash闪烁问题非easyhook的另外一种解决方法
1.现象cef3加载flash,会出现弹出命令行窗口,显示not sandboxed,影响使用体验。网上的解决方法,参考此文。http://blog.csdn.NET/zx2356/article/details/51514403按照该文及提供的下载挂钩createProcessA,在xp上无效。2.解决方法有可能createprocessw也得挂钩。但懒得修改了。因此决定
2017-06-20 13:47:29
1259
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人