Добавление epublib в Android Studio и запуск его
У меня проблема с библиотеками в Android Studio. Я добавил.jar в папку libs в моем проекте и щелкнул по RMB, чтобы добавить его в качестве библиотеки. В build.gradle я добавил это с зависимостями:
compile files('libs/epublib-core-latest.jar')
Это работает, но когда я запускаю приложение, я получаю эту ошибку:
Could not find class 'nl.siegmann.epublib.epub.EpubReader', referenced from method com.MJV.Reader.MainActivity.onCreate
И это код, который может быть причиной этого:
import nl.siegmann.epublib.domain.Book;
import nl.siegmann.epublib.epub.EpubReader;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
System.out.println("hoi");
AssetManager assetManager = getAssets();
try {
InputStream epubInputStream = assetManager
.open("books/testbook.epub");
Book book = (new EpubReader()).readEpub(epubInputStream);
System.out.println("Hier komt het...");
System.out.println(book.getTitle());
} catch (IOException e) {
e.printStackTrace();
}
} ...
Я думаю, что библиотека не включается, когда приложение отправляется на мой телефон, но я могу ошибаться. Любая помощь будет оценена!
Изменить: файл build.gradle:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
} применить плагин: "Android"
repositories {
mavenCentral()
}
android {compileSdkVersion 17 buildToolsVersion "17.0.0"
defaultConfig {
minSdkVersion 7
targetSdkVersion 16
}
}
dependencies {
// You must install or update the Support Repository through the SDK manager to use this dependency.
// The Support Repository (separate from the corresponding library) can be found in the Extras category.
// compile 'com.android.support:appcompat-v7:18.0.0'
compile files('libs/epublib-core-latest.jar')
}
1 ответ
Вы также должны включить в свой проект бинарный файл для slf4j slf4j-android-1.5.8.jar, который является зависимостью для epublib.
Вставив его в папку libs вместе с epublib, убедитесь, что вы упомянули об этом и в своем скрипте graddle.
Эта строка, взятая из Android Studio, очень удобна, поскольку компилирует все файлы *.jar в папке libs:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])