Прямое подключение к Интернету на Android Wear?

Я попытался создать приложение, показывающее некоторые фотографии из Интернета.

Я использовал функцию, которая отлично работает на моем телефоне (Galaxy S3 – Android 4.3), но на часах я получаю исключение java.io.EOFException .

Код (работает по телефону):

 private class DownloadImageTask extends AsyncTask<String, Void, Bitmap> { ImageView bmImage; public DownloadImageTask(ImageView bmImage) { this.bmImage = bmImage; } protected Bitmap doInBackground(String... urls) { String urldisplay = urls[0]; Bitmap mIcon11 = null; try { InputStream in = new java.net.URL(urldisplay).openStream(); mIcon11 = BitmapFactory.decodeStream(in); } catch (Exception e) { //Log.e("Error", e.getMessage()); e.printStackTrace(); } return mIcon11; } protected void onPostExecute(Bitmap result) { bmImage.setImageBitmap(result); } } 

Другие функции бросают org.apache.http.NoHttpResponseException . Часы сопряжены и онлайн, так как я могу использовать голосовые команды и искать в Интернете и т. Д.

Итак, вопрос: могу ли я получить доступ к веб-сайту прямо из Android Wear или выполнить все эти задачи на своем телефоне? Или что-то не так с моей настройкой?

Устройства Android Wear не имеют прямого доступа к Интернету. Если вы хотите получить доступ к Интернету, вы должны сделать это, используя свое приложение-компаньон. Вы можете использовать API Data Layer для передачи данных назад и вперед между носимым и переносным устройством. API уровня данных имеет встроенную поддержку для переноса активов (в основном изображений, но в основном вы передаете любые другие двоичные данные).

EDIT: с Android Wear 2.0 можно напрямую обращаться к Интернету с помощью обычных сетевых API. Подробную информацию см. В документации для предварительного просмотра Android Wear 2.0 . Android Wear 2.0 еще не выпущен, обратитесь к обзору программы предварительного просмотра Developer для временной шкалы.

Даже если Android 5.1.1 поддерживает функцию Wi-Fi.

Вы должны придерживаться API уровня данных, вы не можете отправлять HTTP-запрос непосредственно из чата. Извлеките данные из Интернета, затем передайте их для просмотра с помощью API данных данных.

Вы можете видеть, поддерживает ли поддержка Android Wear напрямую в Интернете?

И этот документ Always-on и Wi-Fi с последним обновлением Android Wear

У меня очень похожая проблема. Мое приложение подключается к Интернету с помощью промежуточного программного обеспечения (ZeroC Ice), поэтому я не могу использовать MessageApi или что-то в этом MessageApi . Мое приложение для загрузки смогло подключиться к Интернету, когда оно не подключено к моему телефону.

Моя проблема заключалась в том, что Wi-Fi отключается, когда телефон подключен к моему устройству Wear (чтобы сохранить аккумулятор). Простое решение – отключить эту функцию: перейдите в « Developer Options на свой износ и отключите Automatic Wi-Fi toggle . Это позволит быстрее разрядить аккумулятор, но каждый раз вы будете подключаться к Интернету.

Кредиты: https://arcoresearchgroup.wordpress.com/2016/04/18/wear-keep-internet-even-when-connected/#more-1349

Вы можете использовать MessageApi . Я последовал этому подробному примеру, и он работал очень хорошо.