2012年11月30日星期五

如何把已经过期的不兼容firefox插件重新活起来

前阵子,把firefox升级后发现一个一向很好用的插件 Tab mix plus 因为不兼容不能继续使用,后来还是解决了。

前几天看到一位推友的推,该推的链接是链接到mozilla针对 Tab mix plus 不能使用之解决方案的网页上,这才知道原来还有不少人实在很在乎这个插件,以下,我来谈谈我是怎么解决这个问题的,也希望以后遇到类似情况的读者能够及时(或临时)解决问题。

解决这类问题有两三个方法:
一)等待作者更新插件,不过不知道要等到猴年马月;

二)使用 checkCompatibility 插件;
     在firefox上安装这个插件后,就会阻止firefox禁用已经过期的不兼容插件。
三) 如果不愿意等和安装 checkCompatibility,可以考虑这个方法,这就是修改不兼容插件的.xpi文件,方法如下:

1)把插件文件准备好,如果没有,用另外一个浏览器进入firefox的插件网页下载,然后准备一个压缩+解压软件,这里以 winRAR 为例;

2)用压缩软件打开.xpi文件;

3)然后把一个叫 install.rdf 的文件拖出来;

4)用文字编辑器(如 NotePad)打开该文件,然后作以下修改:

NS1:minVersion和NS1:maxVersion是firefox的版本范围,也就是说,这个插件只限于在firefox的这个版本范围内可用,在这里是4.0-16.0a1。NS1:version是这个插件的版本。

5)最后把修改好文件重新拖回.xpi文件里

 6)进入firefox的插件管理页面,把修改好的.xpi文件拖进去就成事了(注:最好先卸载不兼容版本)。

警告:以上两种方法对某些插件可能无效或由于极其不兼容产生不可预测的后果,用户自行承担风险。

2012年11月17日星期六

如何制作和妙用适合自己的上网代理 PAC 文件(以GoAgent为例)

.pac(Proxy Auto-Config)文件是一个使用代理时的规则文件,它是由JavaScript编写而成,主要是告诉系统什么条件下使用代理链接互联网,什么时候不用,从而免去了使用者频繁的切换,让电脑使用者更方便地使用代理服务。

.pac文件是由Netscape在1996年设计,文件里主要是一个功能函数 FindProxyForURL(url,host),文法(syntax)是:

function FindProxyForURL(url, host)
 {
    return RetStr;
 }

url和host是参数,功能函数根据这两个参数进行分析,然后根据结果将使用代理与否的决定传回,RetStr就是决定,通常当决定不用代理时,RetStr会是"DIRECT"(即直接联网的意思)。以下一段程式片段加进了两个情况的分析句子:


 function FindProxyForURL(url, host)
 {
    //如果是谷歌,使用代理
    if (shExpMatch(url, "*://*.google.com/*") || shExpMatch(url, "*://google.com/*"))
    {
      return "PROXY 127.0.0.1:8087"
    }

   //如果是百度,不用使用代理
   if (shExpMatch(url, "*://*.baidu.com/*") || shExpMatch(url, "*://baidu.com/*"))
    {
      return "DIRECT";
    }

   return "PROXY 127.0.0.1:8087; DIRECT";
 }


'PROXY 127.0.0.1:8087' 这句的意思是使用本机(localhost)的8087端口进行代理链接(即使用代理)。这句是针对GoAgent的(因为我正在使用这个代理),其他代理,可能有其它的要求。

return "PROXY 127.0.0.1:8087; DIRECT"是当上面两个条件都不符合时的返回值,意思是"使用代理;如果代理无效则直接连接"。

以上片段的两个 if .. 分析主要是针对网址,其他的如:isPlainHostName() dnsDomainIs() localHostOrDomainIs() isResolvable() isInNet() dnsResolve() myIpAddress() dnsDomainLevels() shExpMatch() weekdayRange() dateRange() timeRange() 都可以按自己的需要加以使用,详情请参阅有关网站。

在两句的if分析句子中(第一句为例),if (shExpMatch(url, "*://*.google.com/*") || shExpMatch(url, "*://google.com/*")),其意思是:如url与"*://*.google.com/*"吻合或(||,也即or)url与"*://google.com/*"吻合则使用代理。语句中的"*"是 wild card,代表任何表述的意思,也即"*://*.google.com/*"="任何表述(包括http/https)://任何表述(www/第一/第二 ...域名).google.com/任何表述(在谷歌下的任何网页/文件)"

以上片段的目的是想让读者基本上明白代理和.pac文件是怎么一齐工作,在这里我们不打算讨论太多的编程,我们会集中在怎么把这个文件用到最好。

一旦有了.pac文件,我们可以为浏览器做上几两的减肥(也即把autoproxy/Proxy Switchy卸掉)。下载的GoAgent已经附有一个.pac文件(目前叫proxy.pac),如果需要,完全可以不用它,自己量身定做一个。

.pac文件的内容是可以添加或删减,如果你发现一个网站突然被墙了,可以按照上面的方法添加上去,如发现某个网站已经解封了,也可以把它去掉,避免.pac文件变得臃肿。

我个人是主张全局代理的,至少从安全角度看,是应该这样想的。

一般设置全局代理都会这样设置(因为不需要规则,因此也就省去.pac文件的使用)


但是这种设置有个问题,就是当需要切换到VPN时就必须进来一次,把钩去掉,我是最怕麻烦的人。解决办法就是把钩去掉,使用一个自造的.pac文件,从此,就不用进进出出了。

这个.pac文件很简单,就是用上面曾提及的一句指令: return "PROXY 127.0.0.1:8087; DIRECT",再以GoAgent为例(你可以保留它原本的.pac文件然后自创一个),以下是步骤:

1) 进入GoAgent的local目录打开proxy.ini,进行修改:


2)新建一个.pac文件,就叫它做global.pac吧,输入以下几行然后保存:

               function FindProxyForURL(url, host)
               {  
                 return "PROXY 127.0.0.1:8087; DIRECT";
                }

3)记住你.pac文件的完整路径;例如在e:program files\goagent\里,便写成:file://e:/program files/goagent/global.pac

4)进入系统的internet设置,把完整路径填入即可:

知道了.pac文件的原理,无论你懂不懂编程,按照以上的方法,都能使它活起来。

祝大家畅游互联网!


p.s.:最后要感谢一下 @Ryans233, 他使我对.pac 文件由更深入的认识

2012年11月3日星期六

安卓软件:如何利用前置镜头让那些“吾生性”的人无所遁形?

很多时候我们都会把手机暂时放在一边然后离开一下去做一些别的事情,在你不在的时候手机上发生什么事情你是完全不知道的,可能有新的短信来了,可能你微博上的发言得到了回应,也可能有“动机”不明的人曾翻阅过你的手机。

一般,手机加了屏锁就不必担心这些不明“动机” 的人了,但如果你想知道这人是谁就得利用以下的软件。

这个软件能监测屏锁密码的输入情况(要求管理员权限),一旦密码输入不对,就会利用前置摄像头把试图“入侵者”摄下来,也会发出警报声





此软件叫HiddenEye,分免费版和付费版(HiddenEye plus),免费版的功能少一点(一般已经够用了),有广告。付费版也多不了多少实用性的功能,只是能够发邮件和与DropBox同步。

最后,如果不喜欢这个软件,在卸载前记得先废除它的管理员权限。

下载:谷歌play市场


:作者在xda论坛发表时说,这个软件未必适合所有的安卓设备。

2012年10月21日星期日

开通2-step verification并解决它带来的奇难杂症

谷歌对2-step verification的官方翻译是"两步验证"(以下统称),它是谷歌登录安全工程的一部份,用户在登录谷歌时,除了输入正确的邮箱和密码外,还要额外输入手机上的认证码才能顺利登入,大大提高了帐号的安全性。

