メインコンテンツまでスキップ

ワークプロファイル設定

TikMatrixは、各デバイスに個別にワークプロファイルユーザーを設定することをサポートしており、これはエンタープライズ管理デバイスやデュアルアプリ環境で非常に便利です。

ワークプロファイルとは

ワークプロファイルは、同じデバイス上に独立した作業環境を作成できるAndroid機能です。異なるユーザーIDを設定することで、次のことができます:

  • エンタープライズ管理デバイスでTikMatrixを正常に使用
  • 異なるアプリ環境に対して異なるユーザー設定を設定
  • より細かいデバイス管理とパーミッション制御を実現

Shelterツールを使用したアプリのクローン

ワークプロファイルを設定する前に、Shelterツールを使用してTikTokとTikMatrixアプリをクローンする必要があります:

Shelterとは

Shelterは、Androidデバイスでワークプロファイルを作成および管理できるオープンソースアプリケーションです。これにより、分離された作業環境で重複アプリケーションを実行できます。

Shelterのインストール

  1. F-DroidまたはGoogle PlayストアからShelterをダウンロードします
  2. デバイスにShelterをインストールして開きます
  3. セットアップウィザードに従ってワークプロファイルを作成します

必要なアプリケーションのクローン

Shelterをセットアップした後、TikTokとTikMatrixの両方のアプリをクローンする必要があります:

  1. TikTokアプリのクローン

    • Shelterを開いて「メイン」タブに移動します
    • アプリケーションリストでTikTokを見つけます
    • 「ワークプロファイルにクローン」ボタンをタップします
    • クローンプロセスが完了するのを待ちます
  2. TikMatrixアプリのクローン

    • Shelterで、アプリケーションリストからTikMatrixを見つけます
    • 「ワークプロファイルにクローン」ボタンをタップします
    • クローン操作を確認します

クローン成功の確認

クローンが成功すると:

  • アプリドロワーにブリーフケースアイコン付きのTikTokとTikMatrixの両方が表示されます
  • これらはアプリケーションのワークプロファイルバージョンです
  • メインプロファイル内の元のアプリケーションは変更されません

ワークプロファイルの設定方法

1. ワークプロファイルダイアログを開く

デバイス一覧の各行では、操作列の末尾にブリーフケースのアイコンがあります。これをクリックすると、そのデバイスのワークプロファイルダイアログが開きます。

複数のデバイスをまとめて設定するには、チェックボックスを選択し、一覧の上にある選択ツールバーの ワークプロファイルを設定 ボタンを使います。

2. ユーザーを選ぶ

TikMatrix がデバイスのユーザー一覧を読み取ってダイアログに表示するため、調べたり記憶から入力したりする必要はありません。各ユーザーは ID と名前とともに、次のタグ付きで表示されます。

  • メイン — デバイス所有者(ユーザー 0)。このユーザーを対象とする自動化にワークプロファイルは不要です。
  • ワークプロファイル — Shelter が作成する管理対象プロファイルです。これを選びます。
  • 停止中 — ユーザーは存在しますが、現在実行されていません。

目的のユーザーをクリックしてください。デバイスに接続できない場合は、下の入力欄に ID を直接入力できます。

入力欄を空にするか、メインユーザーを選ぶと設定が解除され、ユーザー 0 に戻ります。

3. 保存する

保存の前に、TikMatrix は選択されたユーザーを確認します。

  • そのユーザーがデバイスに存在すること
  • TikMatrix、そのテストパッケージ、自動化対象アプリのすべてがそのユーザーにクローンされていること

不足があればダイアログが具体的に何が足りないかを示し、ボタンが このまま保存 に変わります。もう一度クリックすればそのまま保存されます。この確認により、入力ミスした ID やアプリをクローンしていないプロファイルを、数時間後にタスクが失敗してからではなく、ダイアログを見ているその場で気づけます。

ワークプロファイルを設定したデバイスは、デバイス一覧のブリーフケースアイコンにユーザー ID が表示されます。

ユーザーIDの説明

一般的なユーザーID

  • 0: メインユーザー(既定のユーザー)
  • 10: 1 番目のワークプロファイルユーザー
  • 11: 2 番目のワークプロファイルユーザー
  • 以降のユーザー ID もこのパターンに従います

ダイアログはデバイスに実際に存在するユーザーを一覧表示するため、これらは目安として扱ってください。

設定ファイルのストレージ

ワークプロファイルの設定は data/work_profile_user.json に保存されます。

{
"device_serial_1": "10",
"device_serial_2": "11"
}

キーはデバイスのシリアル番号です。デバイス一覧に表示されるもので、無線接続のデバイスがたまたま使っている ip:port アドレスではありません。この変換は TikMatrix 自身が行うため、再接続や IP の変更をまたいでも設定は保持されます。

ワークプロファイルを使うデバイスだけがファイルに現れます。設定を解除すると、0 を保存するのではなくエントリ自体が削除されます。

デバイス設定の管理

各デバイスの設定は独立しています。デバイス一覧から次の操作ができます。

  1. デバイスごとに異なるユーザー ID を設定する
  2. デバイスの設定をいつでも変更・解除する
  3. 複数のデバイスを選択し、ワークプロファイルを設定 でまとめて設定・解除する

work_profile_user.json を手作業で編集することも引き続き可能で、再起動は不要になりました。TikMatrix は数秒以内にファイルの変更を検出します。

トラブルシューティング

よくある問題

Q: ワークプロファイル設定後にコマンドが失敗する

A: ダイアログを開き直し、保存前チェックの内容を確認してください。よくある原因は次のとおりです。

  • その ID が示すユーザーがデバイスに存在しない
  • TikMatrix または自動化対象アプリがそのプロファイルにクローンされていない
  • プロファイルが停止している — デバイスのロックを解除し、ワークプロファイルのアプリを一度開いてください

Q: ワークプロファイル設定を解除するには

A: ダイアログを開き、入力欄を空にするかメインユーザーを選んで保存します。

Q: 設定が失われた場合

A: 設定はローカルの JSON ファイルに保存されています。失われた場合は再設定するか、バックアップから data/work_profile_user.json を復元してください。

Q: Shelter に関する問題

A: Shelter で問題が発生した場合:

  • クローンに失敗する: 管理者権限と十分な空き容量があるか確認してください
  • クローンしたアプリが見えない: Shelter でワークプロファイルが正しく有効化されているか確認してください
  • ワークプロファイルでアプリがクラッシュする: アプリを再クローンするか、Shelter を更新してください
  • クローンしたアプリが見つからない: アプリ一覧でブリーフケースのバッジが付いたアイコンを探してください

ベストプラクティス

エンタープライズ環境

  1. 統一管理:すべてのエンタープライズデバイスに同じユーザーIDを設定
  2. パーミッション分離:異なるパーミッションレベルを区別するために異なるユーザーIDを使用
  3. 設定のバックアップ:定期的にwork_profile_user.jsonファイルをバックアップ

個人使用

  1. アプリの分離:異なる目的に対して異なるユーザー環境を設定
  2. テスト環境:アプリのテストに独立したユーザーIDを使用
  3. プライバシー保護:ユーザー分離によりプライバシーセキュリティを向上

Shelterツール管理

  1. 定期的な更新:互換性を確保するためにShelterアプリケーションを最新の状態に保つ
  2. アプリケーションの同期:ワークプロファイルを設定する前にTikTokとTikMatrixの両方がクローンされていることを確認
  3. Shelter設定のバックアップ:簡単な復元のためにShelter設定をエクスポートしてバックアップ
  4. アプリの更新を監視:TikTokまたはTikMatrixが更新されたときに、クローンされたバージョンも更新する必要がある場合があります

技術的な詳細

ワークプロファイルは同一デバイス上の 2 番目の Android ユーザーです。そのため、この設定は TikMatrix が端末を操作する方法を 3 つの点で変えます。

Android のユーザーを理解するコマンドには、対象ユーザーが伝えられます。 Android の各シェルコマンドは --user フラグの位置がそれぞれ異なり、間違った位置に置いても拒否されずに無視されるため、TikMatrix はコマンドごとに配置します。

# `settings` は動詞の前にフラグを取る
adb shell settings --user 10 put system screen_off_timeout 2147483647

# `am`、`ime`、`pm` はそれぞれの動詞の後に取る
adb shell am start --user 10 -n com.zhiliaoapp.musically/.MainActivity
adb shell ime set --user 10 com.github.tikmatrix/.FastInputIME
adb shell pm list packages --user 10 com.zhiliaoapp.musically

この扱いを受けるのは ampmimecontentsettings のみです。Android のユーザーという概念を持たないコマンド — inputchmodrmpkillipmkdir — はそのまま送信されます。特に input はユーザーではなくフォアグラウンドのウィンドウにイベントを送るため、タップやスワイプにフラグは不要です。

ファイルパスはプロファイルのストレージを指します。 デバイスに送る素材は /storage/emulated/0/DCIM ではなく /storage/emulated/10/DCIM に置かれ、クローンされたアプリから見えるようになります。

インストール済みアプリはプロファイルにリンクされます。 adb install はメインユーザーにしか届かないため、TikMatrix はインストールのたびに pm install-existing --user 10 <package> を実行し、同じ APK をプロファイル内でも利用できるようにします。