Я попытался напрямую подключиться к базе данных с помощью драйвера JDBC для MySQL, но моя программа падает, поэтому я не уверен, поддерживает ли Android драйвер JDBC для MySQL.
Никогда и никогда не используйте драйвер базы данных через подключение к Интернету, для любой базы данных, для любой платформы, для любого клиента, в любом месте.Это удваивается для мобильных устройств.Драйверы базы данных предназначены для работы в локальной сети и не предназначены для нестабильных / прерывистых соединений или с высокой задержкой.
Могу ли я подключиться к программе на сервере Java с помощью сокетов (или другого способа связи)?
Это не обязательно Java.Это должно быть что-то, предназначенное для использования через Интернет.Как отмечается в комментарии г-на Кинга, веб-сервисы использовались для этого большую часть прошедшего десятилетия.Для Android веб-службы REST, вероятно, наиболее просты в использовании, поскольку нет встроенной поддержки SOAP или XML-RPC.Но будет ли веб-служба реализована на Java, PHP, Perl или SNOBOL, решать только вам.
Хорошо, хорошо, возможно, SNOBOL не будет приемлемым вариантом.: -)