虽然两步验证使我们更加安全但是用起来却在某种程度上带来了一些不便,以下,我会介绍一下如何开通两步验证,同时也为它所带来的不便提供一点解决方法。

如何开通两步验证?
开通两步验证总共需要4个步骤,在开通过程中需要手机的认证,因此,你要有一部能正常使用的手机放在身边。


进入谷歌帐号后,点击头像隔壁,再进入"帐号设置"->"安全"

进入"修改"页面后,如果你看到的是类似以下页面,说明你已经开通了,不需要再看下去,如果有兴趣的话可直接跳到奇难杂症,看看怎么解决一些由两步验证所带来的一些不便。



如果你进入的是类似以下页面或介绍页面(谷歌可能经常对页面进行修改),那就把手机放在面前,准备好收短信。


第一步:输入手机号码

输入号码前记得选定国家,否则短信无法送达。

第二步:谷歌会发送一个认证码给你,请耐心等待谷歌发来的短信,然后认证手机号码

第三步:认证你的电脑 - 信任这部电脑
完成这步后,以后从这部电脑登陆谷歌就不必需要经过手机认证这一步。

第四步:最后确认
这步完后,两步验证就正式开通。

接下来的一些繁琐设置可暂时放下不管,迟点我们会提及


 现在重新点击"帐号设置"->"安全",你会看到:
 恭喜,你成功了。


奇难杂症
在使用过程中我遇过这种情况;在一次登录中等谷歌的短信等了很久,重发了几十遍,结果还是没发过来,这样很碍事,因此,谷歌除提供了短信和voice call外还提供了手机认证码产生器叫 Google Authenticator(目前只提供个Android,iPhone和BlackBerry三款手机),


它是谷歌的产品,安全易用(无需联网,在飞行模式也能正常使用)。它必须要在开通两步验证后才能使用。以下介绍下初始/激活的方法。

1)进入"帐号设置"->"安全",把两步验证关闭:
 2)然后重新进入"帐号设置"->"安全"进行设置:
 3)进入选择验证码提取方式页面后选定自己的手机,然后点击 "Next"
 4)以安卓为例:进入手机的 Google Authenticator 软件,点击选择键->Setup account,然后点击scan a barcode


对准扫描(假设已安装二维码扫描软件),扫描完毕后,手机就会出现一个验证码,在电脑上输入,然后点击"下一步":

点击"下一步":
点击箭咀所示:
成功!以后你就可以从手机上的认证码生成器中直接拿去认证码而不需要等待那个可能永远不会来的短信了。


另外一个问题是,在国外的一些论坛看到有人反映一旦开通了两步验证后,邮件服务端就无法接收和发送邮件了。这是邮件客户端不能处理两步验证所产生的验证码所至,事实上,不止邮件客户端是如此,所有需要通过谷歌登陆而又不能处理两步验证认证码的软件都会如此,解决这个问题不难,只是繁琐而已。

进入"帐号设置"->"安全"
 进去后就会看见:
 这是一个为不能处理两步验证认证码应用制作临时密码的地方,只要在软件里把原本的谷歌帐号密码更换成在这里所生成的密码就行了。生成密码的步骤是:
1)填写好应用程序的名字(随意) ;
2)点击"生成密码"
3)16位字元密码会弹出来,这个密码只会出现一次,忘记了就要重新生成一次,因此,务必先安置好。密码是没有空格的,在输入时把空格全部去掉方为正确。


总结

两步验证从某个层面上看的确增加了对谷歌用户帐号的保护,但却又带出来了不少琐碎的麻烦事,更糟的是,我觉得,临时密码的出现似乎又在酝酿着另一个安全问题。

2012年10月20日星期六

如何从谷歌市场直接拿取安卓手机软件.apk包及必要的注意事项

