1 2 Android DirectShare Sample 3 =================================== 4 5 Sample demonstrating how to show some options directly in the list of share intent candidates. 6 7 Introduction 8 ------------ 9 10 [Direct Share][1] is a feature that allows apps to show their internal options directly in the 11 system Intent chooser dialog. This sample is a dummy messaging app, and just like any other 12 messaging apps, it receives intents for sharing a plain text. When a user shares some text from some 13 other app, this sample app will be listed as an option. Using the Direct Share feature, this app 14 also shows some of contacts directly in the chooser dialog. 15 16 To enable Direct Share, apps need to implement a Service extending 17 [ChooserTargetService][2]. Override the method [onGetChooserTargets][3] and return a list of Direct 18 Share options. 19 20 In your AndroidManifest.xml, add a meta-data tag in your Activity that receives the Intent. Specify 21 android:name as android.service.chooser.chooser_target_service, and point the android:value to the 22 Service. 23 24 [1]: https://developer.android.com/reference/android/service/chooser/package-summary.html 25 [2]: https://developer.android.com/reference/android/service/chooser/ChooserTargetService.html 26 [3]: https://developer.android.com/reference/android/service/chooser/ChooserTargetService.html#onGetChooserTargets(android.content.ComponentName%2C%20android.content.IntentFilter) 27 28 Pre-requisites 29 -------------- 30 31 - Android SDK 23 32 - Android Build Tools v23.0.3 33 - Android Support Repository 34 35 Screenshots 36 ------------- 37 38 <img src="screenshots/1-main.png" height="400" alt="Screenshot"/> <img src="screenshots/2-intent.png" height="400" alt="Screenshot"/> <img src="screenshots/3-message.png" height="400" alt="Screenshot"/> 39 40 Getting Started 41 --------------- 42 43 This sample uses the Gradle build system. To build this project, use the 44 "gradlew build" command or use "Import Project" in Android Studio. 45 46 Support 47 ------- 48 49 - Google+ Community: https://plus.google.com/communities/105153134372062985968 50 - Stack Overflow: http://stackoverflow.com/questions/tagged/android 51 52 If you've found an error in this sample, please file an issue: 53 https://github.com/googlesamples/android-DirectShare 54 55 Patches are encouraged, and may be submitted by forking this project and 56 submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details. 57 58 License 59 ------- 60 61 Copyright 2016 The Android Open Source Project, Inc. 62 63 Licensed to the Apache Software Foundation (ASF) under one or more contributor 64 license agreements. See the NOTICE file distributed with this work for 65 additional information regarding copyright ownership. The ASF licenses this 66 file to you under the Apache License, Version 2.0 (the "License"); you may not 67 use this file except in compliance with the License. You may obtain a copy of 68 the License at 69 70 http://www.apache.org/licenses/LICENSE-2.0 71 72 Unless required by applicable law or agreed to in writing, software 73 distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 74 WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 75 License for the specific language governing permissions and limitations under 76 the License. 77