自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 Hexo+NexT+腾讯对象存储COS实现相册(妹子卷轴)功能

Hexo+NexT+腾讯对象存储COS实现相册功能的实现请看个人博客:http://blog.fiftykg.com/hexo/hexo相册功能实现.html

2019-04-13 23:30:30 1122

原创 pubspec.yaml: Expected a key while parsing a block mapping.

检查一下assets:前面是不是多了空格之类的。

2019-03-01 17:08:52 2484

原创 源码阅读之Activity启动与App启动流程

本文简单分析一下activity的启动流程。分析基于Android 9.0源码,有兴趣的朋友可以在AndroidStudio创建一个API28的HelloWorld工程跟着看,如果发现文章有什么问题,可以联系我。Activity在应用内启动流程话不多说,先上图,流程图1:简单介绍一下涉及的类:Instrumentation工具类,包装了ActivityManagerService...

2019-02-20 01:30:18 974

原创 Android WebSocket 实践

既生HTTP何生WebSockt与服务端交互的协议中,HTTP只能被动接收客户端请求,然后响应。而WebSocket在客户端与服务端建立连接以后,服务端可以主动发消息给客户端。这就是WebSocket的特点。应用因为服务端可以主动发消息的特性,WebSocket在以下场景使用非常多:1、推送2、聊天室3、开发工具4…大部分功能依赖于产品的业务,投入使用可能比较困难,而开发工具是开发...

2019-01-24 16:57:08 1912

原创 图凌闪屏页及Android彩蛋探究

前言通过本文,你可以1、了解一种特别的闪屏2、了解android版本彩蛋的实现原理3、获得一个android各版本彩蛋的demo特殊的闪屏在体验App时发现了一款叫‘图凌’的app,闪屏页非常特别。从下图可以看到,是一个以桌面壁纸为背景的页面。这种闪屏效果让人眼前一亮,所以非常好奇他的实现原理。在不破解apk的情况下(破解失败,有腾讯乐固加固==),猜想了几种实现方式:1、通过A...

2019-01-24 16:55:20 1272

原创 就为了这个功能也要下载一个IDEA!

使用Android Studio开发时,一直没有一个合适顺手的UML工具。偶然间看到后台同学使用IDEA使用diagram功能显示类图关系,想着android的工程应该也可以使用,试了一下,果然是ok的!ArrayList的类图:glide的类图:使用方法查看一个类的继承关系:选中类-右键菜单-diagrams-show diagrams查看一个package的类图:选中pack...

2019-01-24 16:49:29 617

原创 adb shell dumpsys activity top

在Android P的模拟器上执行adb shell dumpsys activity | grep "Focus"无法显示顶层的Activity。于是就想着换一个命令,结果发现了更强大的adb shell dumpsys activity top。功能:0、可以显示当前的Activity1、可以显示View Hierarchy,看view的类信息2、可以显示Handler中的Messag...

2019-01-24 16:48:20 18230

原创 hexo定时发布文章

通常情况下,你可以修改hexo文章的发布时间、更新时间,所以定时发布没什么意义。但是如果是一个定期更新的博客,你想周末一天发布一周的文章,就需要定时发布了!hexo其实为我们提供了“定时”功能。在hexo_config.yml中将future: true改为future: false,即可禁用超前发布。接下来,只要将文章的data设置为未来的时间,就可以做到定时发布,或者说延迟发布。参考:官...

2018-11-06 00:34:01 774

原创 通过ReactNative viewTag获取原生的View

原文:http://blog.fiftykg.com/android/通过ReactNative-viewTag获取原生的View.html前言前端的同学希望传一个reactTag(rootViewTag/viewTag)给Android原生,让原生找到对应的View进行一些黑科技的操作。然后问题来了,ReactNative的reactTag虽然是一个int值,但是与Activity#fin...

2018-11-05 16:11:33 3184 1

原创 不蒜子无法显示

http://ibruce.info/2015/04/04/busuanzi/过期啦!

2018-11-04 15:45:11 614

原创 idea.case.sensitive.fs=true

1、创建idea.properties文件touch ~/Library/Preferences/AndroidStudio3.2/idea.properties2、写入 idea.case.sensitive.fs=true3、重启AndroidStudio

