1 2Android CommitContentSampleIME Sample 3=================================== 4 5This sample demonstrates how to write an keyboard which sends rich content (such as images) to text 6fields using the Commit Content API. 7 8Introduction 9------------ 10 11Users often want to communicate with emojis, stickers, and other kinds of rich content. In previous 12versions of Android, soft keyboards (input method editors or IMEs) could send only unicode emoji to 13apps. For rich content (such as images), apps had to either build app-specific APIs that couldn't 14be used in other apps or use workarounds like sending images through the Easy Share Action or the 15clipboard. 16 17Now in Android 7.1 (API 25), the Android SDK includes the [Commit Content API][1], which provides a 18universal way for IMEs to send images and other rich content directly to a text editor in an app. 19The API is also available in the v13 Support Library (ver. 25.0), supporting devices as early as 20Android 3.2 (API 13). 21 22With this API, you can build messaging apps that accept rich content from any keyboard, as well as 23keyboards that can send rich content to any app. 24 25**Note:** This sample does not have a default Activity. After installing it, you will need to enable 26this app as a keyboard by navigating to *Settings > Languages & Input > Virtual Keyboard > Manage 27Keyboards*. This keyboard can then be accessed by pressing the virtual keyboard icon in the 28lower-right hand corner of the display while in a text field. 29 30[1]: https://android-dot-devsite.googleplex.com/preview/image-keyboard.html 31 32Pre-requisites 33-------------- 34 35- Android SDK 27 36- Android Build Tools v27.0.2 37- Android Support Repository 38 39Screenshots 40------------- 41 42<img src="screenshots/screenshot-1.png" height="400" alt="Screenshot"/> 43 44Getting Started 45--------------- 46 47This sample uses the Gradle build system. To build this project, use the 48"gradlew build" command or use "Import Project" in Android Studio. 49 50Support 51------- 52 53- Google+ Community: https://plus.google.com/communities/105153134372062985968 54- Stack Overflow: http://stackoverflow.com/questions/tagged/android 55 56If you've found an error in this sample, please file an issue: 57https://github.com/googlesamples/android-CommitContentSampleIME 58 59Patches are encouraged, and may be submitted by forking this project and 60submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details. 61 62License 63------- 64 65Copyright 2017 The Android Open Source Project, Inc. 66 67Licensed to the Apache Software Foundation (ASF) under one or more contributor 68license agreements. See the NOTICE file distributed with this work for 69additional information regarding copyright ownership. The ASF licenses this 70file to you under the Apache License, Version 2.0 (the "License"); you may not 71use this file except in compliance with the License. You may obtain a copy of 72the License at 73 74http://www.apache.org/licenses/LICENSE-2.0 75 76Unless required by applicable law or agreed to in writing, software 77distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 78WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 79License for the specific language governing permissions and limitations under 80the License. 81