Wordfence Premium

编辑wp-contentplugins/wordfence/lib/wordfenceClass.php, 添加下面的这段配置

wfConfig::set('isPaid', 1);
            wfConfig::set('keyType', wfAPI::KEY_TYPE_PAID_CURRENT);
            !!wfConfig::set('isPaid', 1);
            !!wfConfig::set('keyType', wfAPI::KEY_TYPE_PAID_CURRENT);

改好之后为

	// Sync the WAF data with the database.
		$updateCountries = false;
		if (!WFWAF_SUBDIRECTORY_INSTALL && $waf = wfWAF::getInstance()) {
			$homeurl = wfUtils::wpHomeURL();
			$siteurl = wfUtils::wpSiteURL();
            // Add by Jianqing, 2019/04/02
            

Android P(9.0/API Level 28) 升级不完全教程

自从去年Google强制升级target API到26之后,Google就开始计划着下一波的升级,而这次是要升级到9, 也就是target API level 28,而且日期也已经定了 “November 1, 2019″。

以前每次API升级都是小打小闹,并不会有那种大规模的改动,而这次改动就有点大了。当然这次强制target API升级对国内开发者的影响会小一些,因为毕竟不用发布到Google Play,而国内应用市场这么多,各个要求也都参差不齐,所以短期还是安全的。

这次改动其实动的最大的就是非官方API的调用,也包含”Java Reflection”,基本上可以说国内要用到的那些动态APP升级方案都基本被伤了,网上搜了一下,也找到一些厅淫技巧,可以绕过去官方的这个限制,正所谓道高一尺,魔高一丈,但总的来说这样做是不推荐的,因为不知道系统又做个升级,就把这些方案给干掉。官文给了黑名单列表和灰名单列表,黑名单是一定要修复的,灰名单只是一个过渡阶段,后面看Google的心情什么时候在系统层面强制执行,那就必须都修复。2019年的Google IO大会在即,就看这次Google有什么表示。

具体我们需要做什么/take away

把官方相关的文档都看过了,下面这些是我认为比较重要的地方

  • Migration to androidx/JetPack
  • Network TLS enabled by default, so need double check https is enable by default.
  • Non SDK APIs call scanning,

2018年终总结

2009总结|2010年终总结|2011年终总结|2012年终总结|2013年终总结|2014年终总结|2015年终总结|2016年终总结|2017年终总结|2018年终总结

今年刚好是第十个年终总结。

最近几天都在搬家,再加上天气渐凉,白天都在帮着带娃,第一次感觉没有太多时间来写年终总结。

打开电脑已经是晚上11:10了,多少都写点吧,有空再补。

2018年很忙,主要在忙几件事…

2018年的第一场雪

雪每年都会下,每次下雪更多的感觉–是一年一次的仪式感, 下过雪之后大概就是一年的结束了。

雪花飘起,一年又一年,带走了时间,也带来了往昔。记忆也将随着雪花的一片一片而随风起舞,抬起头,看看天空,漫无边迹,尘封的各种知道的或者不知道的时间片段,都在眼前闪过。…

你被裁了吗?

你被裁了吗?

时间从2008年已经走到了2018年,工作中最宝贵的十年已然成为了过去。回首十年,你是否能坦然面对过去。

经历过不同的公司,不同的管理方式,不同的文化,已经能够比较淡定的面对工作中遇到的过种问题。当然看似一切都平淡的表面下,也是暗潮汹涌,一个不留神就可能被拍在沙滩上。…