This branch fixes the error that happens with deep links in which clicking on the push notification one might get a ClassNotFoundException when unmarshalling: com.facebook.events.common.ActionSource
This open-source library allows you to integrate Facebook into your Android app.
Learn more about about the provided samples, documentation, integrating the SDK into your app, accessing source code, and more at https://developers.facebook.com/docs/android
- Check-out the tutorials available online at https://developers.facebook.com/docs/android/getting-started
- Start coding! Visit https://developers.facebook.com/docs/android/ for tutorials and reference documentation.
- Login - https://developers.facebook.com/docs/facebook-login
- Sharing - https://developers.facebook.com/docs/sharing
- Places - https://developers.facebook.com/docs/places
- Messenger - https://developers.facebook.com/docs/messenger-expressions
- App Links - https://developers.facebook.com/docs/applinks
- Analytics - https://developers.facebook.com/docs/analytics
- Graph API - https://developers.facebook.com/docs/android/graph
The SDK is separated into modules with the following structure. Each box represents a module with an estimated size when included into an app (when included using proguard and supporting a single language).
+--------------------------------------------------------------+
| |
| Facebook-android-sdk : 335.39 kb |
| |
+--------------------------------------------------------------+
+----------+ +----------+ +----------+ +----------+ +----------+
| | | | | | | | | |
| | | | | | | | | |
| Facebook | | Facebook | | Facebook | | Facebook | | Facebook |
| -Login : | | -Share : | | -Places :| |-Messenger: |-Applinks:|
| | | | | | | | | |
| 246.66 kb| | 247.92 kb| | 53.48 kb | | 91.96 kb | | 67.00 kb |
+----------+ +----------+ | | | | | |
+-----------------------+ | | | | | |
| | | | | | | |
| Facebook-Common : N/A | | | | | | |
| | | | | | | |
+-----------------------+ +----------+ +----------+ +----------+
+--------------------------------------------------------------+
| |
| Facebook-Core : 52.46 kb |
| |
+--------------------------------------------------------------+
Example: Including the Facebook-Login module (which depends on Facebook-Common and Facebook-Core) would increase your app's size by an estimated 243.91 kb and including just Facebook-Core would only increase your size by 50.98 kb.
Facebook SDKs are broken up into separate modules as shown above. To ensure the most optimized use of space only install the modules that you intend to use. To get started, see the Installation section below.
Facebook SDKs are published to Maven as independent modules. To utilize a feature listed above
include the appropriate dependency (or dependencies) listed below in your app/build.gradle
file.
dependencies {
// Facebook Core only (Analytics)
compile 'com.facebook.android:facebook-core:4.27'
// Facebook Login only
compile 'com.facebook.android:facebook-login:4.27'
// Facebook Share only
compile 'com.facebook.android:facebook-share:4.27'
// Facebook Places only
compile 'com.facebook.android:facebook-places:4.27'
// Facbeook Messenger only
compile 'com.facebook.android:facebook-messenger:4.27'
// Facebook App Links only
compile 'com.facebook.android:facebook-applinks:4.27'
// Facebook Android SDK (everything)
compile 'com.facebook.android:facebook-android-sdk:4.27'
}
You may also need to add the following to your project/build.gradle file.
buildscript {
repositories {
mavenCentral()
}
}
Please report bugs or issues to https://developers.facebook.com/bugs/
You can also join the Facebook Developers Group on Facebook (https://www.facebook.com/groups/fbdevelopers/) or ask questions on Stack Overflow (http://facebook.stackoverflow.com)
We are able to accept contributions to the Facebook SDK for Android. To contribute please do the following.
- Follow the instructions in the CONTRIBUTING.mdown.
- Submit your pull request to the dev branch. This allows us to merge your change into our internal master and then push out the change in the next release.
Except as otherwise noted, the Facebook SDK for Android is licensed under the Facebook Platform License (https://github.com/facebook/facebook-android-sdk/blob/master/LICENSE.txt).
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-
By enabling Facebook integrations, including through this SDK, you can share information with Facebook, including information about people’s use of your app. Facebook will use information received in accordance with our Data Use Policy (https://www.facebook.com/about/privacy/), including to provide you with insights about the effectiveness of your ads and the use of your app. These integrations also enable us and our partners to serve ads on and off Facebook.
-
You may limit your sharing of information with us by updating the Insights control in the developer tool (https://developers.facebook.com/apps/[app_id]/settings/advanced).
-
If you use a Facebook integration, including to share information with us, you agree and confirm that you have provided appropriate and sufficiently prominent notice to and obtained the appropriate consent from your users regarding such collection, use, and disclosure (including, at a minimum, through your privacy policy). You further agree that you will not share information with us about children under the age of 13.
-
You agree to comply with all applicable laws and regulations and also agree to our Terms (https://www.facebook.com/policies/), including our Platform Policies (https://developers.facebook.com/policy/) and Advertising Guidelines, as applicable (https://www.facebook.com/ad_guidelines.php).
By using the Facebook SDK for Android you agree to these terms.