Adobe Shadow をガッチガチのネットワーク管理下で使うとき

勤務先は検証用スマホがいるネットワークと開発用 PC のいるネットワークは完全にセグメントが違い、全く何番のポートも通らない。

Adobe Shadow のリモートインスペクト機能である weinre 自体は、どちらからも順向きにアクセスできる別のセグメントのあるサーバを利用しているので、何とかなるのだが、やはりしっかりお化粧された Adobe Shadow を使いたいので、社内ネットワークを管理する方にいろいろわがままを聞いてもらって、なんとか使えるところまで来た。

やることは2つ。

  • PC <> スマホ間のTCP 7682 番ポートを開ける。ちなみに全ての TCP コネクションはスマホ側から始まる(ようだ)が、両方向開けておくのが無難。
  • スマホからインターネットへのTCP 8080 番ポートを開ける。これは weinre に必要。
  • スマホから、 PC のホスト名が解決できるようにしておく?。違うかな。(一回目の疎通開始時に IP 直打ちでスマホ <> PC をペアリングしても、その後スマホアプリ側は延々ホスト名で PC にアクセスに行くという謎仕様のため、らしい、社内ネットワーク管理の方曰く!)。ちょっとよく分かってない!。 mDNS があることを前提にしているからかなあ。そして、社内ネットワーク管理の人はこれをどうやって解決したのかなあ。ネットワークは難しいなあ。

できないこと・注意事項

  • Bonjourマルチキャストなので、スマホから PC のオートディスカバリは無理。これは諦める。スマホ側アプリから IP を直打ちできるし、一回疎通すると PC の IP が変わらない限りアプリに残るのでそれほど使い勝手は損なわれない。
  • Adobe が用意してくれている weinre サーバ( debug.shadow.adobe.com:8080 )はよく落ちる。 http://forums.adobe.com/thread/972575 なのでリモートインスペクションが使えなくても諦める気持ちが必要。まだアルファです。ちなみにこの weinre サーバはいずれ自前で立てたサーバに向ける設定が可能になると Adobe は言っています。
  • いずれ有料化する。 Creative Suite に入れこまれたらコストに見合わないかもしれない。
  • Windows XP 非対応。
  • 社内の開発環境サーバのホスト名など、あまり外に出して嬉しくないものが weinre のサーバに出ていく。 Adobe しか見られないようになっているが厳しい会社だと厳しいかも。