已越狱的iOS上查看app是否已安装

想在MoeApps里显示该app是否已经安装。如果已安装则是直接显示“已安装”而不是程序的价格。
首先是看到了iHasApp这个库。实际测试发现这个只能看到app被他们收录而且是带有URL Scheme的才能够显示,也就是说并不能显示全部的app。不过这个倒是能通过审核上架。

但是咱的要求不是上架而是要显示完全部的app。
网上查了下,找到了这个
不过如果说知道BundleID(比如com.apple.mobilesafari)的话倒是能直接用,可惜MoeApps只知道纯数字的AppID,不过倒是可以通过先用AppID从iTuneslookupAPI获取到BundleID再进行判断是否已安装。

继续阅读“已越狱的iOS上查看app是否已安装”

VPS转移到日本了

其实很早就想把VPS转移到linode了,之前的PhotonVPS和联通线路不知道谁的问题几乎每个月都会断开一到两天这样。
然后之前刚弄好CDN,结果发现偶尔还是有服务器自己down了的情况,而且之前也是每发一篇post然后VPS必down一次…而且还进不去ssh….必须得到管理页面去手动强制重启…
前天这情况越来越严重了,甚至boot没多久自己就down了…于是实在迫不得已去查后台结果发现Apache2被Out of Memory然后就被kill掉了…原来是内存不足导致的啊!∑(゚Д゚)之前一直没问题是因为咱之前用的Mac服务器性能够高(4G内存完全够啊!),而之后转移到VPS上的时候原本以为性能应该完全够了的,而之前VPS上只有iWeb制作的一个简单的页面所以可以长时间无故障运行(线路问题除外),而WP转移过去之后Apache的消耗立马上升。于是查了下内存…发现Apache开始运行没多久之后内存马上就没剩多少了…
不过令咱不解的是:不是还有Swap么?怎么还是被OOM了呢?

但是不管怎么样,OOM发生了,于是得想办法解决,首先先把blog首页显示的文章的数量减少….至少恢复到之前的水平。
然后在看内存,还是挺紧张,于是网上搜索了一下。发现似乎改apache的设置可以减少访问时创建的进程限制内存的使用。嗯…但是效果还是不明显,感觉内存占用还是好大…

于是最后想去查咱VPS到底配置是怎么样的时候,在PhotonVPS的首页看到了现在似乎只有Linux和Windows的SSD VPS了,之前那些什么Xen都没了…看了下似乎价格还比咱现在用的还更便宜…
后来打算是换个新的便宜一些的,但是最后考虑了一下这VPS的网络线路质量….于是最后还是决定干脆直接换Linode的算了。而且又正好有日本的IP…
本来想一次性付费两年的,兑换了一下看到2k多的价格再结合目前的经济状况还是先买一个月的之后再买两年的好了..
不过咱之前装的光纤两个月的费用都可以买这个服务器两年的了所以可见还是VPS多实惠一些。(好吧当初咱办那个确实只是为了好玩…

不管如何…希望发posy时不要再死机就好了~
(最后如果实在是不行咱就考虑把Blog迁移回咱的Mac Server好了…反正blog也不是需要一直都在线的…

现在开始可以兑换萌电波了

简单说就是如果你购买过MAS版或者普通版的萌电波,现在可以直接兑换普通版或者MAS版。

MAS兑换普通版所需材料:
1.AppStore购买截图(在iTunes里的账户信息里能看到购买记录,找到萌电波并将整个iTunes截图,序列号、购买日期、登入账户等不能遮挡)。
2.如果有iTunes通知的邮件也一并截图附上。

普通版兑换MAS版所需材料:
1.之前接收激活信息的邮件地址。
2.之前接收激活信息的邮件的截图(或者整个邮件原文也可以)。
3.支付宝或Paypal支付记录截图。

注意:活动免费领取的(Twitter赠送或者破解活动获得的)不能参与兑换。

将兑换材料发送到:billgateshxk[at]gmail.com。认证通过之后将会发出AppStore的兑换码或者普通版的激活码。兑换之后两个版本都可以正常使用。
一个用户仅限兑换一次。

本活动长期有效,再次感谢各位的支持~m(_ _)m

修好了MBP的音频接口

之前咱的老MacBook Pro(13-inch,Mid2009)出现了耳机插孔不插任何设备的时候处于光纤输出状态,无法切换到内置扬声器,不过插耳机上去倒是能正常使用,而且开机的时候那声“咚!”也是正常用内置扬声器发出的。
于是可以确定就是插孔的问题,然后既然插耳机上去能够正常使用,说明应该是插孔的检测用的“开关”(金属片)不是处于一直闭合就是处于一直断开的状态。
然后昨天将整个“音频网络”升级到全光纤化之后回顾这个问题,发现光纤的插头是塑料的,这是光纤转换插头和普通音频插头的对比:
2014-01-11 03.31.08
既然插头是塑料的,那么Mac怎么判断插入的是耳机还是光纤呢?只能是通过检测“形状”,也就是通过插入之后闭合或者断开开关来检测插入的,从对比看来两个插头的区别仅仅只有头的突出的部分略微不同,而且就那么细的地方(相差仅有1mm左右)…能保证一定能检测到而且不弄错?还有这个只是我买的…其他生产商有可能生产出来的插头和3.5一样的呢?
所以可以肯定的是:一定是插头里面的金属簧片要么没弹性了,要么就是触电脏了导致接触不良..
但是咱插拔光纤头和普通耳机插头多次还有包括用细棍子捅之类的方法基本全部尝试过了。一点恢复的迹象都没有…

看起来只能拆了…

嘛其实为了这个问题拆机器不下3次…不过这次真打算解决掉这个问题(毕竟维修装备和之前相比好很多了)。
拆的过程就不说了,简单一句就是把看到的螺丝钉全部拧掉,不过要注意排线什么的不能弄坏不然就麻烦了。特别是主板背面有根线拉得非常紧的…应该说Apple“计算好了”线正好够长…所以拆下主板的时候如果不注意一弄断就happy了..

于是重点是耳机插孔,注意这个修复是无法恢复成原样的!除非用焊枪把整个插孔吹出来,本来咱也是想这么做的,但是怕把其他地方也给弄坏了得不偿失所以最后没这么做。
敲开外面的金属壳(外侧的,原理插孔的那个),可以看到有两个金属触点:
2014-01-11 04.24.06
经过测试,发现有东西插入的时候这两个是断开的,而没有东西插入的时候这两个应该是闭合的。
于是再测试,发现对应主板背面的是这两个点:
名称未設定
于是检测发现,居然是处于常开状态,也就是无论插入不插入东西这两个点都处于断开,而如果用东西压上面看到的两个触点,这两个点则就短路了。
OK,发现了问题,解决方法也很简单:插入插头之后用螺丝刀等工具用力弯曲触点…让它更容易碰上,然后再用针之类的清理下触点的接触的地方。于是再测量,插入东西的到时候断开,不插入的时候短路。嗯好了~

实际测试发现已经恢复成原来一样了,内置扬声器也可以正常使用了,撒花☆*:.。. o(≧▽≦)o .。.:*☆

嘛…其实还出现了两个情况。

一个是昨天改造升级“音频网络”时候,打算是其他设备输出光纤,然后经过Mac mini的Line in(前些天查了下Mac mini居然支持光纤输入,所以才打算将“音频网络”整个升级改造的)再转换成普通扬声器输出(当然不是Mac mini内置的不然根本没效果嘛..)。其实重点还是给AppleTV在普通显示器上使用(不想和家里抢电视机)。
扯远了,嘛…升级过程中,将音频光纤链接Mac mini和MBP的之后,播放视频/音乐发现没有声音!在系统偏好设置面板里发现了插入的设备是光纤,但是音量是可调整的(一般光纤无论输入还是输出都是不可调整音量的),而且下面的音频音量显示则是一直为无声音的样子。
嗯…好奇怪,于是先将SoundFlower卸载了(不知道为啥运行这货居然会导致不停的有噪音),发现还是不行,难道是编码解码问题?但是Mac对Mac传输的应该是不加密的才对啊。于是换了根光纤线、光纤头…再换电脑,发现还是不行。于是插到另外一台Mac mini上,发现居然显示有音频输入有音量了!!
难道是这台Mac mini的光纤输入坏了?但是根本没怎么用到这个插孔啊….嗯?没怎么用到这个插孔?…你妹的…
光纤传输最重要的是什么?光啊!如果有灰尘挡住光线传输…自然不就收不到信号了嘛!!我个馬鹿。。。
于是找了根棉签清理了下插孔内部,确实带出来些灰黑色的东西。再插进去,正常了~撒花☆*:.。. o(≧▽≦)o .。.:*☆

另外一个则是修好MBP的音频插孔之后,将整个电脑装好,插电(看到电池点亮测试灯亮了),再启动….嗯…没反应(´・_・`)?
于是拆出来,检查各接线…似乎是好的啊…
拆电池,再boot…还是没反应..风扇也不转..
该不会芯片被击穿吧((((;゚Д゚)))))))…这个是咱最不想看到的(普及一下,冬天大家穿的毛衣所能产生的静电…电压能轻易达到上万伏特)。咱可不希望Mac就这么报销了,虽然是台老机器但是就这么少一台确实好可惜(不过也幸好咱提前就把所有数据全部转移到Mac mini上了)。
于是拔掉所有内存,再boot…风扇转了,屏幕亮了!警报也响了=3=..
再单独测试…又是内存接触不良。嘛这个对咱来说再熟悉不过了,橡皮擦下金手指就好了~
不过Mac和PC相比,Mac内存错误时一点反应都没有,而不插内存的时候屏幕居然能点亮。而PC是内存错误的时候不断自动重启(就是boot大概5秒左右又自动断电,5秒左右又自动开启,然后又自动断电…如此反复),不插内存屏幕点不亮但是同样会报警…

嘛幸好没损失一台电脑也不错了~
不过比较担心的就是电池…现在控制好了没以前那么胀气了,但是感觉还是好危险…要不要哪天抽空戳爆去呢?(´・_・`)
(再普及一下,Intel的电脑无论Mac还是PC,拔掉电池之后CPU都会降频…)

给Blog和VPS使用了CDN

现在访问速度应该快很多了…
主要是之前萌电波普通版初始化的时候速度都非常慢(连接到验证服务器部分),还有Blog也是即便从CNAME换成了A结果访问速度还是好慢。于是最后实在受不了了就干脆上了CDN,最开始的时候打算是用百度的那个加速,不过一看条款需要备案还有各种限制(比如偏R18的都不行)所以干脆直接用CloudFlare算了。虽然国外的CDN可能国内访问速度偏慢不过至少总体速度肯定比单独连要快~

另外萌电波也针对CDN专门发布了个小更新,不过不用IP直连的话安全性确实下降了许多,但是目前还是稳定性优先,之后再考虑要不要上SSL或者换别的方法进行验证。

不过用上CDN之后Dynamic DNS又是一个头痛的问题,因为家里服务器的IP老换…于是咱之前还单独写了个开源的RegIP程序专门用于DDNS注册(动态IP和域名的绑定)。不过CloudFlare倒是提供有API,但是可恶的是这货需要“两步验证”,首先需要基本的信息比如API key还有Email之类的获得一个账户内所有域名的列表,然后再从这个列表中抽取单独的ID号再加上前面的key之类的东西才能正常修改IP…
然后再加上本来RegIP之前写的时候是用同步的方式加载的,现在还要切换到异步…
于是既然都重写了于是干脆整个程序全部重新思考过。最后的方案就是使用列表,然后将各域名账户添加到这个列表中(像咱就同时使用Oray和CloudFlare的),再设置个时间轮询刷新列表来注册IP。然后还考虑比如数据储存问题,新的因为允许单服务商多账户登录所以还像之前那样用keychain就不太可能了,而NSUserDefault虽然明文保存但是同样的也不适合保存这类数据。所以最后只能决定使用DataBase…
总之这货要写完工作量非常大,所以决定写完之后一定要送到MacAppStore上收钱才行(●°u°●)​ 」

不过本身这个程序就是为了满足自己需要才写的,说实话如果写出来的东西自己都不去用那还何必拿出去卖呢?

嘛说起来MoeApps之前也是这个样吧?
作为开发者…自己都很少用…还想程序非常火?呵呵…
站在用户角度来看也是,人的精力都是有限的,时间也都是有限的….特别是上班族们本来一天的空余时间就不多,然后很大部分都被游戏或者各种其他业余爱好给霸占去了,那么自己做出来的产品想要火,吸引人眼球只能做到火一时而已,而真正要做的东西不应该是用户用上了就不愿意放下的么?如何让用户觉得将自己的空余时间花在自己写的东西上面,而且还要觉得非常值得花这个时间…这才是真正好产品所要做到的吧?
当然现在咱写的MoeApps之类的程序绝对不会是这些“好程序”。不过作为一种工具,咱觉得有人能常上去看看也很不错了,能对一些人有所帮助已经能达到咱的目的了。
嘛…也不会止步不前就是了,之后还有更多的功能会加进去,虽然肯定达不到上面说的那种“好程序”,但是绝对不会让人觉得这是垃圾应用就是了。

好吧暂时先这样。重点同样是为了测试发布文章时VPS会不会死机…
不过依然感觉会的样子..果然还是得趁早换服务商么…