Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
yura91
28 / 26 / 2
Регистрация: 23.10.2013
Сообщений: 2,219
#1

TCP клиент в NDK - Android

29.04.2015, 13:26. Просмотров 406. Ответов 5
Метки нет (Все метки)

Как реализовать TCP клиент используя андроид ndk на С++?? Я слышал, что у андроид такое же ядро как и у Linux. То есть на андроид ndk будет такой же TCP клиент как и в Linux верно??
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.04.2015, 13:26     TCP клиент в NDK
Посмотрите здесь:

Android Android NDK
Android NDK и SDK
Android Android NDK
Android SDK or NDK
Android TCP клиент под андроид
TCP/IP клиент Android
Подключить NDK Android
NDK C vs C++ и примеры Android
Android TCP клиент
Использование NDK Android
AS и Ndk Android
Android Чтение данных с сервера (TCP клиент)

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
EVP
319 / 241 / 43
Регистрация: 14.12.2010
Сообщений: 462
29.04.2015, 20:01     TCP клиент в NDK #2
Цитата Сообщение от yura91 Посмотреть сообщение
Как реализовать TCP клиент используя андроид ndk на С++?
boost::asio C++11 Examples.

PS: Мне представляется, что ты рановато за NDK взялся.
Выучи отдельно Java и отдельно C++.
Потом берись за NDK.
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
30.04.2015, 16:12     TCP клиент в NDK #3
От меня тоже спасибо... буст тоже ТАМ работает?

Цитата Сообщение от EVP Посмотреть сообщение
Мне представляется, что ты рановато за NDK взялся.
Закон джунглей - учиться надо на реальных примерах! Под С++ я не нашел адекватных заданий для себя. И даже до буст не добрался (прилично изучив консоль). Сам не смог сокет клиент-сервер создать, но тоже мечтаю отладить на консоли и собрать под НДК... Про буст слышал, но примеры под MinGW не собирались - а инструкции уверяли что буст сначала надо скомпилировать (бат-ник компиляции вылетал с ошибкой) и хитро "подключить"...
EVP
319 / 241 / 43
Регистрация: 14.12.2010
Сообщений: 462
30.04.2015, 16:50     TCP клиент в NDK #4
Цитата Сообщение от Tester64 Посмотреть сообщение
буст тоже ТАМ работает?
Куда же без него? Конечно, работает.
Цитата Сообщение от Tester64 Посмотреть сообщение
Закон джунглей - учиться надо на реальных примерах!
Вот только не надо рекомендовать начинающему боксёру сразу вести титульный бой с Тайсоном
Убьёт ведь.
Цитата Сообщение от Tester64 Посмотреть сообщение
И даже до буст не добрался
Буст кроссплатформенен. Дополнительный слой абстракций над некоторыми примитивами полезно иметь.
Стандартной библиотеки может не хватить.
Цитата Сообщение от Tester64 Посмотреть сообщение
инструкции уверяли что буст сначала надо скомпилировать
Верно для всех систем, где применяется буст.
Для Андроида надо некоторые вещи в бусте изменять при сборке, что может быть затруднительно по началу.
В книжке Android NDK. Разработка приложений под Android на С/С++ рассказывается чего надо менять и как скомпилировать.
На остальных поддерживаемых платформах он сам, вроде, собирается.
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
30.04.2015, 18:21     TCP клиент в NDK #5
Цитата Сообщение от EVP Посмотреть сообщение
Вот только не надо рекомендовать начинающему боксёру сразу вести титульный бой с Тайсоном
Убьёт ведь.
Я когда учил С++ целый фреймворк для текстовых преобразований написал кросплатформенный между консолью винды и андроидом. Но помучав пол года консоль и написав 3-4 не сложные програмки понял что мне скучно! Утилитки прикольные получились. Полезные, но дальше надо писать программы винда-андроид. И мне СИЛЬНО не хватает сокетов! Искал как "начать" несколько месяцев. Советовали чушь уровня пиши с нуля по учебнику... буст под винду не запустился. А без винды под андроид он мне не нужен. ОЧЕНЬ долго собирается под андроид... Консоль=3-8секунд, андроид=20-50секунд...

но... прежде чем взяться за основы С++ я собрал пару десятков примеров под НДК! Все пощупал! Понял как переносить, менять названия пакетов, как удобнее оформлять классы под них. Настрогал десяток батников для разных сборок. Синхронизировал сборки с виндовыми тестами и моим фреймворком... А уж потом "отложил" серьезную теорию до времен "свободного времени"...

Но от факта не уйти! Сначала поставь перед собой задачу, а уж потом учи язык вокруг задачи... Мне нужно было шифрование строк без возможности декомпиляции исходников "студентами" (обфускация помогала слабо) - почти добился (осталось оттестить). Теперь хочу передавать пакеты(сообщения, файлы, аудио-поток) сокетам между андроидомИ и компаМИ (в примерах находил только решения "один клиент-один сервер, без реконнекта при обрыве, без обработки ошибок, без обработки подключения-отключения клиентов")

Цитата Сообщение от EVP Посмотреть сообщение
Буст кроссплатформенен. Дополнительный слой абстракций над некоторыми примитивами полезно иметь.
Можете в двух словах? Насколько он кросплатформенный? Нашел ЭТО:
http://stackoverflow.com/questions/1...oost-c-library
И оттуда выход на сборку под андроид
https://github.com/MysticTreeGames/Boost-for-Android
. Насколько код под эту сборку и виндовую остается совместимым? Если напишу клиент приема-отправки строки на винде под консоль из функции, достаточно будет лишь обернуть в вызывалку из явы и можно собирать? Хочу понять обьем "телодвижений"...
EVP
319 / 241 / 43
Регистрация: 14.12.2010
Сообщений: 462
30.04.2015, 19:38     TCP клиент в NDK #6
Цитата Сообщение от Tester64 Посмотреть сообщение
Можете в двух словах? Насколько он кросплатформенный?
Настолько.
Цитата Сообщение от Tester64 Посмотреть сообщение
Насколько код под эту сборку и виндовую остается совместимым? Если напишу клиент приема-отправки строки на винде под консоль из функции, достаточно будет лишь обернуть в вызывалку из явы и можно собирать?
Для указанных выше платформ и компиляторов код переносится без изменений.
Разница между Windows и Android, например, только в системе сборки и вызывающем коде.
Логика приложения должна опираться на некоторую системную абстракцию, чтобы не зависеть от OS.
Этот слой не зависит от буста. В этом может быть трудность.

Цитата Сообщение от Tester64 Посмотреть сообщение
И оттуда выход на сборку под андроид
Неее... лучше один раз книжку прочитать, чтобы знать чего менять надо.
К тому же буст уже Android'а почти понимает сам.
Yandex
Объявления
30.04.2015, 19:38     TCP клиент в NDK
Ответ Создать тему
Опции темы

Текущее время: 03:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru