1

自分のアプリの Google Play デベロッパー コンソールからアプリ インストール数をプログラムで取得することはできますか?

もちろん、プログラムでログインを試み、サイト自体で統計を表示するために使用される統計を含む json を返す Web リクエストを作成することは可能ですが、これは私にとって信頼できるものではないようです。

https://code.google.com/p/androidappstats/を見つけましたが、少し古いようです。

4

3 に答える 3

2

GitHubのAndlyticsプロジェクトを見てください。これは、Google Play でも利用できるオープン ソース アプリケーションです。リンク先の GitHub ページにそのリンクがあります。

ただし、(現時点では) Google Play ストアの特定のアプリケーション向けではありません。むしろ、開発者アカウントに接続し、同じものを使用して公開されたすべてのアプリケーションに関する情報を取得します。

そうは言っても、それはオープンソースであるため、正確な目的に合わせて微調整できると確信しています.

ここには非公式の API もあります: https://code.google.com/p/android-market-api/。しかし、ソースをざっと見てみると、これはもう/定期的に更新されていないことがわかります。

一方、Andlytics は定期的に更新されます (Google Play ストアに加えられた変更に対応するため)。

于 2013-03-20T12:02:06.873 に答える
1

これには非公式のライブラリがあり、https://code.google.com/p/android-market-api/にあります。

于 2013-03-20T11:57:58.787 に答える
1

さて、私は次の解決策を選択しました。私は .NET プログラマーなので、Java ライブラリを使用するのは簡単ではなく、C# に書き直す十分な時間も意志もありません。

Steven Sanderson のブログで、ヘッドレス ブラウザーの自動化に関する記事を見つけました ( http://blog.stevensanderson.com/2010/03/30/using-htmlunit-on-net-for-headless-browser-automation/ ) 。

ここに私が書いたコードがあります:

WebClient _webClient = new WebClient( BrowserVersion.FIREFOX_17 );
_webClient.getOptions().setUseInsecureSSL( true );
_webClient.getOptions().setThrowExceptionOnScriptError( false );
_webClient.getOptions().setRedirectEnabled( true );

var page = (HtmlPage)_webClient.getPage( "https://play.google.com/apps/publish/v2/" );

HtmlInput emailElement = (HtmlTextInput)page.getElementById( "Email" );
emailElement.type( Settings.Default.Login );

HtmlInput passwordElement = (HtmlInput)page.getElementById( "Passwd" );
passwordElement.type( Settings.Default.Password );

HtmlSubmitInput signInLink = (HtmlSubmitInput)page.getElementById( "signIn" );
HtmlPage page2 = (HtmlPage)signInLink.click();

_webClient.waitForBackgroundJavaScript( 2000 );

var installsNode = ( from p in page2.getElementsByTagName( "p" ).toArray().Cast<HtmlParagraph>()
                     let data_column = p.getAttribute( "data-column" )
             where data_column != null && "INSTALLS".Equals( data_column, StringComparison.OrdinalIgnoreCase )
             select p ).FirstOrDefault();
于 2013-03-21T12:29:05.743 に答える