i9000内置SD损坏解决方法

Android系统手机太能折腾人了,不同型号会有不同的问题,不同的解决方式。而且现在水货手机使用量很大,行货过保的也很多,手机维修行业也是很缺人的,我觉得做IT的转行修手机也是不错的选择。

最近,我的2岁半的i9000(欧版)又出问题了,现象是开机显示开机画面后马上就重启,一直循环,有时候会有报错信息,“无法挂载sdcard”的意思。可以进入挖煤模式,也就是说只能靠odin来刷机了。如果拿去维修店修,说不定给我换个主板啥的,几百块就去了,都够换一个新的了,经过1整天的网上找资料,发现这个问题很多人遇到过,我在尝试了各种方法之后,总算搞定了,只需要买一张micro sd 8G卡,替换手机内部的sd卡就可以,价格也就30块左右。

i9000 SD

整体思路:

1、先用odin线刷的方式刷入一个系统,安装后只要能开机,能进入recovery模式就可以。推荐lidroid-sgs-2.0.6-i9000。大致步骤,先装驱动,然后音量下+home+电源,进入挖煤,打开odin载入pda等文件,点击开始。装完会重启,可能会有红色报错信息,不用理会,选择reboot system,然后可以开机进入系统。这个时候手机存储空间为0,无法安装任何程序,但系统应用可以使用,可以打电话发短信。

2、下一个想要安装的rom,比如miui,cm,lidroid,都行,zip格式,因为我们将使用recovery模式安装。我使用的是MIUI 2.3.7c i9000的zip包,所以我的配置文件也是对这个版本的rom包有效,如果你们要安装其他rom包,请仔细修改vold.fstab文件。

3、修改rom包里sd挂载配置,把内置和外置的互换。rom的zip包里面system/etc/vold.fstab文件,请看仔细了再修改。
这是修改后的:

# internal sdcard dev_mount emmc /mnt/sdcard/external_sd auto /devices/platform/s3c-sdhci.0/mmc_host/mmc0 # external sdcard dev_mount sdcard /mnt/sdcard 1 /devices/platform/s3c-sdhci.2/mmc_host/mmc2

其实就是把:emmc /mnt/sdcard/external_sd auto 和 sdcard /mnt/sdcard 1 互换了,如果使用其他rom包,配置文件内容可能会有些不同,请根据实际情况修改。把修改后的vold.fstab文件放到zip包system/etc目录下替换原来的。

4、进入recovery模式,安装rom包。把修改过的zip包放到外置sd卡里面,然后给手机插入sd卡,重启进入recovery模式,双wipe,选择zip包安装。安装完成后就能看到手机已经能识别到SD卡了,数据线连接电脑也可以打开USB存储,可以通过豌豆荚来安装应用了,使用起来就和原来没什么区别。

附使用到的文件:
http://pan.baidu.com/share/link?shareid=3645120808&uk=3087070448

本文 i9000内置SD损坏解决方法爱撸小杰-关注互联网的个人IT博客 首次发表

CDN折腾小结,最终选择incapsula

CDN这个东西是我一直想去尝试,但有怕麻烦又觉得没有多大的必要,所以一直没有做这方面的优化,最近看了不少国内国外CDN的评测,也就好奇去折腾了一把。

国内的有七牛云,又拍云,nano云,其中七牛和nano有免费的套餐,又拍以前也有过免费的,现在我试了下已经不免费了,最便宜的套餐价格180,流量100G,可用一年,所以就暂不考虑又拍。七牛和nano都是成立没多久的服务商,因为在国内,必须备案的域名才可以绑定到他们的二级域名上,如果不绑定直接使用他们的二级域名,那么你的静态资源链接都会变成他们二级域名的形式,不方便管理,也不美观。能想到的解决方法就是把网站的静态资源用统一放到一个二级域名下,比如img.aojgame.com,然后把这个二级域名cname到CDN的二级域名下,但要保证目录结构一致,

国外免费的CDN,比较有名的是Cloudflare,流量无限,不少国人在用这个,可惜的是免费账户必须要把NS指向他们,不提供CNAME方式。还有一个网上很多人说起的,incapsula,月流量50G,优点在于他们有日本节点,可以大大加快国内访问速度。当然,国外的CDN基本上不会在国内放节点,所以速度是肯定不如国内CDN的,我们还是根据自己的需求来选择把。

