自主开发亚马逊,facebook一机一号云控系统源码,及技术展现

亚马逊,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);
$target->set_clientId($v);
// $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相关信息的输入。都可以在后台完成。

猜你喜欢

转载自blog.51cto.com/13912601/2155929