Custom Hindi Keyboard
<p>I am working on an <code>Android</code> project.Project is to develop a <code>Hindi</code> android keyboard. I have seen many tutorials and articles regarding development of Custom Soft Keyboards. I have also made a keyboard(English) using <a href="http://code.tutsplus.com/tutorials/create-a-custom-keyboard-on-android--cms-22615" rel="nofollow">this</a> tutorial and it is working just fine. Now I thought that for <code>Hindi</code> (or any other language for that matter) I have to change the locale name in <code>method.xml</code> file and <code>android:codes</code> &amp; <code>android:keylabel</code> tags in <code>qwerty.xml</code> file. But I am stuck now because I can't find the codes(ASCII or whatever should be used) for <code>Hindi</code> alphabets. Any help would be highly appreciated.</p>

<p>This is my <code>method.xml</code> file:</p>

<pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;input-method xmlns:android="http://schemas.android.com/apk/res/android"&gt;
    &lt;subtype
        android:label="@string/subtype_hi_IN"
        android:imeSubtypeLocale="hi_IN"
        android:imeSubtypeMode="keyboard" /&gt;
&lt;/input-method&gt; 
</code></pre>

<p>This is my <code>qwerty.xml</code> file:</p>

<pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;Keyboard xmlns:android="http://schemas.android.com/apk/res/android"
    android:keyWidth="10%p"
    android:horizontalGap="0px"
    android:verticalGap="0px"
    android:keyHeight="60dp"&gt;
     &lt;Row&gt;
    &lt;Key android:codes="49" android:keyLabel="1" android:keyEdgeFlags="left"/&gt;
    &lt;Key android:codes="50" android:keyLabel="2"/&gt;
    &lt;Key android:codes="51" android:keyLabel="3"/&gt;
    &lt;Key android:codes="52" android:keyLabel="4"/&gt;
    &lt;Key android:codes="53" android:keyLabel="5"/&gt;
    &lt;Key android:codes="54" android:keyLabel="6"/&gt;
    &lt;Key android:codes="55" android:keyLabel="7"/&gt;
    &lt;Key android:codes="56" android:keyLabel="8"/&gt;
    &lt;Key android:codes="57" android:keyLabel="9"/&gt;
    &lt;Key android:codes="48" android:keyLabel="0" android:keyEdgeFlags="right"/&gt;
&lt;/Row&gt;
    &lt;Row&gt;
        &lt;Key android:codes="113" android:keyLabel="q" android:keyEdgeFlags="left"/&gt;
        &lt;Key android:codes="119" android:keyLabel="w"/&gt;
        &lt;Key android:codes="101" android:keyLabel="e"/&gt;
        &lt;Key android:codes="114" android:keyLabel="r"/&gt;
        &lt;Key android:codes="116" android:keyLabel="t"/&gt;
        &lt;Key android:codes="121" android:keyLabel="y"/&gt;
        &lt;Key android:codes="117" android:keyLabel="u"/&gt;
        &lt;Key android:codes="105" android:keyLabel="i"/&gt;
        &lt;Key android:codes="111" android:keyLabel="o"/&gt;
        &lt;Key android:codes="112" android:keyLabel="p" android:keyEdgeFlags="right"/&gt;
    &lt;/Row&gt;
    &lt;Row&gt;
        &lt;Key android:codes="97"  android:keyLabel="a" android:keyEdgeFlags="left"/&gt;
        &lt;Key android:codes="115" android:keyLabel="s"/&gt;
        &lt;Key android:codes="100" android:keyLabel="d"/&gt;
        &lt;Key android:codes="102" android:keyLabel="f"/&gt;
        &lt;Key android:codes="103" android:keyLabel="g"/&gt;
        &lt;Key android:codes="104" android:keyLabel="h"/&gt;
        &lt;Key android:codes="106" android:keyLabel="j"/&gt;
        &lt;Key android:codes="107" android:keyLabel="k"/&gt;
        &lt;Key android:codes="108" android:keyLabel="l"/&gt;
        &lt;Key android:codes="35,64" android:keyLabel="\# \@" android:keyEdgeFlags="right"/&gt;
    &lt;/Row&gt;
    &lt;Row&gt;
        &lt;Key android:codes="-1" android:keyLabel="CAPS" android:keyEdgeFlags="left"/&gt;
        &lt;Key android:codes="122" android:keyLabel="z"/&gt;
        &lt;Key android:codes="120" android:keyLabel="x"/&gt;
        &lt;Key android:codes="99" android:keyLabel="c"/&gt;
        &lt;Key android:codes="118" android:keyLabel="v"/&gt;
        &lt;Key android:codes="98" android:keyLabel="b"/&gt;
        &lt;Key android:codes="110" android:keyLabel="n"/&gt;
        &lt;Key android:codes="109" android:keyLabel="m"/&gt;
        &lt;Key android:codes="46" android:keyLabel="."/&gt;
        &lt;Key android:codes="63,33,58" android:keyLabel="\? ! :" android:keyEdgeFlags="right"/&gt;
    &lt;/Row&gt;
    &lt;Row android:rowEdgeFlags="bottom"&gt;
        &lt;Key android:codes="44" android:keyLabel="," android:keyWidth="10%p"  android:keyEdgeFlags="left"/&gt;
        &lt;Key android:codes="47" android:keyLabel="/" android:keyWidth="10%p" /&gt;
        &lt;Key android:codes="32" android:keyLabel="SPACE" android:keyWidth="40%p" android:isRepeatable="true"/&gt;
        &lt;Key android:codes="-5" android:keyLabel="DEL" android:keyWidth="20%p" android:isRepeatable="true"/&gt;
        &lt;Key android:codes="-4" android:keyLabel="DONE" android:keyWidth="20%p" android:keyEdgeFlags="right"/&gt;
    &lt;/Row&gt;
&lt;/Keyboard&gt;
</code></pre>