[ Android ] 画面遷移後の画面でサーバから乱数を取得 (未完)
今回は画面遷移後の画面でHTTP通信を行うプログラムの実装を試みた。
java.net.SocketException: Socket failed: EPERM(Operation not permitted)
ボタン2を押下により画面3が呼び出し、onCreateで非同期処理を実行。
非同期処理クラスのonPostExcecuteでサーバから取得した乱数をTextViewに表示。
しかし、通信する際、
java.net.SocketException: Socket failed: EPERM(Operation not permitted)
というエラーが表示される。
調査結果
未だ解決方法はわかっていない。
調査では以下のような解決方法が示されていたが、
試してみたが、うまくいかなかった。
本実装の問題とは関係ないようである。
他の方はこれで解決できるかもしれないので、
参考にしていただきたい。
[解決方法]
・AndroidManifest.xmlに以下のコードを追加する。
<manifest>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</manifest>
まとめ
私の記事「サーバクライアント通信」に記載したコードでは
HTTP通信とサーバからの値取得はうまくいっていた。
今回と過去の記事での違いは
MainActivityから非同期処理を呼び出しているか、
画面遷移後の画面から呼び出しているかである。
ここに何かヒントがあるのか…
次回はこの問題を解決できるよう頑張りたい。
以上。
Author And Source
この問題について([ Android ] 画面遷移後の画面でサーバから乱数を取得 (未完)), 我々は、より多くの情報をここで見つけました https://qiita.com/QiitaD/items/c20669a609a48fc25f75著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .