2015-12-03 1 views
0

Я пытаюсь запустить приложение Chrome на Android Mobile, используя инструкции от: developer.chrome.com/apps/chrome_apps_on_mobileAndroid App Крушения: Запуск демо-приложение NaCl (pexe приложение) на мобильном телефоне, используя Apache Cordova

Из вышеприведенного URL я мог нормально использовать приложение калькулятора в Android Emulator 5.0.1. Без вопросов.

github.com/GoogleChrome/chrome-app-samples/tree/master/samples/calculator

Chrome App Calculator on Android Screenshot

Затем я попытался запустить "Native Client" App на рабочем столе из примера апи каталог nacl_sdk : developer.chrome.com/native-client/sdk/download

nacl_sdk поставляется с несколькими примерами, включая примеры демо и основных примеров api. Все примеры отлично работают на рабочем столе. Из них я взял пример «file_io» api, который отлично работает после компиляции (make). Я взял эту папку и использовал следующую команду для создания CCA Cordova приложения:

cca create FileApp --copy-from=/path/to/file_io/manifest.json

Затем перейдите в FileApp и cca prepare

После этого побежало команды Android eumlate:

cca run android --target=avd5

Он обработал все хорошо, и я не вижу ошибок в создании этого приложения cordova, такого как приложение калькулятора. Но после «LAUNCH SUCCESS», когда приложение запустило эмулятор Android, он разбился. Окна эмулятора закрыты.

Я начал Android Emulator от AVD Manager, и после загрузки Android я попытался начать 'File I/O' приложение, которое в итоге показал мне сообщение

«К сожалению, File I/O была остановлена «. Screenshot

Означает ли это, что приложения PNaCl/NaCl по-прежнему не поддерживаются в ОС Android? Приложение NaCl содержит файл .pexe. Есть ли какой-нибудь шаг между тем, что я могу пропустить?

Я бы очень признателен за любую помощь в этом отношении, чтобы проверить, могу ли я запускать собственные приложения для клиентов на ОС Android, как и приложения Chrome Mobile Apps с использованием примеров Apache Cordova.

+0

Собственный клиент не поддерживается в Chrome для Android (и, следовательно, веб-интерфейс на основе Chrome). Смотрите: https://developer.chrome.com/multidevice/faq 'Работает ли Native Client в Chrome для Android? Это не так, и мы не планируем объявлять в это время. –

+0

Да, я уже прочитал. Затем я также столкнулся с этим: https://github.com/MobileChromeApps/mobile-chrome-apps/blob/master/docs/faq.md#is-nacl--pnacl-supported «Поддерживается ли NaCL/PNaCL? Нет. Однако вы все еще можете скомпилировать и использовать собственный код, написав собственный плагин Cordova.' – satinder

+0

Этот «собственный код путем написания настраиваемого плагина Cordova» - это Android Java, а не NaCl/PNaCl. При написании приложения для Android - Java - это родной язык. Его понятным, как «native», является перегруженное слово. –

ответ

0

Собственный клиент (NaCl) не поддерживается в Chrome для Android (и, следовательно, WebView для Chrome/Chromium).

См: http://developer.chrome.com/multidevice/faq

Q: Does Native Client work on Chrome for Android? 
A: It does not, and we have no plans to announce at this time. 

Но тогда OP прочитал на: https://github.com/MobileChromeApps/mobile-chrome-apps/blob/master/docs/faq.md#is-nacl--pnacl-supported

Q: Is NaCl/PNaCl supported [in Cordova]? 
A: No. However, you can still compile and use native code 
    by writing a custom Cordova plugin. 

И, к сожалению, слово родной перегруженное слово с различными значениями в зависимости от контекста, так что ОП начал спрашивать об Android Native Development Kit (NDK).

Android NDK, который использует Java Native Interface (JNI) для кода C/C++ для связи с платформой Android Java.Обычно приложения для Android используют только NDK, если необходимо подключить существующие библиотеки C/C++ или выполнить требования к вычислительной производительности, такие как физическое моделирование или обработка изображений.

Когда Cordova ссылается на «собственный код», он ссылается на код, написанный на Android Java, который должен быть подключен через плагин Cordova со стороны JavaScript.

И, конечно, почему использовать любой из вышеперечисленных интерфейсов/API зависит от того, что OP хочет сделать.

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