Как пользоваться моей пользовательской библиотекой apk файл в других приложениях

Традиционно, JS был предназначен, если коротко, быстро рабочие части кода. Если у Вас было основное продолжение вычислений, Вы сделали это на сервере - идея приложения JS+HTML , которое работало в Вашем браузере в течение долгих промежутков времени, делая нетривиальные вещи, было абсурдно.

, Конечно, теперь у нас есть это. Но, потребуется немного для браузеров для наверстывания - большинство из них было разработано на основе однопоточной модели и изменения, которое не легко. Google Gears обходит много потенциальных проблем путем требования, чтобы фоновое выполнение было изолировано - никакое изменение DOM (так как это не ориентировано на многопотоковое исполнение), никакие объекты доступа, созданные основным потоком (так же). В то время как строгий, это, вероятно, будет самым практическим дизайном для ближайшего будущего, и потому что это упрощает дизайн браузера, и потому что это снижает риск, вовлеченный в разрешение неопытных кодеров JS, бездельничают с потоками...

@marcio:

, Почему это - причина не реализовать многопоточность в JavaScript? Программисты могут сделать то, что они хотят с инструментами, которые они имеют.

Таким образом, давайте не давать им инструменты, которые так легки к неправильное употребление что любой веб-сайт i открытых концов, разрушающих мой браузер. Наивная реализация этого принесла бы Вам прямо в территорию, которая вызвала MS столько головных болей во время разработки IE7: дополнительные авторы играли быстро и свободный с моделью потоков, приводящей к скрытым ошибкам, которые стали очевидными когда объектные жизненные циклы, измененные на основном потоке. ПЛОХО. Если Вы пишете многопоточные дополнения ActiveX для IE, я предполагаю, что он идет с территорией; не означает, что это должно пойти дальше, чем это.

8
задан Arutha 7 September 2009 в 13:29
поделиться

3 ответа

Элемент предназначен для надстроек, поставляемых как расширения к микропрограммному обеспечению. AFAIK, его нельзя будет использовать в вашем сценарии.

Скорее всего, вам потребуется реализовать службу, которая предоставляет API через AIDL или использует набор задокументированных действий Intent для обмена данными с другими приложений или предоставляет ContentProvider .

В противном случае упакуйте код как JAR, а не APK. Вы можете увидеть много примеров этого в моих репозиториях на github (все cwac-файлы следуют этому шаблону).

7
ответ дан 5 December 2019 в 19:01
поделиться

Я пытаюсь использовать jar-библиотеку в eclipse (я добавил внешнюю jar-библиотеку в параметры Java Build Path моего проекта). Приложение компилируется, но во время выполнения возникает исключение «Не удалось найти класс ...»

0
ответ дан 5 December 2019 в 19:01
поделиться

Фактически вы можете создать проект, связанный с другим проектом.

В Eclipse вам нужно сделать две вещи:

  • добавить uses-library = имя пакета в manifest.xml
  • открыть свойства проекта -> Путь сборки Java -> Проекты и добавить проект используемой библиотеки

Но мне не удалось запустить его. SDK правильно загружает оба пакета, но я получаю сообщение об ошибке ссылки

WARN/dalvikvm(444): Link of class 'Lme/guillaumin/android/osmtracker/activity/DisplayTrackMap;' failed
ERROR/dalvikvm(444): Could not find class 'me.guillaumin.android.osmtracker.activity.DisplayTrackMap', referenced from method me.guillaumin.android.osmtracker.activity.TrackLogger.onOptionsItemSelected
WARN/dalvikvm(444): VFY: unable to resolve const-class 154 (Lme/guillaumin/android/osmtracker/activity/DisplayTrackMap;) in Lme/guillaumin/android/osmtracker/activity/TrackLogger;

ВМ не может загрузить класс в моем приложении, который ссылается на приложение libs.

0
ответ дан 5 December 2019 в 19:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: