是否可以通过Google Play开发者控制台为我自己的应用程序以编程方式获取应用安装数量?
当然,可以尝试以编程方式登录并发出一些Web请求,这将返回json,其中包含在网站上使用的统计信息以显示统计信息,但这对我来说似乎不可靠。
我找到了https://code.google.com/p/androidappstats/,但似乎有点过时了。
答案 0 :(得分:2)
查看GitHub上的Andlytics项目。它也是Google Play上提供的开源应用程序。您将在链接的GitHub页面上找到指向该链接的链接。
但是,对于Google Play商店中的某个特定应用,它不是(当前)。而是与您的开发者帐户连接,并获取有关使用该帐户发布的每个应用程序的信息。
话虽如此,因为它是开源的,我相信它可以调整以适合您的确切目的。
此处还有一个非官方的API:https://code.google.com/p/android-market-api/。但是,快速浏览消息来源表明,这不会再次/定期更新。
另一方面,Andlytics会定期更新(以适应对Google Play商店所做的任何更改)。
答案 1 :(得分:1)
有一个非官方的图书馆,可以在https://code.google.com/p/android-market-api/
找到答案 2 :(得分: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();