最后我还是选择了incapsula,主要原因是很方便,DNS解析好ip后很快就能生效,不需要手动上传管理资源。注册完incapsula后,添加你的域名,这就完成设置了,至于他让你绑定到什么ip,cname到他的域名,这些都不用管,通过just-ping全球ping,可以测出从国内访问incapsula官网最快的节点,比如日本节点103.28.248.200,注意看下面的杭州测试点,249的ip,ping值在300+,所以我们不选249:

incapsula

基本上103.28.248.1-254 都是可以用的,用超级ping工具找几个合适的ip,然后把域名绑定到这个ip上,看看效果。

通过对比发现,使用incapsula后,联通和移动的ping值明显降低,平均100左右,而电信线路ping值变化不大,基本也在200左右,所以我通过DNSPOD智能解析域名,把联通和移动线路解析到incapsula上去,电信线路以及国外线路还是解析到我的VPS上,毕竟免费CDN的稳定性肯定不如我的VPS的。

incapsula

上个超级ping测试情况:

incapsula

但ping值低并不代表网页打开速度就快了,在线网页测试工具有很多,比如webkaka,可以自己尝试对比下优化效果,我们优化的最终效果是要让页面能快速的显示出来,。

本文 CDN折腾小结,最终选择incapsula爱撸小杰-关注互联网的个人IT博客 首次发表

libgdx实现微信打飞机基本功能,附源码

Android版微信推出的时候,很多人打开其apk包,发现微信打飞机使用libgdx实现的,小杰就抱着学习的心态用libgdx把微信打飞机简单功能实现了一下,供大家参考和交流。
libgdx

整个开发过程大概花了两周时间,因为平时白天上班,偶尔加加班,所以开发效率并不高,而且过程中难免会遇到各种奇怪的问题。这里推荐大家在做libgdx开发前先去“奋斗小土豆”的博客看看教程,算是比较全面的教程了。

我把开发中用到的一些技巧简单介绍下:

资源加载,首先提取apk包里的图片素材,然后可以用TextureAtlas类读取,AssetManager能实现异步加载资源。声音方面我没有做,不过素材已经提取并提交到github上了。感兴趣的可以自己尝试实现下。

基本功能,包括玩家飞机的移动,背景移动,敌方飞机产生,消灭敌机得分,双倍子弹,炸弹,暂停。

程序只在pc上调试过,没有在Android模拟机和真机上测试过,因为没有Android真机。生成Android版本很简单,就不用多说了。如有疑问,欢迎在此交流。

DEMO视频:

github源码:https://github.com/lj30936/AojGame,注释写的还是比较多的,可读性应该不差。

本文 libgdx实现微信打飞机基本功能,附源码爱撸小杰-关注互联网的个人IT博客 首次发表

页面优化之CDN公共库的使用

现在的网站页面肯定都离不开js,但过多的js加载肯定会影响到服务器的性能,另外,动辄几百k的js文件从我们远在国外的VPS上下载下来也是很慢的,所以很有必要使用CDN公共库。

CDN公共库

CDN公共库是指将常用的JS库存放在CDN节点,以方便广大开发者直接调用。与将JS库存放在服务器单机上相比,CDN公共库更加稳定、高速。 比较常用的如Google,百度,新浪都提供了稳定、可靠、高速的服务,包含全球所有最流行的开源JavaScript库。鉴于现在Google在国内的访问受到影响,我们优先选择百度的CDN公共库。

百度云存储现在很有名吧,他的CDN公共库就是其中的一个产品,具体可见其官网链接

我们就以jquery为例,相信很多wordpress主题使用了自带的jquery,或者使用Google的jquery库,如何换到百度的?只要去主题的header文件里找找,是否有定义了jquery库的链接,像我的loper主题很快就能找到定义位置header.php:

 <?php if($options['jqueryurl']) : ?> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js "></script> <?php else : ?> <script src="<?php bloginfo('template_url');?>/scripts/jquery-1.4.4.min.js"></script> <?php endif; ?> 

根据后台的设置来选择使用主题自带的或者公共库,把Google的url改成百度的即可。

如果我们还用到了其他js库,比如json,都可以用这个方法改到百度的库,至少可以保证在国内使用会高速,稳定。

