自主開發亞馬遜,facebook一機一號雲控系統源碼,及技術展現
阿新 • • 發佈:2018-08-08
final uptime hup smi 通知 mov 演變 亞馬遜 android
$target->set_clientId($v);
// $target1->set_alias(Alias);
$targetList[$k] = $target; }
long mDownTime;
public boolean touchDown(int x,int y)
{
mDownTime = SystemClock.uptimeMillis();
MotionEvent downEvent = getMotionEvent(mDownTime, mDownTime, MotionEvent.ACTION_DOWN, x, y);
return uiAutomation.injectInputEvent(downEvent,true);
}
public boolean touchUp(int x,int y)
{
final long eventTime = SystemClock.uptimeMillis();
MotionEvent upEvent = getMotionEvent(mDownTime, eventTime, MotionEvent.ACTION_UP, x, y);
return uiAutomation.injectInputEvent(upEvent,true);
}
public boolean touchMove(int x,int y)
{
final long eventTime = SystemClock.uptimeMillis();
MotionEvent moveEvent = getMotionEvent(mDownTime, eventTime, MotionEvent.ACTION_MOVE, x, y);
return uiAutomation.injectInputEvent(moveEvent,true);
}
亞馬遜,facebook雲控系統是從微信雲控系統的基礎上演變而來的, 完全一機一號和真實手機環境。英文系統語言,美國ip。完全真實的亞馬遜賬號環境和facebook賬號環境。全自動化批量控制亞馬遜,facebook等系統。一部手機,一個amazon賬號,一個facebook賬號,共用同一個ip節約軟件和硬件成本。
雲控系統的核心實現是後臺服務器下發命令,手機端接收命令去執行相應的操作。其中下發命令主要使用到的技術原理是第三方的推送服務,我們主要使用的是個推,服務器源代碼為:
// 1.TransmissionTemplate:透傳功能模板
// 2.LinkTemplate:通知打開鏈接功能模板
// 3.NotificationTemplate:通知透傳功能模板
// 4.NotyPopLoadTemplate:通知彈框下載功能模板
// var_dump("ssssssssssss");
//$template = IGtNotyPopLoadTemplateDemo();
//$template = IGtLinkTemplateDemo();
//$template = IGtNotificationTemplateDemo();
$template = $this->IGtTransmissionTemplateDemo($cmd);
//個推信息體
$message = new \IGtListMessage();
$message->set_isOffline(true);//是否離線
$message->set_offlineExpireTime(3600 * 12 * 1000);//離線時間
$message->set_data($template);//設置推送消息類型
// $message->set_PushNetWorkType(1); //設置是否根據WIFI推送消息,1為wifi推送,0為不限制推送
// $contentId = $igt->getContentId($message);
$contentId = $igt->getContentId($message,"toList任務別名功能"); //根據TaskId設置組名,支持下劃線,中文,英文,數字
foreach ($idsArr as $k=>$v) {
$target = new \IGtTarget();
$target->set_appId(APPID);
// $target1->set_alias(Alias);
$targetList[$k] = $target;
手機端執行主要用到的是自動化操作,在Android端我們用到的自動化測試框架為uiautomator,部分源代碼為:
public void doubleClick(int x,int y)
{
publicVariable();
touchDown( x, y);
//SystemClock.sleep(100);
touchUp( x, y);
touchDown( x, y);
//SystemClock.sleep(100);
touchUp( x, y);
long mDownTime;
public boolean touchDown(int x,int y)
{
mDownTime = SystemClock.uptimeMillis();
MotionEvent downEvent = getMotionEvent(mDownTime, mDownTime, MotionEvent.ACTION_DOWN, x, y);
return uiAutomation.injectInputEvent(downEvent,true);
}
public boolean touchUp(int x,int y)
{
final long eventTime = SystemClock.uptimeMillis();
MotionEvent upEvent = getMotionEvent(mDownTime, eventTime, MotionEvent.ACTION_UP, x, y);
return uiAutomation.injectInputEvent(upEvent,true);
}
public boolean touchMove(int x,int y)
{
final long eventTime = SystemClock.uptimeMillis();
MotionEvent moveEvent = getMotionEvent(mDownTime, eventTime, MotionEvent.ACTION_MOVE, x, y);
return uiAutomation.injectInputEvent(moveEvent,true);
}
在整個實現過程中,其中ip問題的解決有幾種方式,一種是通過Android手機自帶pptp的形式連接,一種是通過第三方軟件***的形式連接。我們使用的是***進行ip的鏈接。其中***的ip鏈接,ip相關信息的輸入。都可以在後臺完成。
自主開發亞馬遜,facebook一機一號雲控系統源碼,及技術展現