[JailBreak] iPad Wi-Fi Model の Location Service Fix 方法
2010 5月 12

iPad Wi-Fi Model を Spirit / JailBreakMe で JailBreak すると
Location Service (位置情報サービス) が 不具合を起こします。
その修復方法を説明します。
該当機種 : iPad Wi-Fi Model (Wi-Fi + 3G は問題なし)
該当 OS : 3.2 / 3.2.1 (3.2.2 は JailBreak 出来ないので無関係)
自動で修復する方法 (add ’10/08/17)
1、cydia.pushfix.info/ の レポを登録。( / まで入れて下さい)
[Cydia] Cydia Repo の登録方法
2、Spirit Location Services Fix を インストール
3、本体再起動
これで起動の度に自動修復してくれるようです。
手動で修復する方法
1、iPad に SSH 環境を整える (OpenSSH or iSSH 等)
2、iPad を 自宅にて Wi-Fi 接続し、iPad の IP アドレスを確認。
設定 > Wi-Fi (無線LAN) から確認可能と思われます。
(実機届き次第詳細説明追加予定)
3、SSH アクセスする為 の ターミナル を起動。
Mac なら 標準アプリの ターミナル.app (ユーティリティフォルダ内)
Windows なら Tera Term 等 。
4、次のコマンドで SSH 接続する
root@xxx.xxx.xxx.xxx
リターンキー (実行)
(xxx部は iPhone の WiFi IP アドレス)
5、 下記コマンドを実行
launchctl unload /System/Library/LaunchDaemons/com.apple.locationd.plist
リターンキー (実行)
launchctl load /System/Library/LaunchDaemons/com.apple.locationd.plist
リターンキー (実行)
修復完了。
上記修復は、iPad 再起動の度に必要 になります。
ーーーーーーーーーーーーーーーーーーーーーー
2010年05月12日 (17:15) 投稿
2010年08月17日 (13:20) 自動スクリプト方法 追記
コメント (23)

[...] This post was mentioned on Twitter by Lark FullFlavoer. Lark FullFlavoer said: Apple Voice – [JailBreak] iPad 3.2 Spirit JailBreak Location Fix 方法 http://bit.ly/cMfGup [...]
素人ですみません。。。
上記コマンドはiPad上で実行は不可でしょうか?
アイコンをポチっとするだけどおkなんてなったら便利ですけど
To なめかわ さん
>上記コマンドはiPad上で実行は不可でしょうか?
現在対応ツールが出てないので、手動のみです。
後日ツールが出るのでは?と個人予測。
Spirit が対応するか、別のツールになるか。
今の所は何とも言えません。
くだらい質問ですみませんでした・・・
ツールがどのように作成されるのかよくわかってはいませんが、
コマント2発キックするだけですので容易ではないかと・・・
Cydiaで日本の方がUpしてくれることを願ってます。
ちなみに。。
Twiiterフォローしてます。
いつも有意義な情報提供ありがとうございます。
Mac OS X 的に言うと、シェルスクリプトをcore.sh としてパッケージ作っちゃえばいいので、iPadもそんなに違わないだろとググってみたら、
[iPod touch]スクリプトをiPod touch (iPhone)用アプリケーションにする方法
http://moyashi.air-nifty.com/hitori/2007/10/ipod_touchipod__9597.html
というのがありました。
やや古い記事ですが、
ほぼまんま Mac (とうよりもっとシンプル) のやり方でよさそう。
iPadが届いたらやってみます。
[...] http://apple-voice.com/wordpress/2010/05/ipad-3-2-spirit-jailbreak-how-to-fix-location-service/ [...]
[...] iPad wifi jailbreak でおかしくなった位置情報を修復する Posted on 2010年6月28日 by Applenerd http://apple-voice.com/wordpress/2010/05/ipad-3-2-spirit-jailbreak-how-to-fix-location-service/ [...]
設定の位置情報サービスのオン・オフで動いてる様に見えるけど。
To Visco さん
最近 Spirit が iTunes 9.2 でも JB できるようにバージョン表記は
上がってない、こっそりアップデートがされたので、それで修復された可能性ありますね。
筆者は WiFi + 3G なので確認できず、また情報探してみます。
2010/08/14に購入したiPad WiFi 16GBをJailbreakMeにてJBした結果、現在位置取得に障害が発生しました。
また、上記の方法にて障害は解消されるのも確認済みです。
Open SSHにて外部のPC側から実行しました。
でも再起動のたびに行わなければならないのは困りものです。
どこかにこれを記述して起動のたびに自動的に実行させる方法はないものでしょうか?
追伸です。iOSは、3.2.1です。
To MOMO さん
iPad Wi-Fi モデルで JB したら、再起動の度に 位置情報修正の
コマンドを実行しないと直りませんよね。
launchctl を ロードしなおしてるだけなので shell script 等を書いて
起動プロセス完了後に実行させれば可能と思います。
しかし unload > load までに待ち時間もあるでしょうから、自動よりも手動が確実かと。
調べておきます。(それらしきものがあれば、新規記事で報告します)
Apple Voiceさん、いつもお世話になっています。
そうなんですよね。再起動の度に実行するのは面倒です。
その筋の話では「JBするだけでは起きずSSHを入れると起きる」というようなことが書いてあったのですが、どうなのでしょう?
私は、JBしてすぐにOpen SSHを入れましたがこれが災いしているのでしょうか。
これからもよろしくお願いします。
P.S:ECID認証の打ち切りは今回は長いですね。
私はそれを恐れてiPad急いで買ったのに。。
To MOMO さん
>その筋の話では「JBするだけでは起きずSSHを入れると起きる」という
>ようなことが書いてあったのですが、どうなのでしょう?
いいえ、違います。
この問題は iPad Wi-Fi モデルを Spirit で JailBreak すれば起こる問題です。
よって OpenSSH を入れた事が問題ではなく、Fix するのに OpenSSH 必須というだけです。
iPad でも作動する MobileTerminal v426 (deb ファイルを手動インストール) が存在する現在、
iPad 単体でも面倒ですが、コマンド実行は可能といえば可能です。
私は Wi-Fi + 3G モデルなので実験できませんが、JailBreakMe だとどうなのでしょう…。
作者は同じですがアプローチが少し違うように思うので、やってみる価値はあると思います。
>ECID認証の打ち切りは今回は長いですね。
>私はそれを恐れてiPad急いで買ったのに。。
急いで買ったのが正解と思いますよ。
将来のJailBreak 条件が、3.2.1 以下での JailBreak を条件としてくる可能性もありますから。
何より購入してすぐ JailBreak できている事が一番だと思います。
iPhone 3GS New BootROM の 3.1.3 JailBreak は半年かかりましたからね…。
AppleVoiceさん、さっそくの返信ありがとうございます。
>Fix するのに OpenSSH 必須というだけです。
そうですか、わかりました。
でも今回、私はJailBreakMeにてJBしました。Spintではないです。
でも、現象が出ましたし、上記記事のコマンドで回復もします。
スクリプトを書いて、適当にsleep 5とか間に入れればよいですかね?
どのタイミングで実行すればよいのかわからないのでとりあえず、「スクリプトを書いておいて、再起動後にTerminalから実行する」
というのが一番良い対処法ですかね?
>急いで買ったのが正解と思いますよ。
そうですね。JBできるって結構幸せですね。
iPad用のiOS 4.1が出てきたら上げたくなるかもしれませんけど。
それまでまだまだ楽しめますね。
To MOMO さん
>今回、私はJailBreakMeにてJBしました。Spintではないです。
それでも iPad WiFi モデルは 初回起動時に位置情報作動に問題出るのですね。
Spirit のソースコードは見てませんが、Safari の Exploit 利用という事なので、
JailBreakMe の PDF Expolit と根本は同じなのかもしれませんね。
その結果かどうか分かりませんが、起こる問題なのかも。
若しくは ツールの過程における副産物なのかもw
>どのタイミングで実行すればよいのかわからないので
>適当にsleep 5とか間に入れればよいですかね?
すでに Script が配布されてるようです。
後ほど記事にも反映させますが、
Cydia > Manage > Sources から 下記レポ登録。
cydia.pushfix.info/
(このレポは信用できます)
“iPad Location Services Fix” をインストール。
これは bash script ファイルで、起動の度に実行されるようです。
script 内容は
launchctl unload /System/Library/LaunchDaemons/com.apple.locationd.plist
sleep 5
launchctl load /System/Library/LaunchDaemons/com.apple.locationd.plist
との事で、問題ないですね。
正しく作動しない時は、インストールされたファイルのアクセス権を 755 に。
インストール後は終了・起動(not Reboot) した方がいいですね。
試して結果報告いただければ幸いです。
よろしく!
To MOMO さん
協力の要請です。
cydia.pushfix.info/ からインストールした “iPad Location Services Fix”
インストール先は
/etc/profile.d (private/etc/profile.d) なのですが、
何というファイル名 (.sh) か教えてくれませんか?
分からない場合、そこに存在するファイル名全てお教えいただければ幸いです。
宜しく御願いします。
MOMOです。
実際にやってみました。
“iPad Location Services Fix”ではなく、
“Sprit Location Service Fix”ですね?
実験は成功しました。
再起動後もちゃんと現在位置を捕捉できます。
>/etc/profile.d (private/etc/profile.d) なのですが、
>何というファイル名 (.sh) か教えてくれませんか?
ご要望のファイルは存在しないようです。
/etc/profile.d配下には、
coreutils.sh
terminal.sh
しかありません。
もしかして、私のインストールしたものは別物ですかね?
私がインストールした、
Spirit Location Service FixのFileSystem Contentを
見てみると、
System
Library
LaunchDaemons
com.pushfix.locatopnfix.plist
usr
libexec
locationfix
startup
となっています。
このstartupの中までは見ていないのですが、
/etc/profile.dは、変更されない気がしますが。。。
やっぱり別物なのかな?
何度もすみません、
私がインストールした正確なSource名は、
“Spirit Location Services Fix”です。
Version 1.1です。
あらためて、情報の提供ありがとうございます。
#お礼言っていませんでしたね。
何度も再起動して実験してみました。
普通に電源OFF–>ONもしてみました。
現在位置は、問題なく動作しています。
どうもありがとうございました。
To MOMO さん
ご協力ありがとうございます。
>“Sprit Location Service Fix”ですね?
でした。。。
急いで記事にすると、どこかがw
>/etc/profile.dは、変更されない気がしますが。。。
LanchDaemons の plist ファイルで起動時の作動 (スクリプト) を起動してるみたいですね。
やはり自分で検証できないと辛いです…。
かといって支障はないと思うのですが、問題のない 3G モデルに入れるのも気が引けて…。
先日復元したばかりの安定した環境なので ^^;
情報、助かりました。記事更新出来ました。
MOMOです。
>やはり自分で検証できないと辛いです…。
私も急いでいて、何度も誤字脱字で、すみませんでした。
画面キャプチャなら間違いなく一目瞭然だったでしょうけど。。。
名称ですが、
過去のブログ記事やTwitterなどではiPad …になっていましたので、
バージョンアップの際に名称をSritit …に変えたんですかね?
>LanchDaemons の plist ファイルで起動時の作動 (スクリプト) を起動してるみたいですね。
そのようですね。
暇を見てまさぐってみます。
また、何かありましたらよろしくお願いします。
このたびはどうもありがとうございました。