{"id":15490434,"url":"https://github.com/blaugold/user_messaging_platform","last_synced_at":"2025-04-22T19:09:38.575Z","repository":{"id":41980281,"uuid":"325337828","full_name":"blaugold/user_messaging_platform","owner":"blaugold","description":"A flutter plugin which provides a Dart API for the User Messaging Platform (UMP) SDK, which is the Consent Management Platform (CMP) SDK provided as part of Google's Funding Choices.","archived":true,"fork":false,"pushed_at":"2025-03-23T14:44:57.000Z","size":95,"stargazers_count":7,"open_issues_count":3,"forks_count":13,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-22T19:09:27.803Z","etag":null,"topics":["cmp","flutter","funding-choices","google","plugin","sdk","ump","user-messaging-platform"],"latest_commit_sha":null,"homepage":"https://pub.dev/packages/user_messaging_platform","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/blaugold.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-29T16:42:08.000Z","updated_at":"2025-03-25T06:59:18.000Z","dependencies_parsed_at":"2025-03-04T04:31:02.252Z","dependency_job_id":null,"html_url":"https://github.com/blaugold/user_messaging_platform","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blaugold%2Fuser_messaging_platform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blaugold%2Fuser_messaging_platform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blaugold%2Fuser_messaging_platform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blaugold%2Fuser_messaging_platform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blaugold","download_url":"https://codeload.github.com/blaugold/user_messaging_platform/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250306637,"owners_count":21408926,"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":["cmp","flutter","funding-choices","google","plugin","sdk","ump","user-messaging-platform"],"created_at":"2024-10-02T07:21:16.978Z","updated_at":"2025-04-22T19:09:38.569Z","avatar_url":"https://github.com/blaugold.png","language":"Dart","readme":"\u003e [!IMPORTANT]\n\u003e This package has been depreacted in favor or the UMP API that is available as part of\n\u003e [`google_mobile_ads`](https://pub.dev/packages/google_mobile_ads).\n\n[![](https://badgen.net/pub/v/user_messaging_platform)](https://pub.dev/packages/user_messaging_platform)\n![](https://badgen.net/pub/license/user_messaging_platform)\n![](https://badgen.net/pub/flutter-platform/user_messaging_platform)\n\nA flutter plugin which provides a Dart API for the User Messaging Platform (UMP)\nSDK, which is the Consent Management Platform (CMP) SDK provided as part of\nGoogle's [Funding Choices].\n\nAlso, see the\n[iabtcf_consent_info](https://pub.dev/packages/iabtcf_consent_info) package, for\nreading TCF consent info, made available though Consent Management Platform\nSDKs, such as UMP. If you have configured Funding Choices to obtain consent for\nadditional purposes for you, the publisher, this package allows you to access\nthat information.\n\n---\n\nIf you're looking for a **database solution**, check out\n[`cbl`](https://pub.dev/packages/cbl), another project of mine. It brings\nCouchbase Lite to **standalone Dart** and **Flutter**, with support for:\n\n- **Full-Text Search**,\n- **Expressive Queries**,\n- **Data Sync**,\n- **Change Notifications**\n\nand more.\n\n---\n\n## Setup\n\nThe UMP SDK requires some platform dependent setup.\n\n### Android\n\n#### App ID\n\n1. Obtain your APP ID by following the\n   [Help Center instructions](https://support.google.com/admob/answer/7356431).\n\n1. Add your app ID to your AndroidManifest.xml:\n\n```xml\n\u003c?xml version=\"1.0\" encoding=\"utf-8\"?\u003e\n\u003cmanifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n   package=\"com.example.rewardedinterstitialexample\"\u003e\n\n   \u003capplication\n       android:allowBackup=\"true\"\n       android:icon=\"@mipmap/ic_launcher\"\n       android:label=\"@string/app_name\"\n       android:roundIcon=\"@mipmap/ic_launcher_round\"\n       android:supportsRtl=\"true\"\n       android:theme=\"@style/AppTheme\"\u003e\n       \u003cmeta-data\n           android:name=\"com.google.android.gms.ads.APPLICATION_ID\"\n           android:value=\"YOUR-APP-ID\"/\u003e\n       \u003cactivity android:name=\".MainActivity\"\u003e\n           \u003cintent-filter\u003e\n               \u003caction android:name=\"android.intent.action.MAIN\" /\u003e\n               \u003ccategory android:name=\"android.intent.category.LAUNCHER\" /\u003e\n           \u003c/intent-filter\u003e\n       \u003c/activity\u003e\n   \u003c/application\u003e\n\n\u003c/manifest\u003e\n```\n\n#### More information\n\nFor more information visit the\n[Android UMP SDK quick start guide](https://developers.google.com/admob/ump/android/quick-start).\n\n### iOS\n\n#### App ID\n\n1. Obtain your APP ID by following the\n   [Help Center instructions](https://support.google.com/admob/answer/7356431).\n\n1. Add your app ID to your Info.plist:\n\n```xml\n\u003ckey\u003eGADApplicationIdentifier\u003c/key\u003e\n\u003cstring\u003eYOUR-APP-ID\u003c/string\u003e\n```\n\n#### App Tracking Transparency\n\nIf you plan to use the App Tracking Transparency framework:\n\n1. Add a `NSUserTrackingUsageDescription` to your Info.plist:\n\n```xml\n\u003ckey\u003eNSUserTrackingUsageDescription\u003c/key\u003e\n\u003cstring\u003eThis identifier will be used to deliver personalized ads to you.\u003c/string\u003e\n```\n\n1. Link the `Runner` target to the `AppTrackingTransparency` under `Targets` -\u003e\n   `Runner` -\u003e `Frameworks, Libraries, and Embedded Content`.\n\n#### More information\n\nFor more information visit the\n[iOS UMP SDK quick start guide](https://developers.google.com/admob/ump/ios/quick-start).\n\n## Usage\n\nThis basic usage example show how to update the consent info and show the\nconsent form to the user if consent is required:\n\n```dart\nvoid updateConsent() async {\n  // Make sure to continue with the latest consent info.\n  var info = await UserMessagingPlatform.instance.requestConsentInfoUpdate();\n\n  // Show the consent form if consent is required.\n  if (info.consentStatus == ConsentStatus.required) {\n    // `showConsentForm` returns the latest consent info, after the consent from has been closed.\n    info = await UserMessagingPlatform.instance.showConsentForm();\n  }\n}\n```\n\n### iOS: App Tracking Transparency\n\nYou can let the UMP SDK handle the\n[ATT permission request](https://support.google.com/fundingchoices/answer/9995402).\n\nIf you would like to determine when to show the permission request yourself, you\ncan check the `TrackingAuthorizationStatus` and `requestTrackingAuthorization`\nthrough this plugin:\n\n```dart\nvoid showATTPermissionRequest() async {\n  final status = await UserMessagingPlatform.instance.getTrackingAuthorizationStatus();\n\n  if (status == TrackingAuthorizationStatus.notDetermined) {\n    await UserMessagingPlatform.instance.requestTrackingAuthorization();\n  }\n}\n```\n\n## Example\n\nFor an example to verify you configuration, take a look at the\n[example tab](https://pub.dev/packages/user_messaging_platform/example).\n\n[funding choices]: https://developers.google.com/funding-choices\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblaugold%2Fuser_messaging_platform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblaugold%2Fuser_messaging_platform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblaugold%2Fuser_messaging_platform/lists"}