iOS 7を脱獄して弄り倒したまとめ Cydia・substrateの現状、SBの謎の隠れ設定などなど

  • このエントリーをはてなブックマークに追加
  • feedly
    follow us in feedly

iOS 7は、現状iPhone 4だけ脱獄が出来るということをご存知の方が多いかと思います。ただ脱獄したところでOpenSSH、Cydiaすら入っていないので自分でビルドしたりターミナルからひたすらコマンドを打たないといけません。Cydiaはインストールしても起動しない、またTweak達を動かす中枢を担っているMobileSubstrateも動きません。
そういったことから、ある程度の知識と根気と時間がなければ出来ないのが現状だと思われます・・

追記 2013/12/23: 完全脱獄ツールリリース


こちらを使ってください:
iOS 7の完全脱獄ツールがリリース!!iOS 7の脱獄で入れときたいリポジトリ、Tweak! | きんちゃんぶろぐ






脱獄のやり方

追記 2013/12/4: opensn0w_gui
GUIでワンクリックで出来るツールが出たのでこちらもあわせてどうぞ!
【超簡単】opensn0w_guiを使ってワンクリックでiPhone 4 iOS 7を脱獄する | きんちゃんぶろぐ


脱獄にはOpensn0wを用います。

誰でもできる・・iOS 7(iPhone 4)を脱獄してCydiaまでインストールするチートシート作りました! | きんちゃんぶろぐ


Cydiaについて

冒頭でも述べたとおりCydiaは最新版の1.1.8では起動しません。起動しようとすると速攻落ちます。
Twitterで検索するとCydiaを起動しているスクリーンショットを上げている人は少なくとも2人居た(@cjori さんと@devbug0 さん)ので僕も挑戦してみました。

CydiaはOSSで、Saurik氏のgitに置いてあります。

gitweb.saurik.com Git


追記:
JBなiOS 7でCydiaを起動するにあたって、NavigationBarの下にviewが隠れる問題、UDIDが正確に取得できない問題などを修正してみた | きんちゃんぶろぐ


起動しないCydiaを起動するヒント

Cydiaが起動しない最大の理由はiOS 7からJavaScriptCore.frameworkがPublicになったのが原因です。PrivateからPublicへのシンボリックリンクが一応存在します(たぶん)が参照出来ずに落ちてしまいます。iOS 7 SDKでビルドすれば良いでしょう。それ以前のバージョンでもXcodeの中身を弄って構成を変えたりしたら出来ます(最適解では無い気もする)。

ここまで出来たらコンパイルしたパッケージをiPhoneに入れてやります。起動→ぷちんッ。また落ちます。クラッシュログをみてやると修正箇所が丸わかりな感じなので修正してやって再度試してみるとと無事起動するでしょう。

このようにNavigationBarで上の方が隠れちゃいますが、気にしない。使える程度に動く。
2013 10 04 13 11 13

Sandboxの罠

Cydiaが起動したのはいいがその代償に『天気』『Safari』『電卓』『メール』が起動しなくなります。原因はstashです。Cydiaを初めて起動した際に/var/stashにApplicationやらライブラリなどのリンクが生成されてしまいます。Cydiaをコンパイルする際にstash関連を消しておくのが最善策でしょう。僕は起動した後だったので手動でstashを元の位置に戻してやりました。すると問題のアプリ達は無事起動。


stash周りで参考になる記事:
Is it possible to prevent cydia from moving apps into /private/var/stash? (iOS 5) – JailbreakQA



死にかけてるMobileSubstrate君

※ 2013/10/11 opensn0wのアップデートによりMobileSubstrateは正常化されました。

substrateは何とか4000ってのが最新です。インストールしてみるとあたかも動いているかの様に振る舞います。でもSpringBoard系のTweakを入れた瞬間、リンゴります。リンゴる原因は根本的にsubstrateが腐ってるからです。

Cydiaと同じ様に自分で修正すれば良いのですが、僕はコンパイルから気分の悪くなる様なエラーの連続でやめました。asm(objcでのアセンブリのコード達)のエラーを何とか回避しましたが続々とエラーが出てきます。うまく出来る方にご教授いただきたいです。

そんなこんなで悩んで居た時、韓国の高校生(@iolate さん)が回避出来たらしいと@devbug0 さんから聞きました・・天才。
方法はTweak自信をコンパイルする際にsubstrateのリンクを外す事です。Theosをそのまま利用して使うとlibsubstrateがリンクされてしまいます。substrate自身を修正してコンパイルをしない方法であるため完璧な解決になっては居ませんが、最善策に間違いはないでしょう。
あ、因みにlibsubstrateを切り離すのでMSHook系関数MSHookIvarなどは使えません。その辺はRuntimeの関数に変えてね。
substrate.hをimportしておけば出来るんだった・・

@iolate さんのtheos

theos.zip


現状動作確認したTweak

・正常動作(動くように修正かけました)
ModiPanel、Reeder2Enhancer、TweetbotPatcher、FakeClockUp、CloakStatus
・やや不安定
preferenceloader
・動作しない
SwipeShiftCaret、ts AccountChanger

CloakStatusの直したやつはこちら、一応iOS 6以前も継続してサポートしてるつもり
wakinchan/CloakStatus


iFileは認証で失敗するので検索とか使えなくて辛い・・
2013 10 04 13 29 10

SpringBoardに隠されたシークレットセッティング

iOS 7は不思議な隠し設定が存在して居ます。しかも凝ってる、デバック様なのかな。先ほどの韓国の高校生がアクセスに成功しブログに纏めてらっしゃいます。僕も一応、表示する段階まで試しました。

2013 10 03 16 12 44
언제나 제자리걸음.. :: iOS7 SpringBoard 내부 설정 (성공)


まとめ

こんな感じで手間はかかりますが、iPhone 4でもFakeClockUpを入れると使える程度にはなった気がします(未だにメイン機で使ってるのは秘密・・)

やってみようと思う方は頑張ってください。夜更かしして体調を壊さないことを願ってます。

では、きんちゃんでしたっ!





6 Thoughts on “iOS 7を脱獄して弄り倒したまとめ Cydia・substrateの現状、SBの謎の隠れ設定などなど

  1. I am actually grateful to the holder of this website who has shared this great paragraph at at this place.


    Look at my web site … IOS 7.0.4 Jailbreak

  2. Anonymous on 2013年12月26日 at 9:02 AM said:

    韓国の高校生がまとめた記事が韓国語で書かれているため読めません。訳した記事を書いていただけないでしょうか?

  3. 隠し設定で表示の濃さを薄くしたり色を変えたりすることができましたよ^ ^

  4. たかてぃ on 2013年12月30日 at 9:29 PM said:

    safariなど起動しなくなったのを起動させる方法を詳しくお願いしますm(_ _)m

  5. cydia インストーラーと脱獄の親玉を消してしまいましたどうしたらいいですか?

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Post Navigation