2011-07-17 12 views
6

まだ誰かがAndroid上の新しい互換性ライブラリのデモアプリケーションを試していますか? HereAndroid互換性ライブラリのエラー

私は、API 11にv4のビルドをしようとしていますし、私はSupport4Demoを試してみて、断片デモでタブとポケットベルをクリックしたとき、私はこのエラーを取得し続ける

e07-16 21:32:06.890: ERROR/AndroidRuntime(15315): java.lang.NoClassDefFoundError: com.example.android.supportv4.app.LoaderCustomSupport$AppListFragment 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at com.example.android.supportv4.app.FragmentTabs.onCreate(FragmentTabs.java:55) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1072) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1785) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1842) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at android.app.ActivityThread.access$1500(ActivityThread.java:132) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1038) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at android.os.Handler.dispatchMessage(Handler.java:99) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at android.os.Looper.loop(Looper.java:143) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at android.app.ActivityThread.main(ActivityThread.java:4263) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at java.lang.reflect.Method.invokeNative(Native Method) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at java.lang.reflect.Method.invoke(Method.java:507) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 07-16 21:32:06.890: ERROR/AndroidRuntime(15315): at dalvik.system.NativeStart.main(Native Method)

誰もがこれで私を助けることができます?

答えて

6

私はFragmentTab.onCreateとFragmentTabPager.onCreateの適切な行をコメントアウトすることでこの問題を解決しました。

//mTabManager.addTab(mTabHost.newTabSpec("custom").setIndicator("Custom"), 
//  LoaderCustomSupport.AppListFragment.class, null); 
+0

働いているページャ – SaKet

10

クラスを見つけることができない理由は、ハニカム(API 11+)に見出されるAppListFragment器具(OnQuerytextListener)はSearchViewで定義されているインタフェースの1つです。

public static class AppListFragment extends ListFragment implements OnQueryTextListener, LoaderManager.LoaderCallbacks<List<AppEntry>> 
{ 

私は互換性ジャーを通じて検索したが、私はこれが唯一のハニカム上で動作し、最大(ハニカムは、この作業を防ぐよりも低い目標でコンパイルすると仮定しSearchViewとは何かを見つけることができません。

その他の障害のカップルは、例えば、ローダのための同様の理由でもあります - >スロットルは、メニューを押し - 。欠落している方法を

Compatibility Packageページから

Warning: Be certain that you not confuse the standard android packages with those in android.support library. Some code completion tools might get this wrong, especially if you're building against recent versions of the platform. To be safe, keep your build target set to the same version as you have defined for your android:minSdkVersion and double check the import statements for classes that also exist in the support library, such as SimpleCursorAdapter

自分のアドバイスに従うと、プロジェクト全体がコンパイルできないことを意味します。例のクラスの半分はAPI 4よりも高いものに依存しているようです。

私の答えは?いくつかの例は悪く、存在しないコードに頼っています。運があれば、すぐにGoogleに更新されます。

ああ、一時的に、AppListFragmentからOnQueryTextListenerとメソッドを削除することで機能させることはできますが、後で別の問題で失敗します。

+0

これは正解です... klemzyのものは単なる醜い回避策です。 – Cristian

+0

@Cristian:実践的かつ理論的な解決策。私はstackoverflow.comを愛しています:) – Macarse

+1

これはhttp://code.google.com/p/android/issues/detail?id=18594でさらに詳しく解説されており、デモを "修正する"ための追加の手順については、 – dweebo

関連する問題