2013-05-22 7 views
15

答えが「不可能」になる可能性があることを恐れていますが、アップロードしたapkがPlayストアにあるかどうかを検出する方法があるかどうかを確認したいと思いますアルファ/ベータまたは安定したチャネル。Playストアのベータ版のアプリであるかどうかを検出する

安定したチャンネルに隠したいベータ機能を提供するメニュー全体があるので、これを達成したいと思います。

これは本当に便利です。私がStoreにプッシュする一般的なバグを修正している間は、ベータ版の有無にかかわらず再コンパイルしたくないからです。

私が共有する、残念ながら何のコードを持っていませんが、任意のヘルプや提案は非常に

enter image description here

+0

ちょっと明確にする - ベータ版としてデプロイするか、プロダクションにプッシュすると、1つのAPKに異なる機能が欲しいですか? – auval

+1

@uvalあなたは私の必要性を完全に理解しています.. –

+2

私はあなたが本当に意味することは、現在のユーザーがベータ版を起動したかどうかを検出する方法だと思います。私はこれがベータプロセスとデベロッパーコンソールが生産に同じAPKを継続的に押し進めるワークフローに役立つので、これが非常に役に立つと思います。だから、ベータ版のために別々のAPKを作ってはいけないのですが、生産現場であってもベータ版ユーザー専用の機能、数週間から数ヶ月のベータ版機能、あるいはこのデバッグメニューのような恒久的な機能これは、多くの新しいAPKリリースで生き残りました。 – mahemoff

答えて

0

アルファ/ベータ版がリリースされたばかりで、Googleはあなたが望むものは何も言及していませんでした。
このようなことがあった場合、その場所はおそらくGoogle Play Servicesでした。
これはありません。

可能な回避策 -
あなたが生産にベータから移動したい日付を知っていれば、あなたはこの小さなトリックを使用することができます:goneにデバッグメニューのデフォルトの可視性を設定し、その日まで、設定をそれはコードで可視になります。

+0

G + APIまたはGroups APIを利用して、現在のユーザーをアルファ/ベータユーザーのリストに対してテストできるかどうかは疑問です。 ソフトウェアが知っている限り、ベータユーザーは常にベータ版のアプリを入手します。 –

+0

@BrillPappin実現することは可能ですが、実装するのは簡単ではありません。また、OPの使用例は、ベータが終わってからずっとずっと、これらのチェックがすべてのユーザーに永遠に続くことを意味します。ネットワークを使用している場合は、WebサーバーまたはGCMでjsonファイルを使用する方が簡単です – auval

1

をいただければ幸いそれは本当に非常に単純ですが、別のAPKをアップロードします。ベータ版のベータ版の機能だけを使用して、別のブランチを維持します。再コンパイルは大きな面倒ではありません。 です。何らかの形式のソース管理を使用していますか?

+0

新しいGradleビルドシステムも見てみたいですね。このタイプのものには優れたサポートがいくつか用意されています。 – kcoppock

+0

別のAPKをアップロードするのは簡単ですが、ベータ版ユーザー専用の機能を「ダークローンチ」したい場合は非常に面倒です。また、ベータ版のユーザーは、アプリを宣伝してからベータ版を再配布する際に余分なリリースで叩かれることになります。 – mahemoff

+0

これは、ベータ版が生産に投入される可能性があるため、良い解決策ではありません。アルファ/ベータ展開のアイデアは、リリースする機能にアクセスするユーザーの数を増やすことです。クラウドソースのQAと考えてください。 –

1

これもやりやすい方法があることを願っていますが、まだ見つけられていません。

もう1つの選択肢として、ベータ機能をラップするフラグを設定してから、Googleタグマネージャーhttp://www.google.com/tagmanager/を使用して、アプリを本番環境にアップグレードする前にベータ版でのみ必要な機能をオフに切り替えることができます。

6

実際にこの機能に適しているような気がします。次のシナリオを検討し

  1. 私は独立したバージョンをインクリメントしますが、APIに依存しているモバイルアプリを持っているprod.api.example.com
  2. でバージョンをインクリメントAPIを持っています。
  3. 機能を追加または削除する前に、APIの開発者は異なるURLで変更を公開します。次のように言ってください:beta.api.example.com
  4. 私のアルファまたはベータテスト担当者は、APIのベータ版のURLに常に挑戦してほしいので、大きな変化が見られます。
  5. 新しいapiの変更がベータ版からリリースされたとき、モバイルアプリのバージョン番号を増やしたり、すべてが適切に機能していれば再構築しなくても、Androidアプリをアルファ版またはベータ版からプロモートしたいと思っています。
関連する問題