Android-клавиатура: возможно ли программно менять языки клавиатуры из системного приложения? [Дубликат]

Если вы используете этот код на локальном сервере (т. е. ваш компьютер для целей разработки), он не отправит электронное письмо получателю. Что произойдет, он создаст файл .txt в папке с именем mailoutput.

В случае, если вы используете бесплатный сервисный сервис, например 000webhost или hostinger, эти поставщики услуг отключают функцию mail(), чтобы предотвратить непреднамеренное использование электронной почты, спам и т. д. Я предпочитаю вас чтобы связаться с ними, чтобы узнать, поддерживают ли они эту функцию.

Если вы уверены, что поставщик услуг поддерживает функцию mail (), вы можете проверить это руководство по PHP для дальнейшей справки, PHP mail ()

Чтобы проверить, поддерживает ли ваша служба хостинга функцию mail (), попробуйте запустить этот код (не забудьте изменить адрес электронной почты получателя)


Надеюсь, что это помогли.

3
задан Hunain Usman 28 March 2016 в 11:12
поделиться

2 ответа

После того, как некоторые исследования здесь и там нашли ответ, в первую очередь вам нужно создать пользовательскую клавиатуру View, которая расширяет клавиатуруView и в ней создает переменную значения статического ключа, например

static final int KEYCODE_LANGUAGE_SWITCH_ENG = -102;
static final int KEYCODE_LANGUAGE_SWITCH_URDU = -103;

, после чего в ваш класс IME, где вы реализовали метод вводаMethodService, создайте клавиатуру внутри функции переопределения onInitializeInterface. например

mSymbolsKeyboard = new Keyboard(this, R.xml.qwerty2);
mEngQwertyKeyboard = new Keyboard(this, R.xml.eng_qwerty);

, добавьте эти конечные статические ключи в функцию переопределения onKey в качестве корпусов переключателей, а в случаях, соответственно, установите клавиатуру:

setKeyboard(mEngQwertyKeyboard);
-4
ответ дан Hunain Usman 23 August 2018 в 00:29
поделиться
  • 1
    для разных языков, необходимых для создания разных xml раскладок клавиатуры? – sneha desai 23 August 2016 в 06:40
  • 2
    только системные приложения могут устанавливать пользовательскую клавиатуру. – Prateek Bhardwaj 21 November 2017 в 13:10
  • 3
    после предоставления разрешения на запись безопасных настроек, приложение получило сбой. Он сказал, что системные разрешения разрешены только системными приложениями. – Prateek Bhardwaj 21 November 2017 в 13:11
  • 4
    Не могли бы вы описать правильное и полное описание, я смущен, как реализовать их и т. Д. – Dharmik Ghori 7 July 2018 в 06:53

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

Сначала вы должны указать разрешение Android в AndroidManifest.xml вашего приложения

"android.permission.WRITE_SECURE_SETTINGS"

Затем вам нужно определить идентификатор вашей клавиатуры.

-> Чтобы узнать идентификатор, вам нужно сохранить свою клавиатуру по умолчанию из меню настройки вручную, а затем напечатать этот документ где-нибудь,

System.out.println(Settings.Secure.getString(getContentResolver(),Settings.Secure.DEFAULT_INPUT_METHOD));

После того, как вы напечатаете идентификатор, и вы знаете свой идентификатор клавиатуры, вы можете сделать это согласно ниже (я поменял мою клавиатуру по умолчанию на японский)

InputMethodManager imeManager = (InputMethodManager) getApplicationContext().getSystemService(INPUT_METHOD_SERVICE);

//imeManager.showInputMethodPicker(); //This is to see available keyboards.
imeManager.setInputMethod(null,"jp.co.omronsoft.openwnn/.OpenWnnJAJP");

Наслаждайтесь !!

2
ответ дан Kalrav J Parsana 23 August 2018 в 00:29
поделиться
  • 1
    после предоставления разрешения на запись безопасных настроек, приложение получило сбой. Он сказал, что системные разрешения разрешены только системными приложениями. – Prateek Bhardwaj 21 November 2017 в 13:11
  • 2
    только системные приложения могут устанавливать пользовательскую клавиатуру. – Prateek Bhardwaj 21 November 2017 в 13:12
Другие вопросы по тегам:

Похожие вопросы: