Chipppppppppp / LIME

Adkiller for LINE
MIT License
374 stars 25 forks source link
android line xposed xposed-module

LIME: Adkiller for LINE

Latest Release License

概要

This is an Xposed Module to clean LINE.

LINE を掃除する Xposed Module です。

使用方法

LINEアプリの ホーム > から「設定」に入り、右上の「LIME」のボタンより開けます。また、Root ユーザーは LIME アプリから設定することも可能です。クローンアプリなどでは LIME 側からしか設定できない場合があるようです。

画像を閲覧 Sample screenshot

また、トーク画面右上の からスイッチをオンにすると未読のまま閲覧できます。(このスイッチは設定で削除可能です)

※返信すると未読が解除されてしまうのでご注意ください

画像を閲覧 Sample screenshot

機能

JavaScript で通信内容を改変する

設定の「リクエストを改変」、「レスポンスを改変」では、Rhino の JavaScript コードを記述することで自由に通信内容を改変できます。これを利用して新たな機能が実装可能なことを確認済みです (HOOK_SAMPLE.md)。

あらかじめ data という変数が用意されており、以下のプロパティが含まれます。

data は、こちらのクラス のインスタンスで、「通信内容をログに出力」で確認できます。

また、console.logXposedBridge にログを出力できます。エラーが発生した場合もここに出力されます。 リクエスト・レスポンスともに、JavaScript は他の処理より早く実行され、「通信内容にログを出力」は最後に実行されます。 Rhino の仕様、特に Java 文字列との比較に equals を用いる必要があることに注意してください。

インストール

初めに、以下のサイトの中から、
LINE 14.9.1LIME 1.9.0 の APK をダウンロードしてください。

[!IMPORTANT] 分割 APK は使用しないでください

LINE

LIME

Root 端末 (Magisk)

  1. LSPosed をインストール
  2. LINE アプリと LIME アプリを両方ともインストール
  3. Google Play ストアの自動アップデートを防ぐために、Update LockerHide My Applist で LINE アプリを選択する Aurora Store の場合はブラックリストを使用
  4. LSPosed のモジュールから LIME に移動し、モジュールの有効化 と LINE アプリにチェックを入れる

非 Root 端末

[!WARNING] 非 root 端末では、 以下の問題があります

  • Google アカウント (ドライブ) を使用したトーク履歴の復元ができない (この方法 でログインすれば可能)
  • 発/着信音が鳴らない
  • 着信が入るとクラッシュ
  • コインの購入が不可
  • LINE Pay の一部の機能が使用不可
  1. LSPatch をインストール
    ※フォークで開発されている NPatch では不具合が発生する可能性があります
  2. LSPatch アプリを開き、管理 > 右下の > ストレージからapkを選択 > 先程ダウンロードした LINE の APK を選択 > 統合モジュールを埋め込む > インストールされているアプリを選択 > LIME にチェックを入れて > パッチを開始 より、パッチを適用

この方法 を用いればトークの復元が可能なようです。

[!TIP] ディレクトリの選択と出てきた場合は、OK を押してファイルピッカーを起動し、任意のディレクトリ下にフォルダを作成し、このフォルダを使用 > 許可を押す

  1. Shizuku を使用している場合は インストール を押して続行する
    使用していない場合は、ファイルエクスプローラー等の別のアプリからインストールする

[!IMPORTANT] 既に Playストア からインストールした LINE アプリがインストールされている場合は、署名が競合するため、最初にアンインストールを行ってください。

複数デバイスログイン

MagiskOnWSALocalWSA-Script 等の改造版 WSA を使用して Windows 上の Android で同様の操作を行うことで、Windows での複数デバイスログインも可能です。

1. PC としてログインする

[!WARNING] この方法は現在利用できません

方法を確認 PC (Windows) 版 LINE に偽装します。これにより PC 版 LINE は強制ログアウトされますが、使えない機能がある PC 版 LINE を Android 版 LINE に移すことができます。 ※片方のデバイスが iOS の場合、Letter Sealing がうまくいかずメッセージを受信できない場合があるので、[この方法](https://github.com/Chipppppppppp/LIME/issues/88#issuecomment-2012001059) に従って Letter Sealing ガチャを行ってください。(キーはだれかとのチャットの右上の > 設定 > 暗号化キー から確認できます。) - メリット:メッセージの同期に問題がない、LIME は片方の端末に入れるだけで良い、非 Root でも可能 - デメリット:3 端末以上でログインできない、2 端末目でサービスアイコンが表示されない #### 手順 1. もう一つの端末に LINE と LIME をインストールする 2. LINE ログイン画面で、「PC (DESKTOPWIN) に偽装」にチェックを入れる 3. 設定 > アプリ > LINE より、LINE アプリの設定画面から「強制停止」と「ストレージとキャッシュ」の「キャッシュを削除」をタップ 4. LINE アプリを再度開き、「Log in as secondary device」をタップしてログインする 5. ログイン後、LINE の設定から「トークのバックアップ・復元」をタップし、2 週間より前のトークを復元する

2. Android ID を偽装する

この方法は両方のデバイスを Root 化している場合のみ可能です。
https://jesuscorona.hatenablog.com/entry/2019/02/10/010920 にあるように、メッセージの同期などに若干の遅れが生じることに注意が必要です。

手順

  1. LINE と LIME をインストールする
  2. LINE ログイン画面で、「複数デバイスログイン (Android ID を偽装)」にチェックを入れる
  3. 設定 > アプリ > LINE より、LINE アプリの設定画面から「強制停止」と「ストレージとキャッシュ」の「キャッシュを削除」をタップ
  4. LINE アプリを再度開き、ログインする
  5. ログイン後、Swift Backup を利用して LINE アプリをバックアップ (詳しくはこちら)
  6. Swift Backup のバックアップフォルダをもう一つの端末に移し、バックアップした LINE をインストール (詳しくはこちら)
  7. LINE アプリを開かずに先に LIME をインストールする

問題の報告

新たなバグや修正方法を見つけた場合は、報告をお願いします。

[!NOTE] 日本語がわかる場合は日本語で記述してください。

Star History

Star History Chart