2017-07-17 9 views
0

私はインターネットからのTCP接続を受け入れるためにAndroidアプリを書こうとしています。シンプルに聞こえますが、何週間も頭が鳴っているにもかかわらず、私は解決策を見つけず、今は不可能だと信じています。私は誰かに私が間違っていると言ってもらいたいです。インターネットからAndroid TCPサーバーアプリケーションに接続する(ルーターなし):不可能ですか?

「ServerSocket()」API関数を使用することをお勧めします。待機中のソケット(ポート2000など)を作成し、デバイス内の別のアプリから接続することができました。残念ながら、私はそれがインターネットからは見えない(unrouteable)ローカルアドレス10.0.0.150にバインドされていることがわかります。

自分のデバイスをローカルのWIFIルータに接続し、ルータの「ポート転送」機能を使用して、MyPublicIp:2000〜10.0.0.150:2000への着信接続を中継することで、正常に接続できました。しかし、これは私がルータを持っていない分野(LTE接続以上)では使えません。

私はStackOverflowや他のサイトを検索しましたが、良い答えは見つかりませんでした(しかし、適用できないものや鈍いものがたくさんあります)。

私の読んだところ、ほとんどの(すべての)キャリアは、着信接続をユーザーデバイスにルーティングすることができないと聞きましたが、これは私のジレンマを説明するかもしれません。

お願い:誰かが私に間違っていると教えてください。

答えて

0

と思います。 私のモバイルオペレーター(モバイルプロバイダー)に関する情報を見る:静的IPアドレスを提供することができ、モバイルデバイスは着信セッションで利用可能ですが、このサービスの支払いのみが必要です。

+0

私のデバイスのIPアドレスを取得することは、この問題のほんの一部です。私はデバイスの公衆(DHCP)IPアドレスをさまざまな方法で見つけることができますが、私の質問のように問題が原因で接続できません。どのキャリアを使用していますか? – DontPanic

関連する問題