mikiyan1978’s 脱獄情報日記

脱獄に関する情報を発信します

Bluetoothの名前を変更する方法

お久しぶりです。mikiyan1978です。
さて今回はFilza File Managerを使って接続済みのBluetoothの名前を変更する方法を紹介します。

例として1番上の
AG-001
を変えてみましょう。

まず
/var/containers/Shared/SystemGroup/12467CA2-89C9-4647-BDEF-B489E747E5FC/Library/Preferences/com.apple.MobileBluetooth.devices.plist
このファイルを開きます。

Root項目をタップします。

ズラっと表示されるので、この中から目的の項目をタップします。この場合は
E9:08:EF:38:F9:D3
という項目になります。各自探して下さい。

次に
Name
という項目のiマークをタップし好きな名前に変えます。


変えましたら再起動して適応させます。Respringでは適応されません。

好きなコマンドでRespringする方法

さて今回はタイトル通り
好きなコマンドでRespringする方法です。

早速まいりましょう。
まずterminalアプリを開きます。
rootログインしましたら、次のコマンドを入力します。

cd /usr/bin
echo killall -9 SpringBoard >> [好きなコマンド]
chown root:wheel /usr/bin/[好きなコマンド]
chmod 0755 /usr/bin/[好きなコマンド]
[好きなコマンド]

[好きなコマンド]
この部分は例えば
abcやrespなど自分の好きな英数字を代入して下さい。
abcなら>|objc|
cd /usr/bin
echo killall -9 SpringBoard >> abc
chown root:wheel /usr/bin/abc
chmod 0755 /usr/bin/abc
abc
|

アプリがクラッシュして起動しない場合の対処法

脱獄端末にて再起動した後の状態からKickstart後にアプリがクラッシュしてしまい起動しない場合の対処法を紹介します。
このやり方はあくまで対処法の一例です。
必ずしも直るというものではありません。

やり方

ここでは例としてLINEアプリでやってみましょう。

まず、LINE.appフォルダーがあるディレクトリに移動します。
そして、
iTunesMetadata.plist
というファイルがあるので削除して下さい。

削除出来ましたらAppStoreを開き、LINEを検索します。すると下記画像のように再インストールできる状態になっているので、そのまま再インストールして下さい。

これだけでクラッシュ回避が出来ます。

通常のアンインストールするやり方だとデータが削除されてしまいます。
しかし、このやり方だとデータが削除されません。
なので、例えばアプリのアイコン差し替えや、何かしらのファイルを削除してしまったなどに有効ですね。

Preference Bundle作成方法

今回は脱獄端末のみでPreference Bundleの作成方法を紹介します。
前提としてtheos構築済み、make packageなどのコマンドでdeb作成の経験があるとします。

Tweakに何かしらの機能を、例えばオンオフ、適応させるためのRespringなどがあります。
そういう場合にPreference Bundleを使用します。
今回は簡単な例として設定アプリからRespringするものを作っていきましょう。

まず、

$THEOS/bin/nic.pl

こちらのコマンドでTweakプロジェクト作成します。
作成されたらcdコマンドでプロジェクト内にカレントディレクトリを変更します。
更にもう一度$THEOS/bin/nic.plでPreference Bundleを選択します。するとTweakプロジェクト内にPreference Bundleプロジェクトが作成されます。
例としてTweakプロジェクト名を
respref
Preference Bundleプロジェクト名を
resp
とすると

上記画像のようになります。ここでMakefileファイルの中を確認します。

上のように
SUBPROJECTS += resp
この記述がある事を確認します。64bit端末にインストールする場合は
ARCHS = armv7 arm64
これを追加記述します。
同じディレクトリにあるTweak.xmファイルについては今回、設定アプリからRespringさせるのみなので編集はしません。
次にそのディレクトリに作成された
respというフォルダーに移動します。

entry.plistファイルを開き

1番下のlabelという項目に名前をつけます。画像のようにすると

このように表示されます。
次に、Makefileファイルを開き先程と同様、ARCHS = armv7 arm64を追加記述します。

次にResourceフォルダーに移動します。
plistファイルが2つありますが、$THEOS/bin/nic.plのPreference Bundleにて付けた名前のplistファイルを開きます。ここではresp.plistファイルになります。

画像のように編集します。defaults項目についてはもう1つのplistファイルつまりInfo.plistファイルのCFBundleIdentifier項目に書かれているものと一致させて下さい。

では、ディレクトリを1つ戻ります。
そしてresp.mmファイルを開き、

画像の位置に

"-(void)resp {
system("killall -9 SpringBoard");"
これを追加記述します。これはRespringさせるメソッドになります。赤文字の部分はresp.plistファイルのaction項目と一致させて下さい。一致さえさせていればお好きな英文字で構いません。
Respringという動作を起こさせるキーになります。
作業は以上となります。あとはターミナルよりcdコマンドにてresprefフォルダーにカレントディレクトリを変更してmake packageして下さい。

質問がありましたら下のLINE追加ボタンより追加して下さい。
友だち追加

Twitterやってます。

オマケのカスタム検索です。







Twitterのアカウント変更について

この度、誠に勝手ながらTwitterのアカウントを変更する事になりました。
お手数おかけしますが、下記のフォローボタンよりフォローを宜しくお願い申し上げます。

LINE@について

只今LINE@にログイン出来なくなってしまいメッセージの確認がとれません。

申し訳ありませんがLINEの方によろしくお願いいたします。

f:id:mikiyan1978:20180212103848p:image

お手数おかけします。