1

API を介して音楽ファイルを再生するための Android ライブラリ プロジェクトを作成しています。現時点では、MusicService (メディア プレーヤー付き) を使用して音楽ファイルを再生しています。MusicService には、ラジオのインスタンスが含まれています。ラジオが MusicService に音楽ファイルを提供しています。したがって、ラジオは、SD カード上のファイルを取得したり、API 呼び出しを介してファイルを取得したりできます...ラジオのタイプは、同じライブラリで構築されたさまざまなアプリに沿って異なる場合があります。

今、私は疑問に思っていました.この同じライブラリで2つのアプリケーションを作成すると. 1 つのアプリケーションは SD カードでラジオを使用し、もう 1 つは API からの曲でラジオを使用します。これら 2 つのアプリケーションは、同じサービスを操作して、互いに干渉しますか?

そのため、最初に SD カード アプリから再生を開始すると、再生を押すと、サービスが再生を開始します。次に、デバイスで 2 つ目のアプリを開いて一時停止をクリックすると、他のアプリで再生されていた音楽が一時停止しますか?

複雑に聞こえるかもしれませんが、質問が明確になったことを願っています。

4

2 に答える 2

3

Android ライブラリ プロジェクトは、それらを使用する各アプリの APK に (ビルド時に) マージされます。それらがマージされると、それらは完全に分離され、個別のプロセスなどになります(デフォルトでは)。そのため、同じライブラリを使用する同じデバイス上の異なるアプリ間で重複や干渉があってはなりません。

http://developer.android.com/tools/projects/index.html#LibraryProjects

これは、より詳細な回答を含む関連する質問です: Android Shared Service?

于 2013-01-22T17:50:22.750 に答える
-1

はい、同一でない意図でそれらを起動しない限り、サービスは干渉します. 私の経験によると、そのうちの 1 つだけがトリガーされ、これはおそらく不規則な動作を示します。

おそらく、両方のアプリケーションでサービスに個別のアクションを定義し、暗黙的なインテントを使用してそれらを起動することができます。

明示的なインテントを使用している場合は、うまくいくと思いますが、わかりません。あなたはまだ何かを観察しましたか?

于 2013-01-22T17:45:00.840 に答える