{"id":19491723,"url":"https://github.com/rudderlabs/rudder-sdk-android","last_synced_at":"2025-04-25T19:32:22.236Z","repository":{"id":37692950,"uuid":"212853669","full_name":"rudderlabs/rudder-sdk-android","owner":"rudderlabs","description":"Android SDK for RudderStack - the Customer Data Platform for Developers.","archived":false,"fork":false,"pushed_at":"2025-04-11T19:25:19.000Z","size":4408,"stargazers_count":18,"open_issues_count":3,"forks_count":28,"subscribers_count":6,"default_branch":"develop","last_synced_at":"2025-04-20T19:43:48.527Z","etag":null,"topics":["analytics","analytics-platform","android","android-library","android-sdk","java","kotlin","open-source","rudder","sdk"],"latest_commit_sha":null,"homepage":"https://www.rudderstack.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rudderlabs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-10-04T16:02:48.000Z","updated_at":"2025-04-02T11:50:00.000Z","dependencies_parsed_at":"2023-10-22T17:33:50.808Z","dependency_job_id":"0a87a246-9e56-4076-aef9-f79996ad4870","html_url":"https://github.com/rudderlabs/rudder-sdk-android","commit_stats":null,"previous_names":[],"tags_count":78,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rudderlabs%2Frudder-sdk-android","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rudderlabs%2Frudder-sdk-android/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rudderlabs%2Frudder-sdk-android/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rudderlabs%2Frudder-sdk-android/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rudderlabs","download_url":"https://codeload.github.com/rudderlabs/rudder-sdk-android/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250882637,"owners_count":21502341,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["analytics","analytics-platform","android","android-library","android-sdk","java","kotlin","open-source","rudder","sdk"],"created_at":"2024-11-10T21:17:55.556Z","updated_at":"2025-04-25T19:32:21.054Z","avatar_url":"https://github.com/rudderlabs.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://rudderstack.com/\"\u003e\n    \u003cimg src=\"https://user-images.githubusercontent.com/59817155/121357083-1c571300-c94f-11eb-8cc7-ce6df13855c9.png\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\u003cb\u003eThe Customer Data Platform for Developers\u003c/b\u003e\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://search.maven.org/search?q=g:%22com.rudderstack.android.sdk%22%20AND%20a:%22core%22\"\u003e\n    \u003cimg src=\"https://img.shields.io/maven-central/v/com.rudderstack.android.sdk/core.svg?label=Maven%20Central\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cb\u003e\n    \u003ca href=\"https://rudderstack.com\"\u003eWebsite\u003c/a\u003e\n    ·\n    \u003ca href=\"https://rudderstack.com/docs/stream-sources/rudderstack-sdk-integration-guides/rudderstack-android-sdk/\"\u003eDocumentation\u003c/a\u003e\n    ·\n    \u003ca href=\"https://rudderstack.com/join-rudderstack-slack-community\"\u003eCommunity Slack\u003c/a\u003e\n  \u003c/b\u003e\n\u003c/p\u003e\n\n---\n\n\n# RudderStack Android SDK\n\nRudderStack's Android SDK lets you track event data from your Android applications. After integrating the SDK, you will be able to send the event data to your preferred destination/s such as Google Analytics, Amplitude, and more.\n\nFor detailed documentation on the Android SDK, click [**here**](https://rudderstack.com/docs/stream-sources/rudderstack-sdk-integration-guides/rudderstack-android-sdk).\n\n## Get started with the Android SDK\n\n1. Add these lines to your project level `build.gradle` file:\n\n```groovy\nbuildscript {\n    repositories {\n        mavenCentral()\n    }\n}\n\nallprojects {\n    repositories {\n        mavenCentral()\n    }\n}\n```\n\n2. Then, add the dependency under `dependencies` as shown:\n\n```groovy\n\nimplementation 'com.rudderstack.android.sdk:core:1.x.x'\n```\n\n## Initializing ```RudderClient```\n\n```\nval rudderClient: RudderClient = RudderClient.getInstance(\n    this,\n    \u003cWRITE_KEY\u003e,\n    RudderConfig.Builder()\n        .withDataPlaneUrl(\u003cDATA_PLANE_URL\u003e)\n        .build()\n)\n```\nor (compatible with existing Segment code)\n```\nRudderClient.Builder builder = new RudderClient.Builder(this, \u003cWRITE_KEY\u003e);\nRudderClient.setSingletonInstance(builder.build());\n```\n\n## Sending events\n```\nrudderClient.track(\n    RudderMessageBuilder()\n        .setEventName(\"some_custom_event\")\n        .setProperty(\n            TrackPropertyBuilder()\n                .setCategory(\"test_category\")\n                .build()\n        )\n        .setUserId(\"test_user_id\")\n)\n```\nor (compatible with existing Segment instrumentation code)\n```\nString customEvent = \"some_custom_event\";\nString propertyKey = \"some_property_key\";\nString propertyValue = \"some_property_value\";\nRudderClient.with(this).track(\n        customEvent,\n        new RudderProperty().putValue(propertyKey, propertyValue)\n);\n```\n\nFor more information on the different types of events supported by the Android SDK, refer to our [**docs**](https://rudderstack.com/docs/stream-sources/rudderstack-sdk-integration-guides/rudderstack-android-sdk).\n\n## Registering your callbacks\n\nFor device mode destinations, you can register callbacks, which will be executed after the native SDK has been successfully initialized. Use the `onIntegrationReady` method to register your callback.\n\nThe following snippet shows an example:\n\n```\nrudderClient.onIntegrationReady(\"Lotame\") {\n  var nativeSDK  = (it as LotameIntegration)\n  // your custom code\n}\n```\nThe variable `it` contains the intialized nativeSDK object.\n\n\u003e The method `onIntegrationReady` accepts two arguments: the integration name (e.g. \"Lotame\") and the callback.\n\n[**Registering Lotame's onSync callback**](https://github.com/rudderlabs/rudder-integration-lotame-android#register-your-onsync-callback) shows one more example of registering a callback using `onIntegrationReady`.\n\n## Contribute\n\nWe would love to see you contribute to this project. Get more information on how to contribute [**here**](./CONTRIBUTING.md).\n\n## About RudderStack\n\n[**RudderStack**](https://rudderstack.com/) is a **customer data platform for developers**. Our tooling makes it easy to deploy pipelines that collect customer data from every app, website and SaaS platform, then activate it in your warehouse and business tools.\n\nMore information on RudderStack can be found [**here**](https://github.com/rudderlabs/rudder-server).\n\n## Contact us\n\nFor more support on using the RudderStack Android SDK, you can [**contact us**](https://rudderstack.com/contact/) or start a conversation on our [**Slack**](https://rudderstack.com/join-rudderstack-slack-community) channel.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frudderlabs%2Frudder-sdk-android","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frudderlabs%2Frudder-sdk-android","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frudderlabs%2Frudder-sdk-android/lists"}