Intereting Posts
API Android для взаимодействия между устройствами Java.lang.SecurityException: не разрешено привязываться к сервису Intent (голосовая диктовка HTC) Различие между понятиями Ежедневное повторное уведомление Android в определенное время суток с помощью AlarmManager Экзистенциальное приложение взлетает с Android 3.0 XOOM. ZoomButtonsController Leak? Полезно ли использовать весь макет WebView в собственном приложении для Android? Использовать RxAndroid или RxKotlin при программировании в Kotlin для Android? Как сразу же запускать предложения в поисковой системе Android до того, как пользователь даже начал вводить текст Как читать данные из файла .db.crypt? Создание исполняемого файла android ffmpeg Как получить ключ API Google Адресов для моего приложения для Android Требовать разрешения только для старых версий Android: maxSdkVersion не работает? Как служба может прослушивать жесты / события касания? Отправьте массив String через тело запроса в веб-службу, используя Retrofit URL нового окна Android WebView

Раздувание фрагментов с пакетом совместимости

Я пытаюсь раздуть макет, содержащий Fragment используя пакет обратной совместимости. Я взял файл jar и поместил его в папку libs моего проекта. Я расширил фрагмент, а затем попытался раздуть его, установив contentView для Activity

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <fragment class="com.test.fragments.AdFragment" android:layout_width="fill_parent" android:layout_height="wrap_content"/></LinearLayout> 

Но когда я устанавливаю представление содержимого, он терпит неудачу с ClassNotFoundException для тега фрагмента. Вот вывод logcat.

 java.lang.RuntimeException: Unable to start activity ComponentInfo{}: \ android.view.InflateException: Binary XML file line #51: \ Error inflating class fragment at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1777) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1793) at android.app.ActivityThread.access$1500(ActivityThread.java:123) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:939) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:123) at android.app.ActivityThread.main(ActivityThread.java:3848) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:507) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599) at dalvik.system.NativeStart.main(Native Method) Caused by: android.view.InflateException: Binary XML file line #51: \ Error inflating class fragment at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:581) at android.view.LayoutInflater.rInflate(LayoutInflater.java:623) at android.view.LayoutInflater.inflate(LayoutInflater.java:408) at android.view.LayoutInflater.inflate(LayoutInflater.java:320) at android.view.LayoutInflater.inflate(LayoutInflater.java:276) at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:211) at android.app.Activity.setContentView(Activity.java:1657) at com.test.base.activities.TabbedStoreActivity.onCreate(TabbedStoreActivity.java:46) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1731) ... 11 more Caused by: java.lang.ClassNotFoundException: android.view.fragment in loader \ dalvik.system.PathClassLoader[/system/framework/com.google.android.maps.jar: \ /data/app/com.test.test.apk] at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240) at java.lang.ClassLoader.loadClass(ClassLoader.java:551) at java.lang.ClassLoader.loadClass(ClassLoader.java:511) at android.view.LayoutInflater.createView(LayoutInflater.java:471) at android.view.LayoutInflater.onCreateView(LayoutInflater.java:549) at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:66) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:568) ... 20 more 

Убедитесь, что ваша активность наследуется от FragmentActivity , иначе <fragment> не работает. Вот пример проекта, демонстрирующий это.