富贵资源网 Design By www.hznty.com
本文实例讲述了PHP实现自动登入google play下载app report的方法,有不错的实用价值。分享给大家供大家参考。具体实现步骤如下:
一、流程:
1.登入google play
登入google play需要三步:
https://play.google.com/apps/publish/
https://accounts.google.com/ServiceLogin"htmlcode">
<"daily_device_installs,current_device_installs,daily_user_installs,total_user_installs,current_user_installs,daily_device_uninstalls,daily_user_uninstalls,daily_device_upgrades"; // google modify 2013-08-06 // login google play $this->loginAuth($this->username, $this->password); // download report zip return $this->downloadReport($package, $sd, $ed, $dim, $met, $this->dev_acc, $downloadFile); } /* login google play,create cookies * @param String $username * @param String $password * @return boolean */ private function loginAuth($username, $password){ // step1 $mainUrl = "https://play.google.com/apps/publish/"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $mainUrl); curl_setopt($ch, CURLOPT_COOKIEJAR, GOOGLE_PLAY_COOKIE_FILE); curl_setopt($ch, CURLOPT_COOKIEFILE, GOOGLE_PLAY_COOKIE_FILE); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_exec($ch); curl_close($ch); // step 2 $serviceLoginUrl = "https://accounts.google.com/ServiceLogin".$mainUrl; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $serviceLoginUrl); curl_setopt($ch, CURLOPT_COOKIEJAR, GOOGLE_PLAY_COOKIE_FILE); curl_setopt($ch, CURLOPT_COOKIEFILE, GOOGLE_PLAY_COOKIE_FILE); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $serviceLoginRespHtml = curl_exec($ch); curl_close($ch); preg_match('/name="dsh"\s*id="dsh"\s*value="(.*"\s*/i', $serviceLoginRespHtml, $matches); // get dsh $dsh = $matches[1]; preg_match('/name="GALX"\s*value="(.*"\s*/i', $serviceLoginRespHtml, $matches); // get GALX $galx = $matches[1]; // step 3 $loginGoogleUrl = "https://accounts.google.com/ServiceLoginAuth"; $postFields = "Referer=".$serviceLoginUrl; $postFields .= "&AllowAutoRedirect=false"; $postFields .= "&continue=".$mainUrl; $postFields .= "&dsh=".$dsh; $postFields .= "&h1=en"; $postFields .= "&GALX=".$galx; $postFields .= "&Email=".$username; $postFields .= "&Passwd=".$password; $postFields .= "&signIn=Sign+in"; $postFields .= "&PersistentCookie=yes"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $loginGoogleUrl); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields); curl_setopt($ch, CURLOPT_COOKIEJAR, GOOGLE_PLAY_COOKIE_FILE); curl_setopt($ch, CURLOPT_COOKIEFILE, GOOGLE_PLAY_COOKIE_FILE); curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_exec($ch); curl_close($ch); // login cookies create success return true; } // download Report zip file private function downloadReport($package, $sd, $ed, $dim, $met, $dev_acc, $downloadFile) { $url = "https://play.google.com/apps/publish/statistics/download"; $fp = fopen($downloadFile,"w"); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FILE, $fp); curl_setopt($ch, CURLOPT_COOKIEFILE, GOOGLE_PLAY_COOKIE_FILE); curl_exec($ch); curl_close($ch); fclose($fp); if (file_exists($downloadFile)){ return true; } return false; } /* unzip report * @param String $path 解压的路径 * @param String $downloadFile zip file */ public function unzipReport($path, $downloadFile){ $exec = "unzip ".$downloadFile. " -d ".$path; shell_exec($exec); unlink($downloadFile); // delete zip file } } // demo $username = 'testdev@gmail.com'; $password = 'abcd1234'; $dev_acc = '12345678901234567890'; $appname = 'com.testdev'; $sd = '20130417'; $ed = '20130417'; $downloadFile = 'testdev.zip'; $unzipPath = ROOT_PATH.'/testdev/'; $obj = new AndroidReportDownLoader($username, $password, $dev_acc); if($obj->run($appname, $sd, $ed, $downloadFile)){ $obj->unzipReport($unzipPath, $downloadFile); } ?>
相信本文所述对大家的PHP程序设计有一定的借鉴价值。
富贵资源网 Design By www.hznty.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
富贵资源网 Design By www.hznty.com
暂无评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。