Tell me more ×
Stack Overflow is a question and answer site for professional and enthusiast programmers. It's 100% free, no registration required.

Hi i have developed one android keyboard. Its working properly as separate app on any device. Now i need to show my app in (Setting->Input)

Below image shows external keyboard added in device.

enter image description here

As you see in image Android keyboard is default.

Example. Swiftkey 3 is added externally.

But i don't know how to add my own keyboard so i can choose this.

share|improve this question
"Its working properly as separate app on any device" -- what does this mean? Did you implement an InputMethodEditor and InputMethodService? – CommonsWare Jul 8 at 15:15
No i didn't i have tried using reference as given below but getting some problem.. – Aniket Jul 8 at 15:18

This question has an open bounty worth +50 reputation from Aniket ending in 4 hours.

The question is widely applicable to a large audience. A detailed canonical answer is required to address all the concerns.

2 Answers

You should first take a look here. Then continue with this thread here, as stated there:

Some tips:

An inputMethod is basically an Android Service, so yes, you can do HTTP and all the stuff you can do in a Service.

You can open Activities and dialogs from the InputMethod. Once again, it's just a Service.

Here's another tutorial on the topic. I hope all this is helpful for you.

Cheers

share|improve this answer
i have already used this reference but not getting solution, have you successfully implemented this help so your keyboard will be running from Settings, not as separate app. – Aniket Jul 8 at 14:52
Which reference did you use? Did you take a look at the tutorial below ? – g00dy Jul 8 at 15:11
Nope, let me check this link... – Aniket Jul 8 at 15:16

You have to create InputMethodService... and just add below code in Menifest.xml file

<service android:name="FastInputIME"
        android:label="@string/fast_input_label"
        android:permission="android.permission.BIND_INPUT_METHOD">
        <intent-filter>
            <action android:name="android.view.InputMethod" />
        </intent-filter>
        <meta-data android:name="android.view.im" android:resource="@xml/method" />
    </service>

Permisson:

<uses-permission android:name="android.permission.BIND_INPUT_METHOD"/>
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.