2018-11-02 00:20:11 1440

原创 Unable to execute port: can't read "configure.sdkroot"

echo macosx_sdk_version 10.14 | sudo tee -a /opt/local/etc/macports/macports.conf

2018-11-01 00:55:41 453

原创 hexo首页优雅的隐藏部分文章

原文链接:http://blog.fiftykg.com/hexo/hexo首页隐藏部分文章.html用hexo做博客网站的时候,想搞一些花里胡哨的东西,例如某些福利、妹子图、日记,但是又不想放在首页,影响气质,怎么办呢?人真是复杂的动物啊。hexo默认是会把所有文章按照时间顺序排列,分页展示。百度上查到一个黑科技,直接改模板引擎,增加一个显示隐藏的标记位,渲染的时候判断,如果为hide就隐...

2018-10-28 23:30:06 10014 2

原创 ExoPlayer踩坑:IndexOutOfBoundsException

项目中语音播放用到Google开源的ExoPlayer,基本使用很简单,但是线上还是出现了一些测试没有发现的crash。其中一个就是IndexOutOfBoundsException。com.google.android.exoplayer2.Timeline$1.getPeriod(Timeline.java:516)2 com.google.android.exoplayer2.Timel...

2018-10-22 12:59:30 2351 1

原创 你需要的Git逆操作/撤销操作

G it逆操作/撤销操作删除分支 git branch -D <branch-name>本地删除Tag git tag -d <tag-name>删除远程Tag git push origin :<tag-name>删除撤销本地最近的commit git reset --soft <commit-id> 注意是git lo...

2018-09-11 00:37:45 1426

原创 Git常用命令

基本概念:工作区:改动(增删文件和内容) 暂存区:输入命令:git add 改动的文件名,此次改动就放到了‘暂存区’ 未跟踪的文件(untracked files):新建的文件,在git add之前的状态 本地仓库(简称:本地):输入命令:git commit 此次修改的描述,此次改动就放到了’本地仓库’,每个commit,我叫它为一个‘版本’。 远程仓库(简称:远程):输入命令:gi...

2018-09-09 23:38:13 164

原创 Gradle读取package.json

