1<?xml version="1.0" encoding="UTF-8"?> 2<!-- 3 Copyright 2014 The Android Open Source Project 4 5 Licensed under the Apache License, Version 2.0 (the "License"); 6 you may not use this file except in compliance with the License. 7 You may obtain a copy of the License at 8 9 http://www.apache.org/licenses/LICENSE-2.0 10 11 Unless required by applicable law or agreed to in writing, software 12 distributed under the License is distributed on an "AS IS" BASIS, 13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 See the License for the specific language governing permissions and 15 limitations under the License. 16--> 17<sample> 18 <name>CommitContentSampleApp</name> 19 <group>Input</group> 20 <package>com.example.android.commitcontent.app</package> 21 22 <minSdk>25</minSdk> 23 24 <strings> 25 <intro> 26 <![CDATA[ 27 This sample demonstrates how to write an application which accepts rich content 28 (such as images) sent from a keyboard using the Commit Content API. 29 ]]> 30 </intro> 31 </strings> 32 33 <template src="base-build" /> 34 35 <metadata> 36 <status>PUBLISHED</status> 37 <categories>System</categories> 38 <technologies>Android</technologies> 39 <languages>Java</languages> 40 <solutions>Mobile</solutions> 41 <level>INTERMEDIATE</level> 42 <icon>screenshots/icon-web.png</icon> 43 <screenshots> 44 <img>screenshots/screenshot-1.png</img> 45 </screenshots> 46 <api_refs> 47 <android>android.widget.EditText</android> 48 <android>import android.support.v13.view.inputmethod.EditorInfoCompat</android> 49 <android>import android.support.v13.view.inputmethod.InputConnectionCompat</android> 50 <android>import android.support.v13.view.inputmethod.InputContentInfoCompat</android> 51 </api_refs> 52 53 <description> 54<![CDATA[ 55This sample demonstrates how to write an application which accepts rich content (such as images) 56sent from a keyboard using the Commit Content API. 57]]> 58 </description> 59 60 <intro> 61<![CDATA[ 62Users often want to communicate with emojis, stickers, and other kinds of rich content. In previous 63versions of Android, soft keyboards (input method editors or IMEs) could send only unicode emoji to 64apps. For rich content (such as images), apps had to either build app-specific APIs that couldn't 65be used in other apps or use workarounds like sending images through the Easy Share Action or the 66clipboard. 67 68Now in Android 7.1 (API 25), the Android SDK includes the [Commit Content API][1], which provides a 69universal way for IMEs to send images and other rich content directly to a text editor in an app. 70The API is also available in the v13 Support Library (ver. 25.0), supporting devices as early as 71Android 3.2 (API 13). 72 73With this API, you can build messaging apps that accept rich content from any keyboard, as well as 74keyboards that can send rich content to any app. 75 76[1]: https://android-dot-devsite.googleplex.com/preview/image-keyboard.html 77]]> 78 </intro> 79 </metadata> 80</sample> 81