【お知らせ】現在複数の記事で画像のリンク切れが発生しており、発見次第修正中です。もし画像が正常に表示されない記事がありましたらコメント等で情報いただけると助かります。

Chromecast with GoogleTVでデフォルトランチャーを置き換える方法

Chromecast with GoogleTVでは、基本的にホーム画面の変更ができないようになっています。昔はAndroidTVでも通常のAndroidと同じように変更できて便利だったんですけど、AndroidTV 9.0あたりから変更できなくなったんですよね…

今回はそれを強制的に置き換える方法を紹介します。とはいってもADBコマンドでデフォルトランチャーを無効化するだけなんですが。

目次

必要なもの

・ADBコマンドを使用できるPC(ADB環境はこの記事で導入できます)

・任意のホーム(ランチャー)アプリ

※AndroidTV端末でADBコマンドを使用するにはLAN経由で接続する必要があります。そのため、同じネットワークに接続しておいてください。

スポンサーリンク

手順

任意のホームアプリをインストール

通常のAndroidで使用可能なものであれば置き換え自体はできます。が、リモコンで操作するならTV向けがおすすめです。私は「ATV Launcher Pro」に置き換えしました。これは有料版ですが、無料版もあります。GooglePlayから普通にインストール可能です。

USBデバッグを有効化

まずは「開発者向けオプション」を有効化します。これは通常のAndroidと一緒。

「設定」→「システム」→「Android TV の OS ビルド」の上で数回決定ボタンを押します。

表示された「開発者向けオプション」の中から「USBデバッグ」を有効化。

ChromecastのIPアドレスを調べる

設定から確認できます。

「設定」→「ネットワークとインターネット」→接続しているWi-Fi or 有線

PCとLAN経由でADB接続

Windows10であれば「PowerShell」を起動し、以下のコマンドを入力します。後半のIPアドレスは、先程確認したものに置き換えます。これでLAN経由でのADBが可能になります。

adb connect 192.168.x.x

この時、Chromecastの画面にこのような表示が出ますので、「許可」を選択してください。

「missing port in specification」というエラーが出る場合、ポートを指定してやることで実行できるようになるはずです。コマンドは以下です。IPアドレスは同じ用に置き換えてください。

「adb tcpip 5555」→「adb connect 192.168.x.x:5555」

ADBコマンドで無効化

次に以下のコマンド入力します。Chromecast with Google TVの場合、2つのアプリを無効化する必要があります。※ランチャーだけ無効化するとホームボタンを押した際にクラッシュしてしまいます。

adb shell pm disable-user --user 0 com.google.android.apps.tv.launcherx

adb shell pm disable-user --user 0 com.google.android.tungsten.setupwraith

ホームボタンを押す

これでデフォルトランチャーの無効化が完了しました。ホームボタンを押すと、先程インストールしておいたランチャーが起動するはずです。

ATV Launcherは結構カスタマイズ項目が多くて、アイコンやアプリ名、並び順にスクロール方向などもカスタマイズできます。

キャスト機能が動作しない場合

この作業の影響かわかりませんが、キャスト機能が動作しなくなりました。

対処法として、設定から「Chromecast built-in」を一度アンインストールすれば動作するようになりました。
アンインストール後は勝手に再インストールされます。

もとに戻す場合

もとへ戻す場合、先程無効化したアプリを有効化するだけでOKです。

adb shell pm enable com.google.android.apps.tv.launcherx

