2015-02-17 4 views
2

Я создаю приложение с помощью Bitcoinj, и я пытаюсь запустить его на Nexus 5. При использовании класса для сборки Bitcoinj - compile 'org.bitcoinj: bitcoinj-core: 0.12 '- и затем запустить приложение на телефоне, я получаю эту ошибку ...Bitcoinj не будет компилироваться на Nexus 5 с Android Studio

„Failure [INSTALL_FAILED_NO_MATCHING_ABIS]“

кто-нибудь есть какие-либо идеи, почему это, или как это исправить?

Thanks,

Dan.

+0

Запускаете ли вы его на виртуальном устройстве или в физическом? – timbillstrom

+0

Я запускаю его на физическом устройстве. – dlmiddlecote

ответ

7

При попытке запустить приложение Android, которое использует библиотеку BitcoinJ для Nexus 5, с последней версией Android версии 5 (Lollipop) вы получите это сообщение об ошибке «INSTALL_FAILED_NO_MATCHING_ABIS». Основная причина заключается в том, что вы пытаетесь установить приложение с родными библиотеками, и у него нет собственной библиотеки для вашей архитектуры процессора.

Уроженец библиотека, которая сделала эту проблему была Scrypt.jar так я исключил его

compile('com.google:bitcoinj:0.11.3') { 
    exclude module: 'scrypt' 
} 

и вместо того, чтобы использовать

com.lambdaworks.crypto.SCrypt; 

просто использовать другой scrypting библиотеку, например,

org.spongycastle.crypto.generators.SCrypt; 

Удача

+0

Не могли бы вы рассказать о «использовании' org.spongycastle.crypto.generators.SCrypt' ». Моя проблема в том, что все связанные с 'bitcoinj файлы, содержащие' com.lambdaworks.crypto.SCrypt', заблокированы в Android Studio, и я не могу их изменить. – Anton

+1

@Anton вы не можете изменять скомпилированные файлы/библиотеки с помощью студии Android (если вы не используете NDK для повторной компиляции) AFAIK. Другим решением является переписать определенные файлы, которые используют _lambdaworks.crypto.SCrypt_, и просто заменить импорт на _org.spongycastle.crypto.generators.SCrypt_. –

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

  • Нет связанных вопросов^_^