2013-04-24 138 views
1

我在测试应用程序中构建了我的应用程序的一些元素,并且已将这些元素复制到我的主应用程序中,但是当我运行它时,应用程序弹出。Android应用程序错误

我有一种感觉,我的Manifest存在一个问题,但我无法确切地指出它。这是我的清单: -

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="police.uk.greatermanchesterpoliceandroid" 
android:versionCode="1" 
android:versionName="1.0"> 


<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/CustomTheme"> 
    <activity 
     android:name=".MainActivity" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 
    <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

    <activity android:name=".CustomizedListView" 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=".DetailsActivity" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 
    <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

     <activity 
     android:name=".FileCache" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 
    <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

     <activity 
     android:name=".ImageLoader" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 
    <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

     <activity 
     android:name=".LazyAdapter" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 
    <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

     <activity 
     android:name=".MemoryCache" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 
    <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

      <activity 
     android:name=".Utils" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 
    <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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



      <activity 
     android:name=".XMLParser" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 
    <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

    <activity 
     android:name=".ac2" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 
    <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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


    <meta-data 
android:name="com.google.android.maps.v2.API_KEY" 
android:value="AIzaSyAioYkrj1Wl44z2LQvTCOw6GXPXdTroGng"/>  

</application> 

<permission 
android:name="com.example.mapdemo.permission.MAPS_RECEIVE" 
android:protectionLevel="signature" /> 
<uses-permission android:name="com.example.mapdemo.permission.MAPS_RECEIVE"/> 

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 

<uses-feature 
android:glEsVersion="0x00020000" 
android:required="true"/> 

<uses-sdk android:minSdkVersion="11" /> 

任何人都可以看到的问题吗?

这条线我的logcat让我担心: -

04-24 11:42:16.769: D/dalvikvm(18849): Late-enabling CheckJNI 
04-24 11:42:16.794: I/dalvikvm(18849): Turning on JNI app bug workarounds for target SDK version 11... 
04-24 11:42:16.799: E/jdwp(18849): Failed sending reply to debugger: Broken pipe 
04-24 11:42:16.799: D/dalvikvm(18849): Debugger has detached; object registry had 1 entries 
04-24 11:42:16.904: D/AbsListView(18849): Get MotionRecognitionManager 
04-24 11:42:16.914: D/AndroidRuntime(18849): Shutting down VM 
04-24 11:42:16.914: W/dalvikvm(18849): threadid=1: thread exiting with uncaught exception (group=0x41b082a0) 
04-24 11:42:16.914: E/AndroidRuntime(18849): FATAL EXCEPTION: main 
04-24 11:42:16.914: E/AndroidRuntime(18849): java.lang.RuntimeException: Unable to start activity ComponentInfo{police.uk.greatermanchesterpoliceandroid/police.uk.greatermanchesterpoliceandroid.CustomizedListView}: android.os.NetworkOnMainThreadException 
04-24 11:42:16.914: E/AndroidRuntime(18849): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2100) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2125) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at android.app.ActivityThread.access$600(ActivityThread.java:140) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1227) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at android.os.Handler.dispatchMessage(Handler.java:99) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at android.os.Looper.loop(Looper.java:137) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at android.app.ActivityThread.main(ActivityThread.java:4898) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at java.lang.reflect.Method.invokeNative(Native Method) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at java.lang.reflect.Method.invoke(Method.java:511) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1008) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:775) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at dalvik.system.NativeStart.main(Native Method) 
04-24 11:42:16.914: E/AndroidRuntime(18849): Caused by: android.os.NetworkOnMainThreadException 
04-24 11:42:16.914: E/AndroidRuntime(18849): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1118) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at java.net.InetAddress.lookupHostByName(InetAddress.java:385) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at java.net.InetAddress.getAllByName(InetAddress.java:214) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:137) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:670) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:509) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at police.uk.greatermanchesterpoliceandroid.XMLParser.getXmlFromUrl(XMLParser.java:45) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at police.uk.greatermanchesterpoliceandroid.CustomizedListView.onCreate(CustomizedListView.java:47) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at android.app.Activity.performCreate(Activity.java:5206) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 
04-24 11:42:16.914: E/AndroidRuntime(18849): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2064) 
04-24 11:42:16.914: E/AndroidRuntime(18849): ... 11 more 
+0

你可以张贴logcat的输出? – AlexVogel 2013-04-24 09:59:01

+0

我们不玩皮和se木...请把你的日志在这里.. – 2013-04-24 10:01:43

+0

发布整个logcat输出,这是不够的。 – caiocpricci2 2013-04-24 10:32:47

回答

0

您正在使用

<intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 

的每个活动。请删除除开始时应首先调用的活动以外的此代码。

欲了解更多信息,请阅读here

更新:

你有这个问题:

Caused by: android.os.NetworkOnMainThreadException 
    at police.uk.greatermanchesterpoliceandroid.XMLParser.getXmlFromUrl(XMLParser.java:45) 
    at police.uk.greatermanchesterpoliceandroid.CustomizedListView.onCreate(CustomizedListView.java:47) 

请XMLParser的或CustomizedListView检查你的代码和移动网络运营成后台线程。最好的方法是AsyncTask

0

在你的权限变化从

<permission 
android:name="com.example.mapdemo.permission.MAPS_RECEIVE" 
android:protectionLevel="signature" /> 
<uses-permission android:name="com.example.mapdemo.permission.MAPS_RECEIVE"/> 

<permission 
    android:name="police.uk.greatermanchesterpoliceandroid.permission.MAPS_RECEIVE" 
    android:protectionLevel="signature" /> 
<uses-permission android:name="police.uk.greatermanchesterpoliceandroid.permission.MAPS_RECEIVE"/> 

我只是改变了包名

0

您把更多然后一个<intent-filter> </intent-filter>意味着它的起点了你的应用程序,它只能包含一个活动,并且您已将其放入每个活动中。这是一个错误。把<intent-filter> </intent-filter>要从哪里开始你的Android活动..希望这有助于

让我让你的工作变得容易,,, :)

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="police.uk.greatermanchesterpoliceandroid" 
android:versionCode="1" 
android:versionName="1.0"> 


<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/CustomTheme"> 
    <activity 
     android:name=".MainActivity" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 
    <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

    <activity android:name=".CustomizedListView" android:label="@string/app_name"> 

    </activity> 

    <activity 
     android:name=".DetailsActivity" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 

     </activity> 

     <activity 
     android:name=".FileCache" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 

     </activity> 

     <activity 
     android:name=".ImageLoader" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 

     </activity> 

     <activity 
     android:name=".LazyAdapter" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 

     </activity> 

     <activity 
     android:name=".MemoryCache" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 

     </activity> 

      <activity 
     android:name=".Utils" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 

     </activity> 



      <activity 
     android:name=".XMLParser" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 

     </activity> 

    <activity 
     android:name=".ac2" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait"> 

     </activity> 


    <meta-data 
android:name="com.google.android.maps.v2.API_KEY" 
android:value="AIzaSyAioYkrj1Wl44z2LQvTCOw6GXPXdTroGng"/>  

</application> 

<permission 
android:name="com.example.mapdemo.permission.MAPS_RECEIVE" 
android:protectionLevel="signature" /> 
<uses-permission android:name="com.example.mapdemo.permission.MAPS_RECEIVE"/> 

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 

<uses-feature 
android:glEsVersion="0x00020000" 
android:required="true"/> 

<uses-sdk android:minSdkVersion="11" /> 
+0

我已经删除了所有其他的,但是问题依然存在。这是我的LogCat: - 04-24 11:11:39.130:E/AndroidRuntime(12561):致命异常:主 04-24 11:11:39.130:E/AndroidRuntime(12561):java.lang。RuntimeException:无法启动活动ComponentInfo {police.uk.greatermanchesterpoliceandroid/police.uk.greatermanchesterpoliceandroid.CustomizedListView}:android.os.NetworkOnMainThreadException – 2013-04-24 10:21:49

1

此错误指出你正在尝试做网络在您的活动主线程上进行操作。不建议使用它,因为您只有5秒的时间来响应交互befeore,您将得到ApplicationNotResponding异常。

请考虑移动网络操作后台线程例如,通过服务或AsyncTask