2016年2月12日金曜日

実機をマクロでボット化する方法

前回までに

Vysorを使ってスマホ端末をPC画面上に表示してGUIベースでBOT化したり
ADB接続を使ってCUIベースでのBOT化をしました。


Vysorを使ってBOT化した場合、ラグや画像の乱れなどがありちょっと難がありました。

ADB接続をつかったBOTの場合はもラグがあり、それらをクリアするためには
スマホ端末側にイベント受け口になるコマンドの配置が必要でした。



えと、今日はTeamViewerというツールを使っての操作です。
けっこう有名なソフトだと思いますが、なんとスマホの遠隔操作に対応していました。


やり方は
まず、PCに「TeamViewer」をインストールします。(無料版でOK)
次にスマホに
「QuickSupport」をインストールします。

これで準備完了。

あとは、PC側のTeamViewerから、スマホのQuickSupportに接続すれば
スマホを遠隔操作できます。
(※追記:2016/03/09 iphoneだと遠隔操作できません。Vennyなどを使ってスマホにVNCサーバを導入してください。)


PCにスマホの画面を表示して、操作する方法としては

これが一番簡単だと思いました。

USBケーブルもいらないし
ADBもJAVAもいらない
ROOT化もいらない

ADBを内部で使ってるツールによるリモート操作だとキックするレイヤがいまいち謎だったけどTeamViewerでの操作の場合、スマホ側からみるとハードウェアマクロになるのかな。

画面タップがハードウェア的に操作できるってことは
運営側からしたらBOTなのか人なのか見分けがつかないですよね。


ということで、実機をBOT化する場合はTeamViewerを使うことにしました。


仮想端末も実機端末もBOTマクロは同じソースでできるので、ほぼほぼ完結です。
あとは設定をしやすいように、BOTマクロ生成ツールを作っていきます。

マクロの雛形作成は完了で
次は、マクロ生成ツールの設計です。


追記:3月16日
TeamViewerのSDKについて、質問を投げてみたところ返信がもらえたので追記します。

このSDKを使って開発すればiphoneのリモート操作できますかという問いに対する返答は

「SDKを使えばTeamViewerからiPhoneのアプリ内(SDKをご利用して開発したアプリ)の遠隔操作が可能です。
完全なiPhoneの遠隔操作ではなく、そのアプリ内のみの遠隔操作になります。」

ということでした。アプリ内のみの遠隔操作だそうです・・、工夫できそうなのかな。
開発者の方ためしてみてください。

3 件のコメント:

  1. iPhoneにて遠隔操作をしようとしたのですがPCにスマホの画面が表示されません。
    接続はできるのですが・・・
    リモートコントロールが有料コンテンツだったり、何か特別な操作をしなければいけないものではありませんよね?
    環境はiPhone5c,iOS9.2.1,Windows10です。

    返信削除
  2. ブログに不適切な事を書いてしまい申し訳ありませんでした。
    調べてみたら、QuickSupportはiphoneのリモート操作まではできない仕様でした。

    iphoneの場合は脱獄をしてVNCサーバを入れるやり方があるようです。ただ、脱獄が必須です。
    参考URL(Veenyを使うやり方)
    http://rss.bonjin.jp/7065/
    他に良いVNCがあればよかったのですが見つかりませんでした。

    返信削除
  3. 返信ありがとうございます。
    やはりそうだったんですね…
    脱獄してないので別の方法を探してみます
    ありがとうございました!

    返信削除