README.md
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