0 purchases
tcmpp flutter
TCMPP Flutter Plugin #
TCMPP Flutter Plugin is a Flutter plugin to provide access for TCMPP SDK in Flutter. For details of TCMPP, see: https://www.tencentcloud.com/products/tcmpp. This quick guide shows how to setup and use TCMPP Flutter Plugin.
Add TCMPP Flutter Plugin #
Add TCMPP core plugin from Pub.dev #
Add dependecy
To add plugin from pub.dev, open the pubspec.yaml file located inside the app folder, and add tcmpp_flutter: ${version} under dependencies.
Install dependecy
From the terminal: Run flutter pub get.
From VS Code: Click Get Packages located in right side of the action ribbon at the top of pubspec.yaml indicated by the Download icon.
From Android Studio/IntelliJ: Click Pub get in the action ribbon at the top of pubspec.yaml.
For details how to add Flutter plugins or packages, see
Use packages & plugins
Add assets for TCMPP configuration files #
Get TCMPP configuration file from your TCMPP web console #
Get appcation ID / bundle ID of your Android / iOS application.
For Android, in your Flutter project, open android > app > build.gradle, application id can be found in android > defaultConfig section.
For iOS, in your Flutter project, open iOS > Runner.xcodeproj > project.pbxproj, search for PRODUCT_BUNDLE_IDENTIFIER.
Create Flutter Application on TCMPP web console.
Login the Tencent Cloud Mini Program Platform Console and click 'Overview' in the left-hand navigation bar.
On the Overview page, click Access Application.
In the pop-up window for creating an application, fill in informations for your application.
For Intergration platform section, check both iOS platfrom & Android Platform. Then fill application ID / bundle ID you got in the package name field.
Click next, download Android / iOS configuration file in the new page.
Add configuration file #
Put TCMPP configuration file someware in your flutter project.
Add a file named "tcmpp-plugin-settings.json" in your project's root.
Edit pubspec.yaml file and add flutter assets for files mentioned above.
Specify the path to TCMPP configuration file in "tcmpp-plugin-settings.json".
SDK settings #
In the tcmpp-plugin-settings.json file, you can choose to configure settings of your SDK.
For Android:
field name
type
function
configAssetsName
string
TCMPP android configuration file path
debug
bool
enable SDK debug
For iOS:
field name
type
function
configAssetsName
string
TCMPP iOS configuration file path
debug
bool
enable SDK debug
logEnable
bool
enable SDK log
For common:
field name
type
function
appName
string
Host app name, mainly used for copyright prompts in mini-program
appVersion
string
Host app version, mainly used for copyright prompts in mini-program
Platform specific #
For Android platform #
Open android > app directory, edit build.gradle file.
In android > defaultConfig section, change minSdkVersion to no less than 21.
minSdkVersion 21
copied to clipboard
In android > defaultConfig section, add packagingOptions.
packagingOptions {
pickFirst 'lib/arm64-v8a/libc++_shared.so'
pickFirst 'lib/armeabi/libc++_shared.so'
pickFirst 'lib/armeabi-v7a/libc++_shared.so'
pickFirst 'lib/arm64-v8a/libmarsxlog.so'
pickFirst 'lib/armeabi/libmarsxlog.so'
pickFirst 'lib/armeabi-v7a/libmarsxlog.so'
pickFirst 'lib/arm64-v8a/libv8jni.so'
}
copied to clipboard
For iOS platform #
Add source
In the Podfile file in the iOS directory, add source:
source 'https://e.coding.net/tcmpp-work/tcmpp/tcmpp-repo.git'
source 'https://github.com/CocoaPods/Specs.git'
copied to clipboard
Execute pod install
cd to iOS directory,execute pod install:
pod install
copied to clipboard
TCMPP Flutter APIs #
Usage #
To use TCMPP APIs, import 'package:tcmpp_flutter/tcmpp_flutter.dart'.
Then create a TcmppFlutter object and use it to call TCMPP APIs.
APIs #
Future<void> startMiniAppWithId(String appId, MiniStartOptions? options)
copied to clipboard
Start a mini program with given appId
appId: The app id of mini program
options: Start options of this mini program
Future<void> startMiniAppWithLink(String link, MiniStartOptions? options)
copied to clipboard
Start a mini program with given link
link: The uri link to start
options: Start options of this mini program
Future<ScanResult?> scan()
copied to clipboard
Start a new page to scan for mini program QR code and start mini program
Future<List<AppInfo>?> getRecentList()
copied to clipboard
Get a list of recent opened mini programs
Future<List<AppInfo>?> searchMiniApp(String keyword,
{int pageIndex = 0, int pageSize = 0})
copied to clipboard
Search for online mini programs with given keyword
keyWord: Keyword of mini program to search
pageIndex: Page to return if pageSize has a none-zero value, which means paging is enabled.
pageSize: The max size of a page returned by server. When set to 0, paging willl be disabled.
Future<void> stopMiniApp(String appId)
copied to clipboard
Stop mini program with given app ID
appId: The app id of mini program.
Future<void> stopAllMiniApp()
copied to clipboard
Stop all running mini programs
Future<void> deleteMiniAppCache(String appId,
{int appVerType = 0, String? version})
copied to clipboard
Remove all local data of mini program with given ID
appId: the app id of mini program
appVerType: type of mini program
version: version of mini program to remove
Future<AppInfo?> currentMiniApp()
copied to clipboard
Return information for current foreground running mini program
Classes #
MiniStartOptions
class MiniStartOptions {
/// entry path of mini program
String? entryPath;
/// is always update mini program when start
bool? isForceUpdate;
/// string param passed to mini program when start
String? params;
}
copied to clipboard
ScanResult
class ScanResult {
/// result string of qrcode or barcode contains
String? result;
/// the type of code
String? scanType;
/// charset of result string
String? charset;
}
copied to clipboard
AppInfo
class AppInfo {
/// MiniProgram id
String appId;
/// MiniProgram package type (release, dev, etc.). See [AppVerType]
int appVerType;
/// MiniProgram version
String version;
/// MiniProgram name
String? name;
/// MiniProgram icon url
String? iconUrl;
/// MiniProgram description
String? appIntro;
/// Developer of MiniProgram
String? appDeveloper;
/// MiniProgram release time
int time;
}
copied to clipboard
AppVerType
/// Consts for MiniProgram package type. see[AppInfo]
class AppVerType {
static const int online = 0;
static const int develop = 1;
static const int preview = 2;
static const int experience = 3;
}
copied to clipboard
Documents #
For more information about usage and APIs of TCMPP Flutter plugin, see Accessing with Flutter
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.