技術的メモ

個人的な備忘録として記録を残していきます

RSS Readerアプリ作成3日目

前回に引き続き下記の記事の通り作成していきたいと思います。
Androidで広がる、携帯アプリ開発の世界 - 第5回 RSSリーダーの要、パース機能を知る:ITpro

前回記事の通り入力したと思ったのになぜか起動はするけど何も起こらない状態になってしまいました(´・ω・`)

そこで、何がダメだったのか確認するためにLogCatを見てみることにします。

すると「java.lang.SecurityException: Permission denied (missing INTERNET permission?)」
のようにエラーが出ていました。

どうやらインターネットを利用する権限がないようです。
たしか、AndroidManifestに記載したはずだったのにと思って見てみると以下のようになっていました。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="jp.hatenadiary.amatuka.simplerssreader"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="8" />
    <uses-permission android:name="android.permission.INTERNET" android:maxSdkVersion="18"/>

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="jp.hatenadiary.amatuka.simplerssreader.RssReaderActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

該当の箇所は「」の部分ですがちゃんとしているように思います。

ただ、「android:maxSdkVersion="18"」の部分がどんな意味なのかわからなかったので調べてみるとどうやらこのアプリが動作する最大のAPIを指しているようです。

ということで、自分が利用しているエミュレータAPIレベルを確認してみたところ19になっていたのでAndroidManifestの方も19に合わせてみたところ無事に動作しました。
f:id:amatuka:20140118000513j:plain