众所周知,谷歌市场里的安卓手机软件只能够通过手机下载,用户是无法从电脑上直接获取 .apk 包,基于安全的理由,谷歌没有也不会开发一个利用USB与手机和电脑连接的软件方便软件的下载和安装。有见于此,第三方市场亦就应运而生,从未被谷歌认可的市场里下载回来的问题软件时有听闻,然而,直接从谷歌市场下载的问题软件也不是没有,但总的来说,从谷歌里下载总比未被认可的相对安全,起码,谷歌目标够大,追究起来容易得多。

虽然有了第三方市场,基于各种理由,部份用户仍然希望采用把 .apk 包从play先下载到电脑然后再进行安装,其中一个原因就是流量不够,本人就是其中一位,我不用 wifi, 每月只有不到1G的流量,若下载一个几百M的游戏,完后已所剩无几。在推友的推文中得知一个叫 apk downloader 的工具,网上搜了下发现一些教程,虽然教程完善,但比较单一,只注重达到目的,没有对可能产生的后果加以探讨,以下我将会谈谈怎么使用这个强劲的工具和一些安全防范措施。

什么是 Apk Downloader?
Apk Downloader是一个Chrome的扩展(只限于Chrome),安装后就可以从谷歌市场把 .apk 包直接下载到电脑。

怎么安装 Apk Downloader? 
Apk downloader 并不是谷歌认可的扩展,但可到这里(Chrome v.17)下载,Chrome版本在>=18的可到这里下载。

下载后,按照下图进入Chrome的扩展管理页面
然后把下载回来的扩展拖进去就安装成功了。


怎么设置 Apk Downloader?
点击扩展下面的 "Option" 就会打开设置页面

这个所谓的"Option"其实并不是option,每一项都必须要正确填写。请细阅上图。
如果实在没办法找到 gsf id key, 可到play市场下载一个工具帮助寻找。

填写好后点击 "Login" 就会弹出

选择好国家和运营商,基本上 Apk Doownloader 就已经设置好了。但尚未能使用,你必须要退出浏览器,然后建立一个Chrome的快捷方式(如果已经有了,建议建立一个新的,旧的保留),然后把它的属性掉出来,在“目标”处加上一句话  --ignore-certificate-errors(有些教程还有另外一句:--allow-running-insecure-content)

有些没有引号就变成 chrome.exe --ignore-certificate-errors

好了,现在基本上可以用了。

Apk Downloader 安全吗?
我们回想一下Apk Downloader的设置部分,我们把邮箱和密码赤裸裸的给了一个未经认证的扩展知道,危不危险?虽然不能说日后这个帐号一定会被盗,但此终存在着风险。 

有见于此,我们必须要对这个填上去的密码加以保护;谷歌提供了一个很好选择:2-step verification,它是一个谷歌登录认证方案,任何人在未认证的机器上登录你的谷歌,你都会在手机收到认证码,只要输入正确的认证码,方可登录。

有关2-step verification的建立,请参阅这里(教程里的部分内容和这里的重复)。

一旦2-step verification建立成后,在你的帐号里点击 setting->security,就会进入以下页面
点击"Edit"进入另一页面,拉倒底部就会看到这个:
这个有什么用呢?原来,目前几乎所有需要通过谷歌登录的软件都不能处理由2-step verification产生的认证码,因此,谷歌提供了临时密码给这些应用,这里就是为这些应用制作临时密码的地方。留意一下最下面用红圈圈住的就是我的outlook和apk downloader的临时密码,只要把 "Name"填上,然后点击 "Generate password",就会出现16位字元的密码,把它复制,粘贴(去空格)最后点击"done"就完成了。

好,现在按照这种方法,返回Apk Downloader的"option" 设置页面,点击"logout",重新输入一次,除了密码用临时密码外其他不用变。

现在你安全了。

如何使用 Apk Downloader?
一切就绪后,我们打开play,随便选个应用并点击进入,你就会看到apk downloader的图标出现在地址栏上:

点击图标并开始下载:


好吧,Enjoy!!

2012年9月13日星期四

Android下的DOS模拟器

各个系统的智能手机都有这样那样的模拟器,我特别留意DOS, 因为当年我在DOS系统上留着不少有价值的东西,有了模拟器,我就可以把它们搬上手机,尤其那些使我一直不能忘怀的游戏。

在安卓系统上也有DOS模拟器,一些要付费,一些是实验性质的开源作品,游戏只能载入而不能玩。前几天发现了一个几乎能运行所有DOS软件的模拟器 aDosBox,虽然仍在beta阶段,尚有不成熟之处,不过,有总比没有好。

首先我想先介绍一下这个模拟器,然后我会上传当年玩过n遍的台湾制作游戏 - 《倚天屠龙记》作为测试。


这个模拟器是以横屏设计(没有选择),喜欢直屏控制的朋友可能要等作者进一步改良了。


在屏幕上所看到的几个数字是快捷键,你可以根据不同游戏设置不同的快捷键,这些数字和系统键盘的数字无关,只是快捷键的代号而已,这几个快捷键的预设只有4个(1-4),如果觉的不够用可以在设置里加,最多也只能再加2个(5,6)。在快捷键隔壁的那几个方向键(如下图)很明显就是专门为游戏而设的,可见设计者的心思不是一般。如果你点击在屏幕左上角的“AB”,系统键盘就会弹出让你输入指令。

进入模拟后你就可以输入几乎任何的DOS指令(我说几乎,是因为我没有把所有指令都完全测试过),点击手机上菜单键,就会出现这个画面:

我们会集中火力在 “SDL Settings”,其他的我看了下,没什么特别,至少,没什么大影响和用处,也没去折腾。

当点击"SDL Settings"后,就会弹出以下画面:

里面有三项,我们来看看2,3项目,点击 "Additional controls to use",会弹出:

在一般的使用下,我们只会选"On-screen keyboard",如果你希望在某些游戏中以动力加速控制,可以选 "Accelerometer"。我就用这个玩了下《倚天屠龙记》,感觉有点困难,可能还没习惯的关系。

设完后,点击手机上返回键返回上一页,然后点击"On-screen keyboard",你就会被带入这里:

"Remap on-screen controls"是让你设置快捷键,这对不同的游戏起着不同的作用,你也可以在这里添加快捷键(如上文所提)。
"On-screen keyboard theme"是屏上键盘(也就是那几个快捷键和方向键)的主题设置,你可以按照个人喜好设置。
"On-screen keyboard size"是设置屏上键盘的尺码。
"On-screen keyboard transparency"是设置屏上键盘的透明度。
这几个设置除了第一个比较实用外,其余的都是一些美观上的设置。

作者在xda论坛上发放了QB让用户进行测试,也提供了一个绑定的指令来免去一大堆转换目录的cd指令。

现在,在下提供一个游戏让大家测试一下,这个游戏,如上文所提是台湾的作品,叫《倚天屠龙记》,


当年,我花了一点的时间去进行破解,产生了两个.exe文件,第一个是 etin1.exe, 这个可以直接进入游戏而避开了输入密码这关,第二个是 etin2.exe,这个提供了输入密码的画面,不过避开了核对密码这关,玩家只要随便输入2次/3次(具体多少次忘记了)就能进入游戏。

里面还有两个 .txt 文件和两个 .bat 文件,两个 .txt 文件分别简介了 etin1.exe 和 etin2.exe 是如何破解的。两个 .bat 文件中一个是 readme.bat, 一个是 play.bat,在玩之前先运行 readme.bat,然后运行 play.bat,这两个文件都可以在DOS PROMPT下直接输入运行。play.bat 是一个让用户选择玩那个版本的批次文件,输入:

 play 0 - 原版
 play 1 - etin1.exe
 play 2 - etin2.exe
 play i - 游戏的版头

游戏在操作上很简单,使用方向键和快捷键(有必要可以设置) 就能控制移动,其他如对话,动作等轻点屏幕空的地方就会弹出来。


游戏可以到这里下载,然后解压到sdcard任何目录下,不需安装,直接可玩。


附:我的twitter帐号是@HKsfl, 欢迎交流。