2017-06-05 90 views
-3

當我啓動應用程序時,它會強制關閉活動無法投射到android.app.Application

這是logcat的

java.lang.RuntimeException: Unable to instantiate application com.blocktrekacademy.officialblocktrek.Authentication: java.lang.ClassCastException: com.blocktrekacademy.officialblocktrek.Authentication cannot be cast to android.app.Application 

[修訂]:這是我的AndroidManifest.xml中

... 
    <application 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:roundIcon="@mipmap/ic_launcher_round" 
     android:supportsRtl="true" 
     android:theme="@style/AppTheme"> 
     <activity 
      android:name=".Authentication" 
      android:label="@string/title_activity_authentication" 
      android:screenOrientation="portrait" 
      android:theme="@style/AppTheme.NoActionBar"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

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

這是我Authentication.java

package com.blocktrekacademy.officialblocktrek; 

import ... 

public class Authentication extends AppCompatActivity { 
    ... 
+0

那麼'com.blocktrekacademy.officialblocktrek.Authentication'的聲明是什麼樣的? –

+0

'com.blocktrekacademy.officialblocktrek.Authentication'擴展了'Application'嗎? –

+0

它擴展了AppCompatActivity – Axis

回答

0

首先,刪除標記中的android:name=".Authentication"屬性。

您的Authentication類是Activity,而不是Application。所以,你必須將其聲明爲這樣:

<application> 

    ... 

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

</application> 

intent-filter聲明活動爲「主」的活動,所以它會在您的應用程序開始啓動。

+0

現在拋出什麼錯誤? –

+0

嗯,我刪除了android:名稱,它拋出我'java.lang.RuntimeException:無法啓動活動ComponentInfo {com.blocktrekacademy.officialblocktrek/com.blocktrekacademy.officialblocktrek.Authentication}:android.content.ActivityNotFoundException:無法找到顯式activity class {/com.blocktrekacademy.officialblocktrek.Mainpage};你有沒有在你的AndroidManifest.xml中聲明這個活動?' – Axis

+0

什麼是com.blocktrekacademy.officialblocktrek.Mainpage? –

相關問題