user_messaging_platform
一个 Flutter 插件,为用户消息平台(UMP)SDK 提供 Dart API,该 SDK 是 Google 资金选择(Funding Choices)的一部分,作为同意管理平台(CMP)SDK 提供。
- 星标
- 8
- 复刻
- 15
- 最近推送(UTC)
- 2025年3月23日
- 项目状态
- 已归档
原始 README
以下为英文项目原文快照,最新内容请访问 GitHub。
[!IMPORTANT] This package has been depreacted in favor or the UMP API that is available as part of
google_mobile_ads.
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.
Also, see the iabtcf_consent_info package, for reading TCF consent info, made available though Consent Management Platform SDKs, such as UMP. If you have configured Funding Choices to obtain consent for additional purposes for you, the publisher, this package allows you to access that information.
If you're looking for a database solution, check out
cbl, another project of mine. It brings
Couchbase Lite to standalone Dart and Flutter, with support for:
- Full-Text Search,
- Expressive Queries,
- Data Sync,
- Change Notifications
and more.
Setup
The UMP SDK requires some platform dependent setup.
Android
App ID
-
Obtain your APP ID by following the Help Center instructions.
-
Add your app ID to your AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.rewardedinterstitialexample">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="YOUR-APP-ID"/>
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
More information
For more information visit the Android UMP SDK quick start guide.
iOS
App ID
-
Obtain your APP ID by following the Help Center instructions.
-
Add your app ID to your Info.plist:
<key>GADApplicationIdentifier</key>
<string>YOUR-APP-ID</string>
App Tracking Transparency
If you plan to use the App Tracking Transparency framework:
- Add a
NSUserTrackingUsageDescriptionto your Info.plist:
<key>NSUserTrackingUsageDescription</key>
<string>This identifier will be used to deliver personalized ads to you.</string>
- Link the
Runnertarget to theAppTrackingTransparencyunderTargets->Runner->Frameworks, Libraries, and Embedded Content.
More information
For more information visit the iOS UMP SDK quick start guide.
Usage
This basic usage example show how to update the consent info and show the consent form to the user if consent is required:
void updateConsent() async {
// Make sure to continue with the latest consent info.
var info = await UserMessagingPlatform.instance.requestConsentInfoUpdate();
// Show the consent form if consent is required.
if (info.consentStatus == ConsentStatus.required) {
// `showConsentForm` returns the latest consent info, after the consent from has been closed.
info = await UserMessagingPlatform.instance.showConsentForm();
}
}
iOS: App Tracking Transparency
You can let the UMP SDK handle the ATT permission request.
If you would like to determine when to show the permission request yourself, you
can check the TrackingAuthorizationStatus and requestTrackingAuthorization
through this plugin:
void showATTPermissionRequest() async {
final status = await UserMessagingPlatform.instance.getTrackingAuthorizationStatus();
if (status == TrackingAuthorizationStatus.notDetermined) {
await UserMessagingPlatform.instance.requestTrackingAuthorization();
}
}
Example
For an example to verify you configuration, take a look at the example tab.
分类
使用的依赖
依赖清单 5 项
- flutter
{"sdk":"flutter"} - collection
^1.15.0 - meta
^1.3.0 - flutter_test开发依赖
{"sdk":"flutter"} - pedantic开发依赖
^1.11.0
如何选择适合项目的代码仓?
先按使用场景筛选,再比较项目活跃情况,最后到原始仓库核对使用要求。
- 通过仓库名、作者或描述搜索,再按技术分类缩小范围。
- 结合星标、复刻与最近推送比较项目;星标反映社区关注,不代表质量保证。
- 使用前在 GitHub 核对 README、许可证与 Issues。
来源与维护
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