String recepientEmail = ""; // either set to destination email or leave empty
Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setData(Uri.parse("mailto:" + recepientEmail));
startActivity(intent);
Смысл в том, чтобы использовать ACTION_SENDTO
в качестве действия и mailto:
в качестве данных. Если вы хотите, чтобы пользователь указал адрес электронной почты, используйте просто mailto:
; если вы сами указали адрес электронной почты, используйте mailto:name@domain.com
Предлагаемый метод фильтрует все приложения, которые могут отправлять электронную почту (например, приложение электронной почты по умолчанию или gmail)
Я использовал com0com - он отлично подходит для настройки виртуальных COM-портов - который вам совсем не помогает.
Интерфейс COM-порта, по сути, является «чтением файлов». Мое приложение выдает исключение, когда я пытаюсь подключиться к COM-порту, из которого уже считывается другой экземпляр. Я не уверен, что вы могли бы попробовать открыть его как «только для чтения» вместо чтения-записи, но попробовать стоит.
У вас должна быть возможность написать виртуальный COM-порт, который может разветвлять ваши данные на лог-файл. Com0com имеет открытый исходный код, поэтому вы можете использовать его в качестве отправной точки.
Другим возможным решением может быть использование кабеля-разветвителя RS232 , который разветвляет последовательный сигнал на другой последовательный порт.
Я шел по тому же пути. Аппаратный разветвитель - самое простое решение.
Установка hub4com потребует использования мастера «Добавить новое оборудование». Если у вас много машин, географически разделенные машины или пользователи, которые не обладают техническими знаниями и не имеют необходимых разрешений, установка может быть неудобной.
Если это устаревшее приложение, запускается ли оно в ntvdm? Если это так, вы можете запустить его в DosBox вместо этого и изменить код DosBox для записи в файл в дополнение к отправке / получению в / из последовательного порта. DosBox также является кроссплатформенным.