2014-01-20 68 views
-1

我知道這個問題經常遇到,並且有很多帖子。然而,閱讀並嘗試每個答案後,我仍然有問題。 我的Samsung Galaxy Note 10.1沒有問題,但問題出現在我的SAMSUNG Galaxy ACE手機FROYO 2.2.1上,即使我從谷歌播放測試下載了相同的apk。android類的鏈接XXX在啓動應用程序時失敗

在啓動時,我立即發出警告,表示找不到活動類。 這似乎不好,它是...當啓動活動的應用程序停止。

此活動是我的項目的一部分,其他活動沒有問題。然而,其他3個活動也會導致相同的結果,它們都從不能鏈接的超類繼承。

這裏主要業務的代碼導致問題

// Set the listener 
     m_gridView.setOnItemClickListener(new OnItemClickListener() { 
      public void onItemClick(AdapterView<?> parent, View v, 
        int position, long id) 
      { 
       final Intent i = new Intent(getApplicationContext(), ScreenChoiceActivity.class); 
       i.putExtra(ScreenChoiceActivity.EXTRA_SCREEN_ID, m_screensIdList[position]); 

       startActivity(i); 
      } 
     }); 

我已經嘗試過:

  • 清理項目
  • 檢查所有的lib爲了出口
  • 更改順序的庫存
  • 使活動不抽象,因爲它是
  • 力的apk安裝在內部存儲器

我現在的想法

編輯: 的ScreenChoiceActivity登記在清單

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" 
    android:uiOptions="splitActionBarWhenNarrow" > 
    <activity 
     android:name="com.blueskycorner.thousandwords.MainActivity" 
     android:label="@string/app_name" 
     android:screenOrientation="landscape" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name="com.blueskycorner.thousandwords.ScreenChoiceActivity" 
     android:label="@string/title_activity_screen_choice" 
     android:parentActivityName="com.blueskycorner.thousandwords.MainActivity" 
     android:screenOrientation="landscape" > 
     <meta-data 
      android:name="android.support.PARENT_ACTIVITY" 
      android:value="com.blueskycorner.thousandwords.MainActivity" /> 
    </activity> 

.......

回答

0

最後我發現了這個問題。它在代碼本身內部。系統無法找到ScreenAdaptorActivity類,因爲它實現了OnLayoutChangeListener,它只能從API級別11獲得。 在清單中,minSdkVersion設置爲8,這對應於我的手機版本FROYO 2.2.1。但編譯時沒有警告...

希望它有幫助

0

最有可能您的活動未在AndroidManifest文件中註冊。尋找缺失的<activity>輸入或驗證android:name的值。

+0

你的意思是我必須註冊一個類到沒有實例化的清單?如果是這種情況,你能解釋我的Galaxy Note 10.1是如何找到它的?對不起,不給你類的層次結構,我不允許提供圖像。 –

相關問題