adb shell pm enable com.google.android.tungsten.setupwraith

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメント一覧 (18件)

  • 出来るには出来たのですが今度はランチャーのリモコン操作が全く何度もききません。

    • 代替となるランチャーは導入済みですか?ランチャーが導入していなければ当然ホームボタンは無反応となります。また、ランチャーを導入している場合でも、リモコン操作に非対応であれば当然反応しません。
      いずれにしても、情報が少ないのでなんとも言えないです。

  • Exception occurred while executing:
    java.lang.IllegalArgumentException: Unknown package: ?user
    at com.android.server.pm.PackageManagerService.setEnabledSetting(PackageManagerService.java:21396)
    at com.android.server.pm.PackageManagerService.setApplicationEnabledSetting(PackageManagerService.java:21340)
    at com.android.server.pm.PackageManagerShellCommand.runSetEnabledSetting(PackageManagerShellCommand.java:1826)
    at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:214)
    at android.os.ShellCommand.exec(ShellCommand.java:104)
    at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:21919)
    at android.os.Binder.shellCommand(Binder.java:881)
    at android.os.Binder.onTransact(Binder.java:765)
    at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:4892)
    at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:4007)
    at android.os.Binder.execTransactInternal(Binder.java:1021)
    at android.os.Binder.execTransact(Binder.java:994)
    PS C:\Users\fsrxm> adb shell pm disable-user ?user 0 com.google.android.tungsten.setupwraith
    と出ました。

  • あとOSのカーネルバージョンは「4.9.180」、OSビルドは「QTS1.220504.008.8726984」になります。

  • すいません、自分も同じようにPowerShellにコマンドを打ち込みADVコマンド無効化までいったのですがadb shell pm disable-user –user 0 com.google.android.apps.tv.launcherx
    adb shell pm disable-user –user 0 com.google.android.tungsten.setupwraith
    のとこで‘‘ adb shell pm disable-user ?user 0 com.google.android.apps.tv.launcherx
    error: device not found‘‘と出て失敗してしまいます。どうすればいいでしょうか?

    • あとOSのカーネルバージョンは「4.9.180」、OSビルドは「QTS1.220504.008.8726984」になります。

    • 返信が遅くなりました。device not foundと表示されている通り、PCとChromecastが接続されていない状態です。再度接続手順を行ったあと、adb devicesで文字列が表示されることを確認してください。

  • 質問失礼いたします。
    我が家のChromecast with GoogleTVで同じように試し、adbコマンドまではうまくいったと思うのですが、ホームボタンを押してデフォルトランチャーが立ち上がってしまいます。

    ちなみに、OSのカーネルバージョンは「4.9.180」、OSビルドは「QTS1.210311.008.7350836」です。

    インストールしたホームランチャーアプリは、記事と同じ「ATV Launcher」の有料版です。

    • 申し訳ないです。記事内のコマンドの表示が一部おかしくなっていてエラーが出るようになっていました。具体的にいうとハイフンが2個連続で入力すべき部分が一つの表示になっていました。

      記事内のコマンドも修正しましたが、同じコマンドをいかにも載せておきますので、再度実行してみてください。

      adb shell pm disable-user –user 0 com.google.android.apps.tv.launcherx
      adb shell pm disable-user –user 0 com.google.android.tungsten.setupwraith

      • できました!ご丁寧にご教示いただき、ありがとうございました。
        ちなみに、Dixim playというアプリをATV Launcher上のアプリアイコンから起動すると、途中までは起動するものの、正しく動作しませんでした。

        ランチャーアプリのアイコンから起動するのと、システムメニュー内のアプリ一覧からアプリを起動するのとで、何か違うのでしょうか?

        • 私もDiXiM Playは使用していますが、特に起動しないということはないですね。ちょっと面倒ですが、再インストールや更新の確認を行ってみてください。

          • Dixim playはお試し版で使用していましたが、ライセンスを購入したら、正しく使用できるようになりました^^; ありがとうございました。

  • すいません、質問いいですか?
    こちらの記事を参考に
    adb connect 192.168.0.5
    とコマンドを打ちましたが
    missing port in specification: tcp:192.168.0.5
    とエラーが出てしまいました。ChromecastのIPアドレスはこれであってます。
    PCの環境:Windows 10(21H1)でChromecastと同じWiFiに接続
         ADB導入済み(15 seconds ADB Installerを使って導入)
    あとは、対処としてPCの再起動、コマンドプロンプトで「adb.exe」を強制終了させたりしましたが、改善しませんでした。

    • 先に「adb tcpip 5555」を実行し、「adb connect “IPアドレス”:5555」というふうに実行してみてください。

      • ありがとうございます!上手くいきました!
        これってADBが使うTCPのポートが5555だから、それを指定して接続してるんですね。
        勉強になりました。

コメントする

目次