ReactNative项目中,ReactNative版本配置在package.json文件中,另外Android的build.gradle中也需要配置相应的版本。所以能不能只配置一处呢?方法就是gralde中读取package.json的react-native的版本号。代码如下:String reactVersiondef jsonFile = file('../package.jso...

2018-08-31 01:22:02 2284

原创 GitBook教程指南

工欲善其事必先利其器前言在V2EX上看到有讨论markdown工具的帖子,许多人推荐了Typora,简约美观。而我一直比较喜欢Gitbook。Gitbook有几个优点:使用Git,方便存储、回退、协作等轻松导出多种格式,如html、pdf等有书籍列表,方便管理有众多插件安装安装Node.js安装gitbooknpm install -g ...

2018-08-29 00:04:16 1772 1

原创 如何查看博客是否被搜索引擎收录

做SEO的时候会想网站有没有被搜索引擎收录呢?怎么查呢?其实有一个简单的方法,在搜索引擎里面搜索:site:fiftykg.com

2018-08-21 22:02:12 1611

原创 Theme.NoDisplay 6.0以下的坑

线上有一个奇怪的Crash:java.lang.IllegalStateExceptionActivity {com.hongxiu.app/com.hongxiu.app.wxapi.WXEntryActivity} did not call finish() prior to onResume() completingandroid.app.ActivityThread.perfor...

2018-08-21 16:40:49 3890 1

原创 Gitbook 输出重定向

gitbook在github部署的时候提供了2个选择: 1、部署在master分支 2、部署在master的/doc目录下如果既想保留源文件又想部署,肯定会选择第二个。但是gitbook build 或者gitbook serve命令默认生成的目录为_book,所以需要进行重定向,命令为:gitbook build src desc...

2018-08-21 01:04:51 446

原创 理解npm run

理解npm run引言ReactNative 开发中经常用到一些npm run的命令来打包。最近在这上面踩了一个坑,所以研究了一下。在阅文做了两个ReactNative混合开发的项目,都用npm run bundle android打ReactNative的bundle包,再打包Android apk。但是最终的apk里面却有些不同。其中一个apk里的所有svg图片都转换成了不同分辨率...

2018-08-18 12:08:32 10827

原创 SVG踩坑:Resources$NotFoundException: File res/drawable-hdpi-v4/

SVG踩坑:Resources$NotFoundException: File res/drawable-hdpi-v4/项目中使用了SVG代替PNG,线上出现了Resources$NotFoundException: File res/drawable-hdpi-v4/xxx.png的异常。Crash处的代码:VectorDrawableCompat vectorDrawableCo...

2018-08-17 12:49:16 6121 2

原创 Android开发神器:Pandora

Android开发神器:Pandora前言工欲善其事,必先利其器。开发效率很大程度上取决于开发工具,举个例子,Web前端开发页面调试run一下几秒钟,Android客户端run一下,3、5分钟起步!差距可想而知。现在iOS有Flipboard开源的神级调试工具FLEX,可以轻松查看控件属性,查看数据库,d动态修改属性和变量,查看文件系统,查看网络请求过程等等。而ReactNative摇...

2018-08-15 16:09:13 2167

原创 SingleTask与android.intent.action.MAIN的坑

SingleTask与android.intent.action.MAIN的坑项目首次封板内测期间用户反馈了一个问题,无论打开多少页面,将应用推至后台再启动就回到了主页。在内测期间才发现这么严重的问题,开发和测试都吓了一跳,庆幸这次内测只在公司范围内。排查这个问题的时候,有点懵。项目是ReactNative架构的,原生为RN提供了清除Activity栈的方法,所以误以为是RN的错误调用导致...

2018-08-14 12:54:33 1284

原创 ReactNative ReactContext#getCurrentActivity NullPointerException

ReactNative ReactContext#getCurrentActivity解析ReactNative与原生混合开发时,原生经常需要为ReactNative提供组件。提供组件时getCurrentActivity使用不当容易造成NullPointerException。以下是一个简单的示例分析:// 随便一个自定义view,继承自LinearLayoutclass Cust...

2018-08-11 00:43:54 2389

原创 Flutter与Android原生的交互

Flutter发布Preview版本后热度持续上升,但是仍然有很多不足之处,所有前期还是采用与原生结合的混合开发,那就需要了解Flutter与原生的交互的一些方法。原生启动Flutter Activity新建Flutter 项目默认启动MainActivity,继承自FlutterActivity,在AndroidManifest中可以看到intent-filter的配置。思路:新建一...

2018-07-02 01:06:10 14408 6

原创 Flutter 闪屏页实现

Flutter 闪屏页实现导入图片在lib同级目录新建images目录,放入闪屏图片。 更新配置文件打开pubspec.yaml文件,添加如下asstes:assets:-images/splash_girl.png创建两个页面lib下新建HomePage和SplashPage,分别作为主页和闪屏页。编写mian.dartmain.d...

2018-06-13 12:51:49 6884

原创 Flutter填坑:Waiting for another flutter command to release the startup lock

打开AndroidStudio的时候顶部的模拟器一直是loading状态,即使已经打开了模拟器。 运行flutter doctor 提示 Waiting for another flutter command to release the startup lock查了一下github的flutter issue 找到了解决方法,如下: 1、打开flutter的安装目录/bin/...

2018-06-10 17:03:35 26480 2

原创 Flutter填坑:Plugin flutter is incompatible with this installation

Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。 想尝尝鲜,却被环境卡了一下。 安装flutter插件时报错: Plugin flutter is incompatible with this installation 解决很简单。升级Android Studio.以上。...

2018-06-08 01:50:37 2707

原创 产品经理们别再说微信如何如何完美了

做了这么多年移动开发,遇到过不少的产品经理,写需求的时候会参考微信之类的大牌产品,这当然无可厚非,借鉴嘛。但是有些情况也会让人反感。例如,别人的产品都是完美的,我们不需要做任何改动,与他们不同的地方我们都要改。在接微信登陆sdk的时候偶然发现了下面这种情况:文字显示不全。原来微信也不过如此,产品们别再吹了!...

2018-06-04 12:48:32 173

原创 推荐一款Mac的SVG浏览工具:Gapplin

SVG相较于GIF、JPEG、PNG等图片有许多优势,例如文件体积小、任意缩放清晰度高、可编辑性强等等。因此在前端和移动端的应用越来越多。UI设计师也倾向于输出一套SVG图片,而不是输出各种尺寸的PNG图片,然后再压缩一次。可惜的是现在无论是windows的文件浏览器还是mac的finder对svg的支持都不好。mac的情况如下图所示,svg图片都显示在左上角:上图的显示方式只能看单张...

2018-06-02 23:22:08 10908 2

原创 java.lang.UnsatisfiedLinkError

新建项目迁移老项目的代码,引入了一些包,但是一直报UnsatisfiedLinkError错误,原因,大致是so库的问题,但是找原因花了很多时间。记录一下问题。打开apk看了以后发现目录中只有armeabi-v7 和 x86,而没有armeabi。看gradle果然缺失armeabi: ndk { abiFilters “armeabi-v7” ...

2018-06-01 15:49:03 5768

原创 Git创建带/的远程分支

最近看到有些项目使用feature/xxx的格式命名新功能的开发分支。本地创建分支:git branch feature/xxx本地创建并切换分支:git checkout -b feature/xxx推送到远程分支:git push origin feature/xxx一条龙命令:gif push origin 本地分支名字:feature/xxx冒号前面不能加空格,否则会出...

2018-05-23 23:19:03 1736

原创 杀鸡用牛刀:Sketch流程图绘制体验

程序流程图是改进工作方法的有效工具。不论作业研究过程中采用何种技术,流程程序图总是必不可少的一步,是应用最普遍的一种工具。绘制流程图的工具很多,Word、ppt、Visio、ProcessOn、XMind等能绘制,但是体验并不好。最近试了一下UI神器Sketch,体验超级好。页面数据加载的流程图: 总结一下优点: 1、无限大的绘制界面 2、轻松导出png、html 3、可以隐藏...

2018-05-03 14:38:11 6648

原创 git push 403

最近想做一个学习Android的Demo但是不想放在之前的Github账号上,所以新建了一个账号。git push的时候遇到了403错误。解决方法如下:1、打开仓库根目录下.git/config文件 2、修改url = https://github.com/PortgasAce/Treasure.git 为 url = https://[email protected]/Por...

2018-05-02 00:54:15 1253

原创 自定义手势缩放的Recyclerview

自定义手势缩放的Recyclerview最近做了一个类似腾讯动漫的漫画的阅读器,用Recyclerview作为基础的控件展示漫画。因为漫画需要支持手势缩放,但是原生Recyclerview并不支持,而且开源的缩放Recyclerview也没有找到,只能自己造一个轮子。这篇文章记录了一些思路。效果预览图:https://github.com/PortgasAce/ZoomRecyclerVi...

2018-05-01 16:57:22 5938 11

原创 ReactNative踩坑:ReactContext!=Activity

项目中有一个书架的View提供给ReactNative使用,监听ReactNative相应的生命周期进行界面刷新,代码如下//ViewManagerpublic class BookShelfManager extends SimpleViewManager<BookShelfView> { private BookShelfView mBookShelfView; @...

2018-03-11 14:45:47 3944

原创 A problem occurred starting process 'command 'node''

ReactNative的热更新,微软提供了CodePush的解决方案,在Android集成时遇到了如下问题:Error:Execution failed for task ':app:recordFilesBeforeBundleCommandDebug'. > A problem occurred starting process 'command 'node''node命令...

2018-03-05 13:08:57 5861

原创 烂代码

和老同事聊天经常会听到一些关于烂代码的抱怨。一方面是因为我们对代码的要求比较高,无论是代码逻辑还是代码风格都需要review,另一个方面是确实是他们所在的项目组对代码质量没有把控,经年累月,代码虽然逻辑可能正常,但是可读性越来越差。加上需求一直在加,难免需要动到老的代码,风险就很大。 老同事的抱怨的根本都是烂代码,表述缺都不太一样。有的直接说哪段代码写的不好,有的说我们项目组的人水平一般,有...

2018-03-05 01:18:13 599

空空如也

空空如也

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

TA关注的人

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