2014-01-11 3 views
0

Я был счастливым пользователем ABS уже несколько лет, но с момента последнего обновления до maven-android-plugin Я не могу заставить встроенное приложение работать на устройствах без родного Action Бар ... т.е. ничего перед сотой.Maven-Android-Plugin 3.8.2 вызывает проблемы с ActionBarSherlock

Исключение, которое я получаю;

01-11 15:47:04.413: E/AndroidRuntime(1479):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1768) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1784) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at android.app.ActivityThread.access$1500(ActivityThread.java:123) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:939) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at android.os.Handler.dispatchMessage(Handler.java:99) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at android.os.Looper.loop(Looper.java:130) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at android.app.ActivityThread.main(ActivityThread.java:3835) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at java.lang.reflect.Method.invokeNative(Native Method) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at java.lang.reflect.Method.invoke(Method.java:507) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at dalvik.system.NativeStart.main(Native Method) 
01-11 15:47:04.413: E/AndroidRuntime(1479): Caused by: java.lang.RuntimeException: Couldn't find content container view 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at com.actionbarsherlock.internal.ActionBarSherlockCompat.generateLayout(ActionBarSherlockCompat.java:1015) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at com.actionbarsherlock.internal.ActionBarSherlockCompat.installDecor(ActionBarSherlockCompat.java:902) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at com.actionbarsherlock.internal.ActionBarSherlockCompat.setContentView(ActionBarSherlockCompat.java:836) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at com.actionbarsherlock.app.SherlockFragmentActivity.setContentView(SherlockFragmentActivity.java:261) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at com.oceanlife.core.activity.AbstractThemedActionBarActivity.onCreate(AbstractThemedActionBarActivity.java:32) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at com.oceanlife.activity.SpotListingActivity.onCreate(SpotListingActivity.java:119) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1722) 
01-11 15:47:04.413: E/AndroidRuntime(1479):  ... 11 more 

Я подозревал, что мое обновление для Android-Maven-плагин v3.8.2 наряду с требуемым обновлением до Maven 3.1.1 вызвало эту проблему (а не ABS сам) ... так что мой вопрос, как я могу диагностировать, что не так? Интересно отметить, что при отладке части кода, вызывающей проблему ActionBarSherlockCompat#generateLayout, макет найден правильно, но базовый идентификатор отсутствует, просмотрите приведенные ниже комментарии;

if (DEBUG) Log.d(TAG, "[generateLayout] using screen XML " + mActivity.getResources().getString(layoutResource)); 
    View in = mActivity.getLayoutInflater().inflate(layoutResource, null); 
    mDecor.addView(in, new ViewGroup.LayoutParams(MATCH_PARENT, MATCH_PARENT)); 

    // mDecor not null and the orginal resource contains an id called "abs__content" 
    ViewGroup contentParent = (ViewGroup)mDecor.findViewById(R.id.abs__content); 
    if (contentParent == null) { 
     throw new RuntimeException("Couldn't find content container view"); 
    } 

Единственное, что ненормально относительно детского вида с этим id заключается в том, что оно имеет следующее пространство имен;

Любая помощь в получении моей работы по восстановлению работы с пряниками наиболее ценится. И для аркады SDK 14+, это мой последний выпуск в Gingerbread. Заранее спасибо.


Update: Я подтвердил, что это прямой эффект повышения к Maven-андроида-плагин в v3.8.2 (и косвенные 3.1.1 Maven обновление).

ответ

0

Вы должны использовать apklib ActionBarSherlock с 3.8.1 и aar с 3.8.2. В настоящее время мы пытаемся получить поддержку для того, чтобы хорошо работать в наших работах по сравнению с 3.8.3 ...

+0

Thanks Manfred. Я вернусь к этому, когда выпущен v3.8.3 и предоставит обновление. Между тем, я отказался ... для меня не было большого размера, поскольку релиз 3.8.1 был для меня хорошим. – OceanLife

Смежные вопросы