Android源代码中经常出现同步问题,最常见的就是本地无意修改了某些文件,那么,如何取消掉这些更改呢?
执行如下命令:
1 |
$repo forall -vc "git reset --hard" |
如果执行完成后,依旧提示某个目录有改动,则切换到有问题的目录,继续执行
1 |
$git reset --hard |
完成后,删除所有没有增加到Git中的文件即可。
Android源代码中经常出现同步问题,最常见的就是本地无意修改了某些文件,那么,如何取消掉这些更改呢?
执行如下命令:
1 |
$repo forall -vc "git reset --hard" |
如果执行完成后,依旧提示某个目录有改动,则切换到有问题的目录,继续执行
1 |
$git reset --hard |
完成后,删除所有没有增加到Git中的文件即可。
Ubuntu 15.10 中,已经可以使用Ubuntu Make简化Android开发环境配置了,具体方法如下:
1.安装Ubuntu Make
1 |
$ sudo apt-get install ubuntu-make |
2.配置Android开发环境
1 |
$ umake android |
然后根据提示,一步一步操作就可以了。
一会之后,就会发现Android Studio已经安装成功了。
就是这么简单!
要从U盘运行Ubuntu,需要插入一个至少2G空余空间的U盘。使用USB安装器是将Ubuntu安装到U盘最简单的方式,它由 pendrivelinux.com 提供。下载Pen Drive Linux’s USB安装器后,安装并运行。也可本站下载。
从下拉选项中选择Ubuntu桌面版本,或者自行用BT、迅雷等软件下载Ubuntu ISO文件。
点击“浏览”然后打开已下载的ISO文件。
选择一个USB驱动器并点击“创建”,注意,U盘里的数据请备份,“创建”过程会格式化U盘。
Ubuntu系统本身附带一个小程序Startup Disk Creator,直接制作可启动U盘Ubuntu系统。本站下载
1 2 3 4 5 6 |
java.util.concurrent.TimeoutException: com.android.internal.os.BinderInternal$GcWatcher.finalize() timed out after 10 seconds at com.android.org.conscrypt.NativeCrypto.EVP_MD_CTX_destroy(Native Method) at com.android.org.conscrypt.OpenSSLDigestContext.finalize(OpenSSLDigestContext.java:27) at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:191) at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:174) at java.lang.Thread.run(Thread.java:818) |
1 2 3 4 |
java.util.concurrent.TimeoutException: com.android.internal.os.BinderInternal$GcWatcher.finalize() timed out after 10 seconds at java.lang.Daemons$Daemon.isRunning(Daemons.java:79) at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:171) at java.lang.Thread.run(Thread.java:818) |
1 2 3 |
The reason for this timeout can come from two options: 1. A problem in the finalize code - trying to perform complex logic in the native destroy part. 2. CPU/Screen timeouts - the screen will dim and power off, followed by a System deep sleep state. the deep sleep can happen in a Garbage collection run, and when the device wakes up - a timeout can happen. |
后台备案号的设置是从 WP 3.7 开始的,查看网站根目录的 wp-config.php
文件,一般会看到 define('WP_ZH_CN_ICP_NUM', true);
这个定义,这个就是用来添加后台备案号设置的。如果你的 WP 版本在 3.7 以上,而且 wp-config.php
含有define('WP_ZH_CN_ICP_NUM', true);
就可以在后台 设置
- 常规
中看到配置选项。
这个“ICP备案号”仅对WordPress自带主题有效。
如果使用的是第三方WordPress
主题,因此不能享受到 WordPress
这个新添加的小功能实在是让人窝火。不过好在你只需要在自己所用的主题的footer.php
中添加一行代码,即可让在WordPress
后台添加的ICP
备案号显示出来了。
1 2 3 |
<a href="http://www.beian.miit.gov.cn/" rel="external nofollow" target="_blank"> <?php echo get_option( 'zh_cn_l10n_icp_num' );?> </a> |
如果你不希望链接到工信部网站,只添加下面的代码即可。
1 |
<?php echo get_option( 'zh_cn_l10n_icp_num' );?> |
最近在开发站群软件,用到了根据访问域名判断子站点的相关问题。PHP获取当前域名有两个变量 HTTP_HOST 和 SERVER_NAME,我想知道两者的区别以及哪个更加可靠。
首先我想说,百度上那些转来转去的文章都是扯淡!
有说相同的,有说不同的,都没说明原因,没经过验证就互相转来转去的,浪费观众时间。
下面说说本人经过亲自验证 + 查阅官方文档 + 官方BUG列表 + 官方邮件列表 + sitepoint + webmasterworld + google的总结:
相同点:
当满足以下三个条件时,两者会输出相同信息。
1. 服务器为80端口
2. apache的conf中ServerName设置正确
3. HTTP/1.1协议规范
不同点:
1. 通常情况:
_SERVER["HTTP_HOST"] 在HTTP/1.1协议规范下,会根据客户端的HTTP请求输出信息。
_SERVER["SERVER_NAME"] 默认情况下直接输出apache的配置文件httpd.conf中的ServerName值。
2. 当服务器为非80端口时:
_SERVER["HTTP_HOST"] 会输出端口号,例如:mobibrw.com:8080
_SERVER["SERVER_NAME"] 会直接输出ServerName值
因此在这种情况下,可以理解为:HTTP_HOST = SERVER_NAME : SERVER_PORT
3. 当配置文件httpd.conf中的ServerName与HTTP/1.0请求的域名不一致时:
httpd.conf配置如下:
1 2 3 4 |
<virtualhost *> ServerName mobibrw.com ServerAlias www.mobibrw.com </virtualhost> |
客户端访问域名www.mobibrw.com
_SERVER["HTTP_HOST"] 输出 www.mobibrw.com
_SERVER["SERVER_NAME"] 输出 mobibrw.com
所以,在实际程序中,应尽量使用_SERVER["HTTP_HOST"] ,比较保险和可靠。
Ubuntu 环境,当apache2重启提示:
1 2 3 |
* Starting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, ... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName |
解决的问题是:
1 |
$sudo vim /etc/apache2/sites-available/default |
打开default文件后,在default文件顶端(第一行)加入:
1 |
ServerName www.mobibrw.com |
重启Apache2
就不会提示上述错误了。
参考链接
Ubuntu Apache2重启提示could not reliably determine the server’e fully…问题解决
1 2 3 4 5 6 7 8 9 10 |
<? //获取当前的域名: echo $_SERVER['SERVER_NAME']; //获取来源网址,即点击来到本页的上页网址 echo $_SERVER["HTTP_REFERER"]; $_SERVER['REQUEST_URI'];//获取当前域名的后缀 $_SERVER['HTTP_HOST'];//获取当前域名 dirname(__FILE__);//获取当前文件的物理路径 dirname(__FILE__)."/../";//获取当前文件的上一级物理路径 ?> |
Apache2开启了Https支持,但是在Https打开网页的时候,发现,图片都不能正常的显示出来,看了一下源代码,发现是网页中的图片链接都被写成了HTTP的,导致浏览器出于安全的原因,不再加载图片,导致效果很差,因此需要WordPress同时支持HTTP,HTTPS。
找到当前主题下的 function.php
文件,编辑之,在里边代码的末尾追加如下代码:
1 2 3 4 5 6 7 8 9 10 11 12 |
/* 替换图片链接为 https */ function https_image_replacer($content){ if( is_ssl() ){ /*已经验证使用 $_SERVER['SERVER_NAME']也可以获取到数据,但是貌似$_SERVER['HTTP_HOST']更好一点*/ $host_name = $_SERVER['HTTP_HOST']; $http_host_name='http://'.$host_name.'/wp-content/uploads'; $https_host_name='https://'.$host_name.'/wp-content/uploads'; $content = str_replace($http_host_name, $https_host_name, $content); } return $content; } add_filter('the_content', 'https_image_replacer'); |
参考链接:WordPress 开启全站 HTTPS
WordPress 4.4中使用 Twenty Fifteen主题的情况下,常用的"Link Manager"插件已经不能正常使用来的,因此只能是手动添加"友情链接"。
使用如下方法,“外观”-“小工具”直接把“链接”模块添加至菜单栏即可: