一切任何活動編譯罰款,但在運行時的任何活動擴展AppCompatActivity - 類未找到擴展AppCompatActivity
MainActivity extends android.support.v7.app.AppCompatActivity
這項活動不能在運行時被發現。找不到MainActivity。它沒有說沒有找到AppCompatActivity
非常奇怪。我從未在5年的Android編程中無法在運行時找到Activity的類嗎?怎麼會這樣?
找到所有其他不會擴展AppCompatActivity的活動。這裏發生了什麼?
10-28 16:27:09.289: E/AndroidRuntime(12471): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.mycomp.locker/com.mycomp.locker.MainActivity}: java.lang.ClassNotFoundException: com.mycomp.locker.MainActivity
因此對於MainActivity來說是非常重要的。如果我離開MainActivity定期的活動,則它將啓動,但崩潰我試圖爲擴展AppCompatActivity該活動創建一個意圖的時刻:這裏
Intent i = new Intent(MainActivity.class, CompatExtendingActivity.class);
///崩潰一樣。
這是一個Maven構建,Maven的SDK部署後...
<dependencies>
<dependency>
<groupId>android.support</groupId>
<artifactId>compatibility-v7-appcompat</artifactId>
<version>23.1.0</version>
<type>apklib</type>
</dependency>
<dependency>
<groupId>android.support</groupId>
<artifactId>compatibility-v7-appcompat</artifactId>
<version>23.1.0</version>
<scope>compile</scope>
<type>jar</type>
</dependency>
<dependency>
<groupId>android.support</groupId>
<artifactId>compatibility-v4</artifactId>
<version>23.1.0</version>
<scope>provided</scope>
<type>jar</type>
</dependency>
<dependency>
<groupId>android</groupId>
<artifactId>android</artifactId>
<version>6.0_r1</version>
<scope>provided</scope>
</dependency>
<dependency>
現在我爲什麼要使用AppCompatActivity呢?因爲我想使用一個小部件SwitchCompat。當我在一個普通的活動中使用這個組件我得到了另一個錯誤,它找不到:
android.support.v7.internal.widget.TintManager$ColorFilterLruCache
所以我退出了使用定期活動。查看compat-v7的jar文件,但是我確實看到了這個類。我已經嘗試過在maven中編譯和提供選項,但都沒有什麼不同。
Android的清單:
package="com.mycomp.locker"
<activity
android:name=".MainActivity"
我這裏什麼也沒有改變。我所做的只是你更改後MainActivity擴展AppCompatActivity
發佈您的構建。gradle – Blackbelt
發佈您的錯誤日誌 –
可以用** Ctrl ** + **點擊**打開你的'MainActivity'?這是爲了確保它鏈接到正確的文件。 – Sufian