Android错误java.lang.NoClassDefFoundError:android.support.v7.app.AppCompatDelegateImplV14

时间:2016-02-04 11:05:39

标签: android dependencies

我开始了一个新项目。导入了一个像这个文件的新模块 - >新 - >导入模块 - >源目录。

现在我导入的模块也具有依赖性。所以导入了两个模块。然后我将主模块添加为库这样的文件 - >项目结构 - >依赖关系选项卡 - >点击加号 - >添加模块依赖项,然后单击“确定”。

现在我已经包含了库模块。我收到this错误。所以我添加了 multiDexEnabled:true 属性,现在我的gradle看起来像this

在那次错误之后我发现了另一个错误 错误:任务':app:transformClassesWithJarMergingForDebug'的执行失败。

  

com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:android / support / v4 / util / TimeUtils.class

我通过添加以下代码行来解决(此行已包含在清单文件的早期图像中)

configurations {
        all*.exclude group: 'com.android.support', module: 'support-v4'
    }

现在经过所有这些步骤后,当我尝试运行MainActvity时,我收到以下错误(标题) java.lang.NoClassDefFoundError:android.support.v7.app.AppCompatDelegateImplV14

This我的Log Cat看起来如何。

清单和项目结构

Manifest

主题看起来像Theme

主要活动

import android.content.res.Resources;
import android.support.annotation.NonNull;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.TypedValue;
import android.view.MenuItem;
import android.view.ViewGroup;
import android.widget.ListView;

import com.ascentbrezie.deleteapp.R;
import com.ascentbrezie.deleteapp.adapters.GoogleCardsMediaAdapter;
import com.nhaarman.listviewanimations.appearance.simple.SwingBottomInAnimationAdapter;
import com.nhaarman.listviewanimations.itemmanipulation.swipedismiss.OnDismissCallback;
import com.nhaarman.listviewanimations.itemmanipulation.swipedismiss.SwipeDismissAdapter;


public class MainActivity extends AppCompatActivity implements
        OnDismissCallback {

    private static final int INITIAL_DELAY_MILLIS = 300;

    private GoogleCardsMediaAdapter mGoogleCardsAdapter;

    @Override
    protected void onCreate(final Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.list_view);

        ListView listView = (ListView) findViewById(R.id.list_view);

        listView.setBackgroundResource(R.drawable.background_media);

        mGoogleCardsAdapter = new GoogleCardsMediaAdapter(this,
                com.ascentbrezie.deleteapp.utils.DummyContent.getDummyModelList());
        SwingBottomInAnimationAdapter swingBottomInAnimationAdapter = new SwingBottomInAnimationAdapter(
                new SwipeDismissAdapter(mGoogleCardsAdapter,this));
        swingBottomInAnimationAdapter.setAbsListView(listView);

        assert swingBottomInAnimationAdapter.getViewAnimator() != null;
        swingBottomInAnimationAdapter.getViewAnimator().setInitialDelayMillis(
                INITIAL_DELAY_MILLIS);

        listView.setClipToPadding(false);
        listView.setDivider(null);
        Resources r = getResources();
        int px = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
                8, r.getDisplayMetrics());
        listView.setDividerHeight(px);
        listView.setFadingEdgeLength(0);
        listView.setFitsSystemWindows(true);
        px = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 12,
                r.getDisplayMetrics());
        listView.setPadding(px, px, px, px);
        listView.setScrollBarStyle(ListView.SCROLLBARS_OUTSIDE_OVERLAY);
        listView.setAdapter(swingBottomInAnimationAdapter);

//        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
//        getSupportActionBar().setTitle("Google cards media");
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        if (item.getItemId() == android.R.id.home) {
            finish();
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

    @Override
    public void onDismiss(@NonNull final ViewGroup listView,
                          @NonNull final int[] reverseSortedPositions) {
        for (int position : reverseSortedPositions) {
            mGoogleCardsAdapter.remove(mGoogleCardsAdapter.getItem(position));
        }
    }
}

现在我被困住了,无法前进。我已经尝试了一些堆栈溢出的解决方案,但无法解决它。 Thanx的帮助

0 个答案:

没有答案