安装android环境之后,我的旧项目不再起作用总是我有multidex错误。
错误:
AGPBI:{“kind”:“error”,“text”:“将字节码转换为dex时出错:\ n因为:com.android.dex.DexException:多个dex文件定义了Lorg / apache / http / cookie / CookieSpecFactory; “,”“来源”:[{}],“原始”:“意外的顶级异常:\ ncom.android.dex.DexException:多个dex文件定义Lorg / apache / http / cookie / CookieSpecFactory; \ n”,“工具“:”地塞米松“} AGPBI:{“kind”:“error”,“text”:“com.android.dex.DexException:多个dex文件定义Lorg / apache / http / cookie / CookieSpecFactory;”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:661)”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:616)”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:598)”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat com.android.dx.merge.DexMerger.merge(DexMerger.java:198)”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat com.android.builder.dexing.DexArchiveMergerCallable.call(DexArchiveMergerCallable.java:61)”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat com.android.builder.dexing.DexArchiveMergerCallable.call(DexArchiveMergerCallable.java:36)”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat java.util.concurrent.ForkJoinTask $ AdaptedCallable.exec(ForkJoinTask.java:1424)”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat java.util.concurrent.ForkJoinPool $ WorkQueue.runTask(ForkJoinPool.java:1056)”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)”,“sources”:[{}]} AGPBI:{“kind”:“error”,“text”:“\ tat java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)”,“sources”:[{}]}
FAILED :应用程序:buildInfoGeneratorDebug
失败:构建因异常而失败。
com.android.build.api.transform.TransformException:com.android.dex.DexException:多个dex文件定义Lorg / apache / http / cookie / CookieSpecFactory;
我的build.gradle文件:
apply plugin: 'com.android.application'
apply plugin: 'realm-android'
android {
configurations.all {
resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9'
all*.exclude group: 'com.google.android.gms', module: 'play-services'
}
compileSdkVersion 26
buildToolsVersion '27.0.0'
defaultConfig {
applicationId "com.example.nasri.a8xmovie"
minSdkVersion 19
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
lintOptions{
abortOnError false
}
}
dexOptions {
preDexLibraries = false
incremental true
javaMaxHeapSize "4g"
}
productFlavors {
}
}
afterEvaluate {
tasks.matching {
it.name.startsWith('dex')
}.each { dx ->
if (dx.additionalParameters == null) {
dx.additionalParameters = ['--multi-dex']
} else {
dx.additionalParameters += '--multi-dex'
}
}
}
repositories {
maven { url "https://jitpack.io" }
maven {
url 'https://raw.github.com/rejasupotaro/AsyncRssClient/master/AsyncRssClient/repository'
}
maven { url 'http://dl.bintray.com/gigamole/maven/' }
google()
}
dependencies {
compile 'com.android.support:multidex:1.0.1'
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile project(path: ':sAXRSSReader', configuration: 'default')
compile files('libs/YouTubeAndroidPlayerApi.jar')
compile project(path: ':breathing-progress', configuration: 'default')
compile 'rejasupotaro:async-rss-client:0.0.6'
compile 'com.android.support:appcompat-v7:26.1.0'
compile 'com.android.support:design:26.1.0'
compile 'com.android.support:recyclerview-v7:26.1.0'
compile 'com.android.support:cardview-v7:26.1.0'
compile 'com.uwetrottmann.tmdb2:tmdb-java:1.3.0'
compile 'com.android.support:support-v4:26.1.0'
compile 'org.jsoup:jsoup:1.10.1'
compile 'com.google.apis:google-api-services-youtube:v3-rev179-1.22.0'
compile 'com.google.android.gms:play-services-plus:10.0.1'
compile 'com.jakewharton:butterknife:8.4.0'
compile 'com.android.support:palette-v7:26.1.0'
compile 'com.readystatesoftware.systembartint:systembartint:1.0.3'
compile 'com.bugsnag:bugsnag-android:3.+'
compile 'com.miguelcatalan:materialsearchview:1.4.0'
compile 'com.facebook.fresco:fresco:0.14.1'
compile 'com.github.xiprox.errorview:library:2.+'
compile 'com.github.sembozdemir:ViewPagerArrowIndicator:1.0.0'
compile 'com.github.paolorotolo:appintro:4.0.0'
compile 'com.android.support:support-annotations:26.1.0'
compile 'com.google.android.exoplayer:exoplayer:r1.5.8'
compile 'com.android.support:mediarouter-v7:26.1.0'
compile 'com.google.android.gms:play-services-cast-framework:10.0.1'
compile 'com.googlecode.android-query:android-query:0.25.9'
compile 'com.github.devlight.navigationtabstrip:navigationtabstrip:+'
compile project(path: ':Downloader', configuration: 'default')
}
AndroidManifest文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.nasri.a8xmovie">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.GET_TASKS" />
<application
android:name=".MyApplication"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/MyMaterialTheme">
<meta-data
android:name="com.google.android.gms.cast.framework.OPTIONS_PROVIDER_CLASS_NAME"
android:value="com.example.nasri.a8xmovie.CastOptionsProvider" />
<meta-data
android:name="com.bugsnag.android.API_KEY"
android:value="bfca1d3d875" />
<activity
android:name=".SMDBIntro"
android:label=" "
android:screenOrientation="portrait" />
<activity
android:name=".activities.MainActivity"
android:configChanges="orientation|keyboardHidden|screenSize|uiMode"
android:label="@string/app_name"
android:theme="@style/SplashTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".activities.VideoActivity"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
<activity android:name=".activities.MovieActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.nasri.a8xmovie.activities.MainActivity" />
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="tech.salroid.com"
android:scheme="http" />
</intent-filter>
</activity>
<activity
android:name=".activities.MovieDetailActivity"
android:theme="@style/DetailsActivityThemeDark" />
<activity android:name=".activities.FullCastActivity" />
<activity android:name=".activities.CharacterDetailsActivity" />
<activity android:name=".activities.FullMovieActivity" />
<activity
android:name=".FullImageActivity"
android:theme="@style/MaterialTheme" />
<activity android:name=".activities.TVShowActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.nasri.a8xmovie.activities.MainActivity" />
</activity>
<activity
android:name=".activities.TVShowDetailsActivity"
android:theme="@style/DetailsActivityTheme" />
<activity android:name=".activities.NewsActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.nasri.a8xmovie.activities.MainActivity" />
</activity>
<activity android:name=".activities.FilmStreamingActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.nasri.a8xmovie.activities.MainActivity" />
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="tech.salroid.com"
android:scheme="http" />
</intent-filter>
</activity>
<activity android:name=".activities.SettingsActivity" />
<activity android:name=".activities.SavedMoviesActivity" />
<activity
android:name=".VideoPlayer"
android:screenOrientation="landscape"
android:theme="@style/AppTheme" />
<activity
android:name=".ExpandedControlsActivity"
android:label="@string/app_name"
android:launchMode="singleTask"
android:screenOrientation="portrait"
android:theme="@style/AppTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".VideoPlayer" />
>
</activity>
<activity android:name=".activities.FullSaisonActivity" />
<activity android:name=".activities.SaisonDetailsActivity" />
<activity android:name=".activities.FullEpisodeActivity" />
<activity android:name=".activities.EpisodeDetailsActivity" />
<!--
ATTENTION: This was auto-generated to add Google Play services to your project for
App Indexing. See https://g.co/AppIndexing/AndroidStudio for more information.
-->
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<activity
android:name=".activities.StreamingActivity"
android:label="@string/title_activity_streaming"
android:theme="@style/MyMaterialTheme" />
<activity android:name=".activities.StreamingGenreActivity" />
<activity android:name=".activities.DownloadActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.nasri.a8xmovie.activities.StreamingActivity" />
</activity>
<service android:name=".service.DownloadService"></service>
</application>
</manifest>
Java应用程序文件:
package com.example.nasri.a8xmovie;
import android.app.Application;
import android.content.Context;
import android.support.multidex.MultiDex;
import android.util.Log;
import com.aspsine.multithreaddownload.DownloadConfiguration;
import com.aspsine.multithreaddownload.DownloadManager;
import com.bugsnag.android.Bugsnag;
import com.example.nasri.a8xmovie.entities.DownloadInfo;
import com.facebook.drawee.backends.pipeline.Fresco;
import java.util.List;
import Utils.DataLists;
import io.realm.Realm;
import io.realm.RealmConfiguration;
/**
* Created by nasri on 08/11/16.
*/
public class MyApplication extends Application {
private static Context sContext;
@Override
public void onCreate() {
super.onCreate();
sContext = getApplicationContext();
Bugsnag.init(this);
Fresco.initialize(this);
Realm.init(this);
initDownloader();
CrashHandler.getInstance(sContext);
}
private void initDownloader() {
DownloadConfiguration configuration = new DownloadConfiguration();
configuration.setMaxThreadNum(10);
configuration.setThreadNum(3);
DownloadManager.getInstance().init(getApplicationContext(), configuration);
}
public static Context getContext() {
return sContext;
}
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
}
我尝试了很多解决方案,但没有解决方案与我合作。