Я пытаюсь создать простое приложение для Android, в котором будет отображаться QR-кодированное изображение - с помощью библиотека zxing.
Итак, я установил HomeBrew
, ant
и maven
на моем ноутбуке Mac OS Yosemite и указал переменную среды ANDROID_HOME
на местоположение Android SDK.
Затем я проверил последний zxing из GitHub и построил его (без каких-либо ошибок) с командой mvn package
(и используя javac
версия 1.8.0_45).
После этого я создал новый проект Android с пустой Activity в Eclipse и скопировал 3 файла jar в его каталог libs
:
- Android/ЛИЭС/ядро-3.2.1-SNAPSHOT.jar
- Android-ядро/цель/Android-ядро-3.2.1-SNAPSHOT.jar
- Android/цель/Android-4.7.4.jar
К сожалению, мой простой код в MainActivity.java не компилируется:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ImageView imageView = (ImageView) findViewById(R.id.qrCode);
String qrData = "Data I want to encode in QR code";
int qrCodeDimention = 500;
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder(qrData,
null,
Contents.Type.TEXT,
BarcodeFormat.QR_CODE.toString(),
qrCodeDimention);
try {
Bitmap bitmap = qrCodeEncoder.encodeAsBitmap();
imageView.setImageBitmap(bitmap);
} catch (WriterException e) {
e.printStackTrace();
}
}
Ошибки (здесь полноэкранный режим):
BarcodeFormat cannot be resolved
Contents cannot be resolved to a variable
QRCodeEncoder cannot be resolved to a type
QRCodeEncoder cannot be resolved to a type
WriterException cannot be resolved to a type
Но в то же время я вижу эти (предположительно не найденные Eclipse) классы, вызывая tar
tool:
# tar tvfz libs/core-3.2.1-SNAPSHOT.jar | grep -i WriterException
-rwxrwxrwx 0 0 0 0 28 Mai 20:35 com/google/zxing/WriterException.class
# tar tvfz libs/core-3.2.1-SNAPSHOT.jar | grep -i BarcodeFormat
-rwxrwxrwx 0 0 0 0 28 Mai 20:35 com/google/zxing/BarcodeFormat.class
# tar tvfz libs/android-4.7.4.jar | grep -i QRCodeEncoder
-rwxrwxrwx 0 0 0 0 28 Mai 20:39 com/google/zxing/client/android/encode/QRCodeEncoder.class
Что я делаю неправильно, пожалуйста, почему Eclipse не может найти классы?
Я также задал свой вопрос в GitHub.