1

表示されるデータとパッケージ名が異なるだけの同一のアプリがいくつかあります。私は Android Wear を試してみることにしました。私の主な目標は、すべての電話アプリのデータを表示する単一の Android Wear アプリを開発することでした (おそらく、各アプリに 1 行の 2D スライダーを使用)。

2 つのアプリがあるとします。

  • 無料の「com.company.appfree」

  • プロ「com.company.apppro」

そしてウェアアプリ

  • 「com.company.appwear」

パッケージが電話アプリ パッケージ (「com.company.appfree」または「com.company.apppro」) のいずれかと同一でない限り、電話アプリから送信された DataItems またはメッセージを Wear アプリで取得できなかったことがわかりました。 )

アプリに同じパッケージを持たなくても、この通信を実現できる方法があるかどうか誰かに教えてもらいたいです。複数のアプリではなく、1 つのアプリが本当に必要です。

ご協力ありがとうございました!

4

2 に答える 2

1

ウェアラブル アプリと電話アプリが を使用して通信するには、パッケージ名が一致している必要がありますDataApi。セットアップでは、通信できません。

ただし、これは、あなたが望むものをまったく達成できないという意味ではありません。次の方法でアプリをセットアップできます。

com.company.appfree電話で

com.company.appfreeウェアラブルで

com.company.apppro電話で

ここで、通信チャネルを 1 つ追加します。

com.company.appfree (phone)<- DataApi->com.company.appfree (wearable)

次に、電話でのみ、ContentProvidertoを追加com.company.appfreeしてアクセス許可で保護します (アクセス許可保護レベルの署名を作成します。詳細については、http: //developer.android.com/guide/topics/manifest/permission-element. html )。これで、次の通信チャネルができました。

com.company.apppro (phone)<- ContentProvider-> com.company.appfree (phone)<- DataApi->com.company.appfree (wearable)

于 2015-01-24T18:36:25.167 に答える
0

私の知る限り、別のパッケージでアプリにデータを送信する方法はありません。さらに、含まれているアプリに同じパッケージがある場合にのみ、アプリがウェアラブル デバイスにインストールされるため、この場合、共通のウェアラブル パーツを含めることができるアプリは 1 つだけです。

2 つのアプリを 1 つのウォッチ アプリと通信するようにする唯一の方法は、ウォッチ アプリと対応するハンドヘルド部分を別のアプリとして実装することだと思います (このアプリとウォッチ アプリはパッケージ名を共有し、お互い)。スマートフォン上の他のアプリは、このアプリと通信してデータを時計に送信できます。この通信は、ブロードキャストまたはサービス バインディングを介して実装できます。したがって、次の構造になります。

  1. com.company.wearserviceおよび同じパッケージの対応する時計アプリ。
  2. com.company.app1com.company.app2データをcom.company.wearservice送信し、ウェアラブル パーツに送信します。
于 2015-01-24T16:24:28.597 に答える