微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – 以编程方式从Google Play下载应用程序

我需要从google play下载一些应用程序以进行分析.但我不想手动完成(我必须经常这样做,每次我想下载的应用程序都会改变!).

所以,问题是,我是否可以编写程序来下载应用程序.如果有可能,怎么样?

我看过这个chrome插件
http://codekiem.com/2012/02/24/apk-downloader/
但我不相信作者(该应用程序需要谷歌用户和通行证和设备ID)并决定实施我自己的程序.

解决方法:

对于那些正在寻找Java实现的人来说,这里是:

顶级步骤:

>从手机中收集Gmail密码,密码,Android id和安全令牌
>下载Akdeniz实现的爬虫的jar文件
>从Akdeniz下载googleplay.java(cli)的源文件
>修改googleplay.java
>把它们放在一起:D

详细步骤:

> Gmail ID和密码显而易见!对于Android id,请遵循demirozali并使用“getAndroidID”功能.我无法使“getAuthToken”工作!因此我使用toxicbakery获取安全令牌.请注意,应该在AsyncTask而不是UI线程上调用函数“updatetoken”(实际上为您提供安全性令牌).
>从Akdeniz github site下载“googleplaycrawler-0.1-SNAPSHOT.jar”文件.
>我无法在jar文件中使用“GooglePlayAPI”类.所以我决定更改CLI版本. “googleplaycrawler-0.1-SNAPSHOT.jar”中的CLI类称为“googleplay.java”,可以从the source files下载.
>将“googleplay.java”重命名为“Changed_googleplay.java”并进行修改.这样方法“searchCommand()”返回String的arrayList,而不是在控制台上打印结果.
>完成上述所有步骤后,在jetBrains或…中创建项目,并将“googleplaycrawler-0.1-SNAPSHOT.jar”添加为库.另外,将“Changed_googleplay.java”添加到您的src目录中.最后在您的应用程序中使用以下方法.您可以使用以下类搜索查询,然后下载与该查询对应的所有免费应用程序.

public void SearchAndDownload() {
    String login = "xxxx@gmail.com";
    String password = "xxxx";
    String androidId = "xxxx";
    String securitytoken = "xxxx";
    String command = "search";
    String query = "Maps";
    String offest = "0";
    String number = "5";

    Changed_googleplay gp = new Changed_googleplay();
    ArrayList<String> res = gp.operate(new String[]{"-i", androidId, "-e", login, "-p", password, "-t", securitytoken, command, "-o", offest, "-n", number, query});

    res.remove(0);
    if (command.equals("search")) {
        System.out.println("Title"+"\t"+"Package Name"+"\t"+"Price"+"\t"+"Number of Downloads");
        for (String line : res){
            String[] split = line.split(Changed_googleplay.DELIMETER);
            String name = split[0];
            String packageName = split[1];
            String creator = split[2];
            String price = split[3];
            String size = split[4];
            String dlNO = split[5];
            if(price.equals("Free")){
                System.out.println(name+"\t"+packageName+"\t"+price+"\t"+dlNO);
                gp.operate(new String[]{"-i", androidId, "-e", login, "-p", password, "-t", securitytoken, "download", packageName});
            }
        }
    }
}

您可能需要查看爬网程序项目main page中的命令行选项列表.

玩得开心!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