Должен ли я использовать Bluetooth, Wifi или что-то еще?
Это зависит от того, в каких ситуациях вы хотите, чтобы ваша программа работала.
Bluetooth может обеспечить прямое соединение между вашими устройствами. Потенциальная проблема с Bluetooth заключается в том, что у него ограниченный радиус действия. Если ваши устройства должны быть далеко друг от друга, вы можете пойти с Wi-Fi. В противном случае Bluetooth может работать отлично.
Если оба устройства подключены к Интернету, вы можете заставить их разговаривать друг с другом через них. Преимущество этого подхода заключается в том, что не имеет значения, насколько далеко друг от друга находятся устройства, если они оба находятся в сети. Недостатком является то, что вам придется выяснить, как найти IP-адрес планшета, прежде чем вы сможете поговорить с ним. Это на самом деле ОГРОМНЫЙ недостаток, потому что это может быть довольно проблематично, если оба ваших устройства не на одном и том же Wi-Fi. У вас может быть тип пользователя в IP-адресе назначения, но у вас будут проблемы с его настройкой, если пользователь находится за маршрутизатором (что почти всегда будет так). Дело в том, что оно волосатое.
Если оба ваших устройства подключены к одному и тому же Wi-Fi, вы можете использовать ZeroConf AKA bonjour (как сказал Дэнкрик), чтобы выяснить, по какому ip-адресу вам нужно отправить информацию. Ранее я использовал библиотеку под названием jmdns (легко найти с помощью Google) для реализации сетей с нулевой конфигурацией. Это хорошо, потому что пользователю не нужно беспокоиться о IP-адресах ... это интуитивно понятно для пользователя.
И в каком случае, как?
Сеть - довольно большая тема, поэтому я не могу подробно остановиться на этом вопросе. Короткий ответ: это зависит от того, какой метод вы выберете. Найдите несколько учебных пособий и начните с того, что одно из ваших устройств отправит что-то такое же простое, как int, на другое.