Skip to content

Chipppppppppp/LIME

Repository files navigation

LIME: Ad-killer 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

機能

  • 不要なボトムバーのアイコンの削除
  • ボトムバーのアイコンのラベルの削除
  • 広告・おすすめの削除
  • サービスのラベルを削除
  • 通知の「通知をオフ」アクションを削除
  • WebView を既定のブラウザで開く
  • 常に既読をつけない
  • 未読のまま閲覧
    • トーク画面右上メニューのスイッチから設定できます (スイッチは削除可能)
  • 送信取り消しの拒否
  • 常にミュートメッセージとして送信
    • 送信時「通常メッセージ」を選択すれば通知されます
  • トラッキング通信のブロック
    • noop, pushRecvReports, reportDeviceState, reportLocation, reportNetworkStatus をブロック
  • 通信内容をログに出力
  • 通信内容を改変
    • JavaScript で通信内容を改変できます (後述)

JavaScript で通信内容を改変する

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

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

  • type: REQUEST または RESPONSE となる Enum
  • name: 通信の名前
  • value: 通信内容

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

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

インストール

初めに、以下のサイトの中から、
LINELIME の APK をダウンロードしてください。
バージョンは Releases に書いているものを参照してください。

Important

分割 APK は使用しないでください。
無理やり結合せず、必ずオリジナルの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 の一部の機能が使用不可
  • Wear OS (スマートウォッチ)での使用不可
  1. LSPatch をインストール
    ※フォークで開発されている NPatch では不具合が発生する可能性があります。
    また、LSPosed 公式 の LSPatch を利用してアプリがクラッシュする場合は、フォークで開発されている JingMatrix LSPatch を利用してパッチを適用すると正常に動作する場合があります。

  2. LSPatch アプリを開き、管理 > 右下の > ストレージからapkを選択 > 先程ダウンロードした LINE の APK を選択 > 統合モジュールを埋め込む > インストールされているアプリを選択 > LIME にチェックを入れて > パッチを開始 より、パッチを適用

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

Tip

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

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

Important

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

複数デバイスログイン

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

Warning

この方法は現在利用できません

方法を確認

PC (Windows) 版 LINE に偽装します。これにより PC 版 LINE は強制ログアウトされますが、使えない機能がある PC 版 LINE を Android 版 LINE に移すことができます。

※片方のデバイスが iOS の場合、Letter Sealing がうまくいかずメッセージを受信できない場合があるので、この方法 に従って 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. 最大バージョンに偽装をしてログインする

Warning

この方法は現在利用できません

3. Android ID を偽装する

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

  • メリット:3 端末以上でもログイン可能・すべてのサービスを使用可能
  • デメリット:メッセージの同期に遅れが生じる・Root 限定

手順

  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