title: How to check if the native/hardware keyboard is used?
body: <p>I want to check if the native/hardware keyboard is used, and also if possible I want to disable the third party keyboards.</p>
  
  <p>My goal is simple I use just the native android soft keyboard for entering values in my edit boxes and no other keyboard should be able to this </p>
  
  <p>Thanks</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>I know it is not good idea to do what I am trying to do, I know that the basic idea of android is to have  intents and activities and services who know to handle some types of intent according intent-filter. But this in every rule there is an exception, especially when we talk about security.</p>
  
  <p>I want to disable all third party keyboards, and if this is not possible to do it with some API or something... is there any workaround to this problem ?</p>
  
  <p><strong>EDIT</strong></p>
  
  <pre><code>String s=Settings.Secure.getString(getContentResolver(), Settings.Secure.DEFAULT_INPUT_METHOD);
  </code></pre>
  
  <p>This returns the currently enabled input method (keyboard),but I need something like the 'system keyboard' and I do not see any flag like that :-(.</p>
  
  <pre><code>List&lt;InputMethodInfo&gt; list = m.getInputMethodList();
  </code></pre>
  
  <p>One possible solution is to take the list[0] as the keyboard I am searching, but I do not want to relay on the order (except if the order is garanteed that always the keyboard with index 0 is the one that comes install with the phone)</p>
  
  <p>this is the value of list</p>
  
  <pre><code>[InputMethodInfo{com.htc.android.htcime/.HTCIMEService, settings: com.htc.android.htcime.HTCIMESettings}, InputMethodInfo{com.volosyukivan/.WiFiInputMethod, settings: null}]
  </code></pre>