Buscar pacotes, repositórios e categorias de apps

Repositório GitHubblaugold/user_messaging_platform

user_messaging_platform

Um plugin do Flutter que fornece uma API Dart para o SDK da Plataforma de Mensagens do Usuário (UMP), que é o SDK da Plataforma de Gestão de Consentimento (CMP) fornecido como parte das Escolhas de Financiamento do Google.

Capa do projeto user_messaging_platform
Estrelas
8
Forks
15
Último push (UTC)
23 de mar. de 2025
Status do projeto
Arquivado

README original

Texto original em inglês. Visite o GitHub para a versão atual.

[!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
  1. Obtain your APP ID by following the Help Center instructions.

  2. 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
  1. Obtain your APP ID by following the Help Center instructions.

  2. 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:

  1. Add a NSUserTrackingUsageDescription to your Info.plist:
<key>NSUserTrackingUsageDescription</key>
<string>This identifier will be used to deliver personalized ads to you.</string>
  1. Link the Runner target to the AppTrackingTransparency under Targets -> 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.

Gabriel Terwesten GitHub avatar
Autor no GitHub

Gabriel Terwesten ↗

@lotumMunich
LinguagensDartSwiftKotlinRubyObjective-C

Categorias

Dependências usadas

Lista de dependências 5 itens

  • flutter{"sdk":"flutter"}
  • collection^1.15.0
  • meta^1.3.0
  • flutter_testDesenvolvimento{"sdk":"flutter"}
  • pedanticDesenvolvimento^1.11.0

Como escolher um repositório para seu projeto?

Filtre pelo caso de uso, compare a atividade e confira o projeto original antes de adotá-lo.

  1. Busque por nome, autor ou descrição e filtre por tema.
  2. Compare estrelas, forks e envios recentes. Estrelas indicam interesse, mas não garantem qualidade.
  3. Confira o README, a licença e as issues no GitHub antes de usar o projeto.

Fontes e manutenção

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