I'm trying to run an application that I typed in by following my textbook (Android Bootcamp 2nd ed, ch. 9). There don't seem to be any errors. But when I compile, I first get the normal info report that eclipse compiles, asks for my device, installs and starts. But then that ActivityManager stuff comes up. The application doesn't start, and the phone says it's not isntalled. What kind of error should I look for?
[2014-06-17 15:31:59 - BikeBarge] ------------------------------
[2014-06-17 15:31:59 - BikeBarge] Android Launch!
[2014-06-17 15:31:59 - BikeBarge] adb is running normally.
[2014-06-17 15:31:59 - BikeBarge] Performing com.example.bikebarge.ItemListActivity activity launch
[2014-06-17 15:32:00 - BikeBarge] Automatic Target Mode: Unable to detect device compatibility. Please select a target device.
[2014-06-17 15:32:02 - BikeBarge] Uploading BikeBarge.apk onto device 'A00000415861A1'
[2014-06-17 15:32:02 - BikeBarge] Installing BikeBarge.apk...
[2014-06-17 15:32:06 - BikeBarge] Success!
[2014-06-17 15:32:06 - BikeBarge] Starting activity com.example.bikebarge.ItemListActivity on device A00000415861A1
[2014-06-17 15:32:06 - BikeBarge] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.example.bikebarge/.ItemListActivity }
[2014-06-17 15:32:06 - BikeBarge] ActivityManager: java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.example.bikebarge/.ItemListActivity } from null (pid=20767, uid=2000) requires android.permission.INTERNET
[2014-06-17 15:32:06 - BikeBarge] ActivityManager: at android.os.Parcel.readException(Parcel.java:1327)
[2014-06-17 15:32:06 - BikeBarge] ActivityManager: at android.os.Parcel.readException(Parcel.java:1281)
[2014-06-17 15:32:06 - BikeBarge] ActivityManager: at android.app.ActivityManagerProxy.startActivity(ActivityManagerNative.java:1631)
[2014-06-17 15:32:06 - BikeBarge] ActivityManager: at com.android.commands.am.Am.runStart(Am.java:433)
[2014-06-17 15:32:06 - BikeBarge] ActivityManager: at com.android.commands.am.Am.run(Am.java:107)
[2014-06-17 15:32:06 - BikeBarge] ActivityManager: at com.android.commands.am.Am.main(Am.java:80)
[2014-06-17 15:32:06 - BikeBarge] ActivityManager: at com.android.internal.os.RuntimeInit.finishInit(Native Method)
[2014-06-17 15:32:06 - BikeBarge] ActivityManager: at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:238)
[2014-06-17 15:32:06 - BikeBarge] ActivityManager: at dalvik.system.NativeStart.main(Native Method)
BikeBargeManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.bikebarge"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:permission="android.permission.INTERNET">
<activity
android:name="com.example.bikebarge.ItemListActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.example.bikebarge.ItemDetailActivity"
android:label="@string/title_item_detail"
android:parentActivityName="com.example.bikebarge.ItemListActivity" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.bikebarge.ItemListActivity" />
</activity>
</application>
</manifest>
You need to allow Internet permission to your app. Add this line to your manifest:
<uses-permission android:name="android.permission.INTERNET" />