スポンサーリンク

【iPhone_JB】SDK3.2・iPad登場で増えた、3.1.3必須アプリを3.1.2環境で動作させるには

iPhone_JB

iPadにも対応した、ユニバーサルバイナリが増えてきたようだ。
これらのユニバーサル対応Appでは、iPad 3.2 SDKの仕様からか、iPhone上での動作に、OS 3.1.3を要求してくる。
また、最近リリースされたAppでは、iPad対応にかかわり無く、3.1.3を必須としているものもある。

OS3.1.3へのアップグレードは、メリットがないとして、iPhone Dev-Teamは非推奨としてきた。また当ブログでもあまりお勧めしていない。

が、ここ数日『3.1.3 脱獄』とかのキーワードで検索して来る方が急増しているようだ。こういった3.1.3必須Appにアップグレードしてしまって、救済策をさがしてるのだろうか?

ファームウェアバージョンを3.1.2→3.1.3に偽装するCydia Appの存在は知っていた。が、早々に3.1.3JB環境にしてしまったので、自分では使ったことがなかった。

Twitter仲間の Pippin 氏に、色々教えていただき、自分でも実験してみたのでまとめておく。
実験環境は、iPhone 3G (blackra1nでjailbreak)、OS 3.1.2。

 

▼本日のお題w登場初日から、App Storeのトップセールスを3位まで独占した、モンスターApp ラブプラスi

ラブプラスiは、iPad対応ではないが、3.1.2環境からダウンロードしようとすると、あえなくバージョンチェックではじかれる。

▼iPad対応ユニバーサル・バイナリのEverNoteも、最新版をダウンしようとすれば、同様。 

3.1.3のバージョンチェック対策には、Fake 3.1.3と、Firmware 3.1.3というCydia Appが存在する。
かなり人柱的に、この2つのツールを検証した、Pippin 氏によれば、Firmware 3.1.3(という名のApp)の方はお勧めしないとのこと
詳細は後述するとして、ここではFake 3.1.3を使ってみる。

 

▼まず、Cydiaのトップページの、More Package Sourcesのメニューから、SOSiPhoneというレポジトリを追加。

 

▼レポジトリを追加後、3.1.3で検索すると、Fake 3.1.3が出てくるので、普通にインストール。

 

▼終了すれば、3.1.2JB環境で問題なくラブプラスiがダウンロード、動作した。

 

海外サイトの情報によれば、3.1.3と3.1.2の差分は、JB絡みの脆弱性塞ぎが殆どで、ライブラリなどの変更はないようだ。このため、単にバージョン番号を3.1.3として偽装するだけのFake 3.1.3を使用するだけで、殆どの3.1.3必須Appが動作するだろうとのこと。

 

▼Fake 3.1.3をインストールすると、System/Library/CoreServices/ の下の、SystemVersion.plistを3.1.3のものに書き換え、オリジナルをSystemVersion.plist.disabled として保存する。

前出のFirmware 3.1.3というCydia Appも、やってることは一緒だが、インストール時にオリジナルのSystemVersion.plistを消してしまうらしい。
Fake 3.1.3は、アンインストール時にはオリジナルの3.1.2 plistに書き戻してくれるので、何かあったときには元の環境に戻すことができる。

▼これが、Fake 3.1.3が生成した、3.1.3対応の新SystemVersion.plist (iPhone 3G/3.1.3)

▼こっちは、SystemVersion.plist.disabled として、バックアップされたオリジナル (iPhone 3G/3.1.2)

Appに関しては、リブートなしですぐインストールできるようだ。リブートを掛けると、改変したSystemVersion.plistを元に、システム自体に変更を加えるようだ。リブート時に、Appleロゴの下に進行マークが出る。
リブート前は、iTunes上からはOS 3.1.2と認識されているが、リブート後には、3.1.3と、iTunesからも偽装され、3.1.3へのアップデートの警告なども出なくなる。

 

取り急ぎ、3.1.2環境で寧々さんたちのお迎えを急いでいる方のためにまとめw
もちろん無保証ですので、自己責任でお迎えくださいw

"+t+""}var i,c=r(21),u=r(51),f=r(43),a=r(32),s=r(53),p=r(18),r=r(28),l="prototype",g="script",v=r("IE_PROTO"),y=function(){try{i=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t;y=i?function(t){t.write(o("")),t.close();var n=t.parentWindow.Object;return t=null,n}(i):((t=p("iframe")).style.display="none",s.appendChild(t),t.src=String("javascript:"),(t=t.contentWindow.document).open(),t.write(o("document.F=Object")),t.close(),t.F);for(var n=f.length;n--;)delete y[l][f[n]];return y()};a[v]=!0,t.exports=Object.create||function(t,n){var r;return null!==t?(e[l]=c(t),r=new e,e[l]=null,r[v]=t):r=y(),n===S?r:u(r,n)}},function(t,n,r){var e=r(5),c=r(20),u=r(21),f=r(52);t.exports=e?Object.defineProperties:function(t,n){u(t);for(var r,e=f(n),o=e.length,i=0;it.length?-1:""===n?r:t.indexOf(n,r)}var e=r(2),y=r(12),h=r(72),d=r(73),b=r(74),o=r(56),x=r(30),m=o("replace"),O=RegExp.prototype,w=Math.max;e({target:"String",proto:!0},{replaceAll:function(t,n){var r,e,o,i,c,u,f,a,s=y(this),p=0,l=0,g="";if(null!=t){if((r=h(t))&&!~String(y("flags"in O?t.flags:d.call(t))).indexOf("g"))throw TypeError("`.replaceAll` does not allow non-global regexes");if((e=t[m])!==S)return e.call(t,s,n);if(x&&r)return String(s).replace(t,n)}for(o=String(s),i=String(t),(c="function"==typeof n)||(n=String(n)),u=i.length,f=w(1,u),p=v(o,i,0);-1!==p;)a=c?String(n(i,p,o)):b(i,o,p,[],S,n),g+=o.slice(l,p)+a,l=p+u,p=v(o,i,p+f);return l]*>)/g,v=/\$([$&'`]|\d{1,2})/g;t.exports=function(i,c,u,f,a,t){var s=u+i.length,p=f.length,n=v;return a!==S&&(a=e(a),n=g),o.call(t,n,function(t,n){var r;switch(n.charAt(0)){case"$":return"$";case"&":return i;case"`":return c.slice(0,u);case"'":return c.slice(s);case"<":r=a[n.slice(1,-1)];break;default:var e=+n;if(0==e)return t;if(p
タイトルとURLをコピーしました