另外,在这次修改的过程中,我还发现了wordpress自身也会引用jquery库,通过查看页面源码可以发现引用了wp-include目录下的一个jquery,这是wordpress后台要用到的文件,可以通过修改wp-include/script-loader.php文件,找到jquery.js,改成:

 if(is_admin()){ $scripts-&gt;add( 'jquery', '/wp-includes/js/jquery/jquery.js', array(), '1.8.3' );}

这样就不影响后台功能了,同时前台页面也不会加载这个js文件了。

本文 页面优化之CDN公共库的使用爱撸小杰-关注互联网的个人IT博客 首次发表

VPS已经搬家到小蜗居了

由于博主养不起Linode,只能找个便宜的VPS以作长久之计,找来找去找到了hostigation,有些人可能听说过或者用过这个VPS,现在我的站已经建在了hostigation 上,128m KVM套餐,可以说从豪宅搬到了小蜗居。

VPS 搬家可以看看这些文章,其实搬家并不难,难的是小内存的装系统,优化,我也不知道为什么当初头一热就买了个包年的小内存,这让我这几天非常折腾,不过我也从中学到了一些优化的知识。

1、Dropbox同步全站目录的问题。

用Dropbox同步目录的时候,我原先的脚本把全站目录copy到备份目录,并没有把原先目录先删掉,这就存在一个问题,我只增加,没有删除。所以这个目录会越来越大,和实际线上版本并不一致,也就失去了备份的意义了。

2、系统要尽可能的精简。

由于硬盘空间也很有限,只有10G,内存也非常有限,所以建议一开始选择精简版的系统,也就是最小化安装,linux安装都会有这个选项,装好之后内存占用很少,20m左右。

3、必要的时候使用图床和CDN。

随着网站图片越来越多,占用空间是非常大的,这也会影响备份和以后搬家的效率,所以必要的时候可以使用图床和CDN,减轻VPS的压力,不过折腾这两样东西也是比较麻烦的。

4、优化各种内存相关参数。

主要优化的是mysql和php,可以参照linode官方提供的1G优化方案自行酌情调整,另外php方面重要的设置有php-fpm的进程数,这些你们在优化的时候就会碰到,网上介绍很多,一搜就能搜到,优化的时候多看看内存使用情况,相信你们也会喜欢上折腾的。

搬好了家先放几天看看运行情况,如果稳定的话就要把linode关闭了,顺便说下,linode 20刀一个月,豪华配置,包年可以打9折,我现在用的hostigation,KVM 128m,屌丝套餐,30刀一年。

本文 VPS已经搬家到小蜗居了爱撸小杰-关注互联网的个人IT博客 首次发表

wifi密码分享,让蹭网无处不在

这是小米推出的一个新功能,当用户使用小米手机连上一个带有密码的wifi时,用户可以选择把这个wifi密码分享给其他用户,其他用户在这个wifi范围内时就会自动连上wifi。

wifi 分享

这个功能实现起来很容易,当用户分享一个wifi密码的时候,小米系统就会把这个wifi热点的相关信息上传到服务器上,比如wifi名称,密码,大致位置等等。其他用户的小米手机收到wifi信号覆盖的时候,就自动把信息传到服务器,服务器如果找到了匹配的wifi,就把密码下传给用户,然后系统自动连上。当分享的密码数据足够多的时候,基本上可以实现随处可以连上加了密码的wifi。

不过这个功能也会带来一些问题,最重要的就是用户数据安全问题。以前加密的wifi需要输入一次密码后才能自动连接,至少我们能确保这个wifi是比较安全的才会去连接。现在带着手机来到一个地方,自动连接了wifi,也许这是黑客布置的,用户在不知情的情况下就连接上了,那后果是十分严重的。

wifi的安全性也是问题,我们经常会把路由器密码告诉家人,同学,朋友,但如果他们用的是小米手机,不小心把密码分享出去了,这就导致我们都不知情的情况下有好多手机连到这个路由上来了。当然我们可以修改密码,可是密码也包含着我们很隐私的信息,可能你的路由密码就是你的QQ密码,邮箱密码,等等,密码被小米服务器保存着,并且被所有小米的用户都知道了,你觉得这安全码?

所以大部分用户的心态是,有白用的wifi用当然好,不是自己的wifi密码分享出去也无所谓,这个功能还是会被用户广泛的使用的。

本文 wifi密码分享,让蹭网无处不在爱撸小杰-关注互联网的个人IT博客 首次发表