2011年9月9日金曜日

AndroidでSocket通信を行うとPermission denied

Androidアプリケーションでsocketプログラミングを行う際、そのままだとconnect時にPermission deniedが発生して接続できません。
これを回避するためには、AndroidManifest.xmlにuses-permissionを追加すればOKです。

追加するコードは以下の通り

AndroidManifest.xmlを直接編集して追加すれば問題無いですが、折角なのでeclipseを利用した追加方法を紹介します。

[環境]
Mac OSX Version 10.6.8
Eclipse IDE for java Developers Version:Indigo Build id:20110615-0604

【eclipseでのuses-permission追加手順】

  • Package Explorer で AndroidManifest.xmlをダブルクリックして開きます。
  • Manifest編集画面が表示されるので、Permissionsタブを選択します。
  • Addボタンを押下すると、Permission追加用ダイアログが表示されるので、Uses Permissionを選択して OKを押下します。
  • Attributes for Uses Permission の Name に android.permission.INTERNET と入力します。(コンボボックスから選択してもOK)
  • 保存して、AndroidManifest.xmlタブを開いて、追加した uses-permission が表示されていれば終了です。