Symfonium は他のアプリケーションが連携できる API を公開しています。
API は Broadcast receiver 経由でアクセスできるため、適切な broadcast intent を送信するだけで使用できます。
receiver コンポーネント名は “app.symfonik.music.player/app.symfonium.remote.api.ApiReceiver” です。
コンポーネントを分けて入力するアプリでは次のようになります。
- Package: “app.symfonik.music.player”
- Class: “app.symfonium.remote.api.ApiReceiver”
- Type: Broadcast
Intent の action 値に呼び出したい API を設定し、以下のドキュメントに従って extras を入力します。
レンダラーを変更
Section titled “レンダラーを変更”- Action: “app.symfonium.api.SELECT_RENDERER”
- Extras:
- “TYPE” [Int]: レンダラー種別
使用可能な値:
- 0: ローカル端末
- 1: UPnP Player
- 3: Chromecast Player
- 6: Remote Media Center
- “IDENTIFIER” [String/Optional]: レンダラーの一意 ID 値はキャスト画面で (i) ボタンを押すと確認できます。レンダラーを長押しすると値をクリップボードへ自動コピーできます。ローカル端末へ戻す場合のみ省略可能です。
- “TYPE” [Int]: レンダラー種別
使用可能な値:
- Action: “app.symfonium.api.MEDIA_SYNC”
- Extras:
- “PROVIDER_ID” [Int]: プロバイダー ID。設定内のプロバイダーのボトムシートメニューで確認できます。
- Action: “app.symfonium.api.MEDIA_COMMAND”
- Extras:
- “COMMAND” [String]: 送信するコマンド
使用可能な値:
- “play”
- “pause”
- “stop”
- “next”
- “previous”
- “shuffle”
- “repeat”
- “mute”
- “togglemute”
- “seek_relative” (相対位置を秒単位の int パラメーターで指定)
- “seek” (位置を秒単位の int パラメーターで指定)
- “volume” (音量を int パラメーターで指定)
- “set_sleeptimer” (遅延を分単位の int パラメーターで指定) v6.0+ が必要
- “remove_sleeptimer” v6.0+ が必要
- “INT_PARAMETER” [Int/Optional]: 必要なコマンド向けの int 値
- “COMMAND” [String]: 送信するコマンド
使用可能な値:
メディア開始
Section titled “メディア開始”- Action: “app.symfonium.api.MEDIA_START”
- Extras:
- “MEDIA_TYPE” [String]: 開始するメディア種別
使用可能な値:
- “playlist”
- “artist”
- “album”
- “genre”
- “song”
- “song_mix”
- “album_mix”
- “internet_radio” v11.2+ が必要
- “NAME” [String/Optional]: メディア名。曲ではファイル名を指定する場合は省略可能です。 v1.9+ が必要
- “ALBUM” [String/Optional]: 曖昧さを解消するためのメディアのアルバム。 v14.1+ が必要
- “ARTIST” [String/Optional]: 曖昧さを解消するためのメディアのアーティスト。 v14.1+ が必要
- “ID” [Long/Optional]: ラジオまたはプレイリストの ID (名前を渡す場合は省略可能)。 v11.2+ が必要
- “FILE” [String/Optional]: 曲専用のメディアの完全パス。 v1.9+ が必要
- “RESUME” [Boolean/Optional]: 可能な場合にメディアを再開するかどうか。
- “SHUFFLE” [Boolean/Optional]: プレイリスト / ジャンルなどのメディアグループで内容をシャッフルするかどうか。
- “QUEUE” [Int/Optional]: 1 は現在再生中の直後にメディアをキューへ追加。2 はプレイリスト末尾に追加。 v1.8+ が必要
- “MEDIA_TYPE” [String]: 開始するメディア種別
使用可能な値:
v1.10+ が必要
- Action: “app.symfonium.api.CHANGE_SETTINGS”
- Extras:
-
“SETTING” [String]: 変更する設定
使用可能な値:
- “wifi_transcode”: Wi-Fi トランスコードビットレート
- “mobile_transcode”: モバイル回線トランスコードビットレート
- “available_offline”: オフライン利用可能フィルター v3.2+ が必要
- “hide_status_bar”: ステータスバー非表示を切り替え v14.0+ が必要
- “ignore_camera_hole”: カメラホールの無視を切り替え v14.0+ が必要
-
“INT_PARAMETER” [Int]: トランスコード値
-
曲の終わりまで待つスリープタイマー、hide_status_bar、ignore_camera_hole の使用可能な値:* 0: 無効* 1: 有効
オフラインフィルターの使用可能な値:* 0: フィルター無効* 1: フィルター有効
トランスコードの使用可能な値:* -1: トランスコードなし* 1: 64 Kbps* 2: 96 Kbps* 3: 128 Kbps* 4: 160 Kbps* 5: 192 Kbps* 6: 256 Kbps* 7: 320 Kbpsプレイリストインポート
Section titled “プレイリストインポート”v8.0+ が必要
対応メディアプロバイダーからプレイリストをインポートします。既存のプレイリストは自動的にスキップされます。
- Action: “app.symfonium.api.PLAYLIST_IMPORT”
- Extras:
- “PROVIDER_ID” [Int]: プロバイダー ID。設定内のプロバイダーのボトムシートメニューで確認できます。
- “PLAYLIST_TYPE” [Int]: インポートされるプレイリスト種別
- 1: オフライン優先
- 2: 読み取り専用
- 3: オンライン優先
プレイリストサムネイルを再生成
Section titled “プレイリストサムネイルを再生成”v11.3+ が必要
含まれる曲のサムネイルに基づいて、プレイリストサムネイルを更新します。
- Action: “app.symfonium.api.CUSTOM_ACTION”
- Extras:
- “ACTION” [String]: “generate_playlist_thumbnail”
- “LONG_PARAMETER” [Long]: プレイリスト ID。プレイリストアクションのボトムシート上部で確認できます。
プレイリストの安定ランダム並び替えを更新
Section titled “プレイリストの安定ランダム並び替えを更新”v12.1+ が必要
プレイリストの安定ランダム並び替えを更新します。
- Action: “app.symfonium.api.CUSTOM_ACTION”
- Extras:
- “ACTION” [String]: “refresh_playlist_stable_random”
- “LONG_PARAMETER” [Long]: プレイリスト ID。プレイリストアクションのボトムシート上部で確認できます。
メディアキューを読み込む
Section titled “メディアキューを読み込む”v12.0+ が必要
メディアキューを読み込み、任意で再生を再開します。
- Action: “app.symfonium.api.CUSTOM_ACTION”
- Extras:
- “ACTION” [String]: “load_media_queue”
- “LONG_PARAMETER” [Long]: メディアキューの ID。メディアキューのボトムシートで情報アイコンを押すと確認できます。
- “RESUME” [Boolean]: キュー読み込み後に再生を再開するには true。
ジャンルサムネイルを再生成
Section titled “ジャンルサムネイルを再生成”v11.5+ が必要
含まれる曲のサムネイルに基づいて、ジャンルサムネイルを更新します。
- Action: “app.symfonium.api.CUSTOM_ACTION”
- Extras:
- “ACTION” [String]: “generate_genre_thumbnail”
- “NAME” [String]: ジャンル名。特別な “
--ALL--” 値を使うとすべてのジャンルサムネイルを再生成できますが、時間とバッテリー使用量に注意してください。
オフラインキャッシュをクリーンアップ
Section titled “オフラインキャッシュをクリーンアップ”v11.3+ が必要
オフラインキャッシュ管理から Cleanup アクションを実行します。
- Action: “app.symfonium.api.CUSTOM_ACTION”
- Extras:
- “ACTION” [String]: “cleanup_offline_cache”
バックアップを開始
Section titled “バックアップを開始”v11.3+ が必要
選択した設定でバックアップを開始します。パスワードと少なくとも 1 つのオプションを渡す必要があります。
- Action: “app.symfonium.api.CUSTOM_ACTION”
- Extras:
- “ACTION” [String]: “start_backup”
- “PASSWORD” [String]: バックアップパスワード。必須です。
- “SETTINGS” [Boolean]: バックアップにこれを含めるかどうか。
- “PROVIDERS” [Boolean]: バックアップにこれを含めるかどうか。
- “EQ_PROFILES” [Boolean]: バックアップにこれを含めるかどうか。
- “INTERNET_RADIO” [Boolean]: バックアップにこれを含めるかどうか。
- “PLAYLISTS” [Boolean]: バックアップにこれを含めるかどうか。
- “AUTO_OFFLINE_RULES” [Boolean]: バックアップにこれを含めるかどうか。
- “USER_DATA” [Boolean]: バックアップにこれを含めるかどうか。
- “USER_DATA_ALL” [Boolean]: すべてのユーザーデータをバックアップに含めるかどうか。ユーザーデータも有効にする必要があります。
- “CUSTOM_IMAGES” [Boolean]: バックアップにこれを含めるかどうか。
- “FILE_FAVORITES” [Boolean]: バックアップにこれを含めるかどうか。
- “TAG_CACHE” [Boolean]: バックアップにこれを含めるかどうか。
プロバイダーのアクティブ接続を変更
Section titled “プロバイダーのアクティブ接続を変更”v13.4+ が必要
プロバイダーにプライマリ接続またはセカンダリ接続を強制的に使用させます。
- Action: “app.symfonium.api.CUSTOM_ACTION”
- Extras:
- “ACTION” [String]: “force_provider_connection”
- “PROVIDER_ID” [Long]: プロバイダーの ID。必須です。
- “ACTIVE_CONNECTION” [Int]: 1 はプライマリ接続、2 はセカンダリ接続。必須です。
アーティストサムネイルを再生成
Section titled “アーティストサムネイルを再生成”v13.5+ が必要
含まれる曲のサムネイルに基づいて、アーティストサムネイルを更新します。
- Action: “app.symfonium.api.CUSTOM_ACTION”
- Extras:
- “ACTION” [String]: “generate_artist_thumbnail”
- “ONLY_MISSING_THUMBNAIL” [Boolean]: true の場合、まだサムネイルが定義されていないアーティストのみ更新します。
- “NAME” [String]: アーティスト名。特別な “
--ALL--” 値を使うとすべてのアーティストサムネイルを再生成できますが、時間とバッテリー使用量に注意してください。
アプリケーションスタイルを読み込む
Section titled “アプリケーションスタイルを読み込む”v13.6+ が必要
保存済みのカスタムアプリケーションスタイルを読み込みます。
- Action: “app.symfonium.api.CUSTOM_ACTION”
- Extras:
- “ACTION” [String]: “load_app_style”
- “NAME” [String]: アプリケーションスタイルの名前
プロファイルを読み込む
Section titled “プロファイルを読み込む”v13.6+ が必要
保存済みのプロファイルを読み込みます。
- Action: “app.symfonium.api.CUSTOM_ACTION”
- Extras:
- “ACTION” [String]: “load_profile”
- “NAME” [String]: プロファイルの名前
