1

私はいくつかの異なるクライアントのために開発されているアプリを持っています。アプリはクライアントごとにまったく同じになりますが、会社名、連絡先の詳細、ロゴのグラフィックが異なります。すべてのアプリはGooglePlayで利用できるようになります。

すべてのクライアントに変更を公開するためにコードを1回更新するだけで済むように、アプリを管理する方法はありますか?つまり、コードに変更を加えると、一度アップロードすれば、そこからすべてのアプリを更新できるようになりますか?

Playストアのアプリを基本的にスケルトンapkにして、適切なAPKをダウンロードしてインストールし、Webサービスから適切なカスタムデータを取得して、アプリケーションapkの更新バージョンのチェックをプログラムで処理できるようにしました。ここで確認できる唯一の問題は、ユーザーが不明なソースからのインストールを有効にする必要があることです。これは、クライアントには適していません。

これを達成する方法について他に何かアイデアはありますか?

4

3 に答える 3

3

1.) コンテナー アプリを作成し、カスタム ビットをオンラインでダウンロードしてプライベート ストレージに保存することにより、適切なクライアントに "プロビジョニング" します。たとえば、UI を定義する要素とロゴ グラフィックへの参照を含む XML ファイルをダウンロードし、実行時にそれらのアセットを適用できます。ワンアップしたい場合は、ダウンロードしたアセットから選択したクライアントに更新するランチャー ウィジェットを提供できます。

2.) Eclipse のライブラリ プロジェクトにコア機能を記述し、各クライアントのカスタム アプリケーション (さまざまなアセットと values.xml を使用) にそのライブラリを含めます。すべてのビジネス ロジックと UI の重要部分はクライアント間で共有されますが、前面のビットはカスタムになります。

はい、いくつかのパッケージを維持する必要があり、リリースは少し余分な作業になります。一方、これはコードを最大限に再利用できる非常にクリーンなアプローチです。

于 2012-11-13T07:31:03.713 に答える
0

個人的には、アプリと一緒にパッケージ化できる構成ファイルに基づいて、できるだけ多くのアプリケーションの外観を作成します。画像、ラベルなどはすべて実行時に決定できます。「構成」ファイルを出荷またはダウンロードする方法を見つける必要がありますが、ある時点 (インストール中) でユーザーが接続されます。

于 2012-11-13T09:10:21.080 に答える
-1

もちろん、これを行う 1 つの方法は、アプリを Web アプリとして開発することです。次に、コンテナ アプリに含める必要があるのは、アプリが属する会社の webview と詳細だけです。その後、Web サービスはすべての要求を処理できます。

この方法の問題は、Android UI ウィジェット セットへのアクセスが失われることです。また、私の知る限り、Web ビュー内のコードからデバイスの位置情報サービスなどの機能にアクセスすることはできませんか?

于 2012-11-13T07:29:27.393 に答える