Flutter VWO实验管理插件vwo_flutter_sdk的使用
Flutter VWO实验管理插件vwo_flutter_sdk的使用
要求
- Dart SDK版本
>=2.12.0 < 4.0.0
- Flutter版本
>=1.20.0
文档
请参考官方VWO文档
基本用法
实例化
SDK提供了一个方法来实例化一个VWO客户端。该方法接受apiKey和配置对象。实例化SDK所需的参数是apiKey。
VWOConfig vwoConfig = VWOConfig();
if (Platform.isIOS) {
await VWO.launch(ios_apiKey, vwoConfig: vwoConfig);
} else {
await VWO.launch(android_apiKey, vwoConfig: vwoConfig);
}
推送自定义维度
await VWO.pushCustomDimension("CUSTOM_DIMENSION_KEY", "CUSTOM_DIMENSION_VALUE");
获取变体名称
await VWO.getVariationNameForTestKey("campaign_key");
获取变量值
- 获取字符串变量值
await VWO.getStringForKey("variable_key", "default_value")
- 获取整数变量值
await VWO.getIntegerForKey("variable_key", default_value)
- 获取双精度变量值
await VWO.getDoubleForKey("variable_key", default_value)
- 获取布尔变量值
await VWO.getBooleanForKey("variable_key", default_value)
- 获取对象变量值
await VWO.getObjectForKey("variable_key", default_value)
触发目标
- 自定义目标
await VWO.trackConversion("test_goal");
- 收益目标
await VWO.trackConversion("test_goal", revenue_value);
凭证
此SDK需要一个应用密钥。您可以在VWO注册一个帐户。 一旦注册成功,您可以添加一个新的Android/iOS应用,并在应用中使用生成的应用密钥。
设置VWO账户
- 在VWO注册VWO帐户
- 从创建菜单中创建一个新的Android应用
- 集成SDK到Android/iOS应用时使用生成的应用密钥
- 创建并运行活动
作者
- 主要贡献者及维护人 - sanyamjain65
- 仓库健康维护人 - softvar
更改日志
请参阅CHANGELOG.md
贡献指南
请阅读我们的贡献指南
行为准则
请阅读行为准则
许可证
Apache许可证,版本2.0
版权所有2021 Wingify Software Pvt. Ltd.
示例代码
example/lib/main.dart
///
/// Copyright 2021 Wingify Software Pvt. Ltd.
///
/// Licensed under the Apache License, Version 2.0 (the "License");
/// you may not use this file except in compliance with the License.
/// You may obtain a copy of the License at
///
/// http://www.apache.org/licenses/LICENSE-2.0
///
/// Unless required by applicable law or agreed to in writing, software
/// distributed under the License is distributed on an "AS IS" BASIS,
/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
/// See the License for the specific language governing permissions and
/// limitations under the License.
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:vwo_flutter_sdk/vwo_flutter_sdk.dart';
import 'package:vwo_flutter_sdk_example/providers/navigation_provider.dart';
import 'package:vwo_flutter_sdk_example/screens/sorting/sorting_campaign.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatefulWidget {
[@override](/user/override)
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
[@override](/user/override)
void initState() {
super.initState();
VWO.vwoStream.listen((vwoProperties) {
print("接收到的数据来自VWO:- $vwoProperties");
String campaignId = vwoProperties["vwo_campaign_name"];
String campaignName = vwoProperties["vwo_campaign_id"];
String variationId = vwoProperties["vwo_variation_name"];
String variationName = vwoProperties["vwo_variation_id"];
print("活动ID $campaignId, 活动名称 $campaignName, 变体ID $variationId, 变体名称 $variationName" );
});
}
[@override](/user/override)
Widget build(BuildContext context) {
return MultiProvider(
providers: [
ChangeNotifierProvider<NavigationProvider>(
create: (context) => NavigationProvider(),
),
],
child: MaterialApp(
home: SortingCampaign(),
),
);
}
}
更多关于Flutter VWO实验管理插件vwo_flutter_sdk的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
更多关于Flutter VWO实验管理插件vwo_flutter_sdk的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
vwo_flutter_sdk
是一个用于在 Flutter 应用程序中集成 VWO(Visual Website Optimizer)实验管理的插件。通过这个插件,你可以在 Flutter 应用中轻松地运行 A/B 测试、功能发布和个性化实验。
以下是如何使用 vwo_flutter_sdk
的基本步骤:
1. 安装插件
首先,在你的 pubspec.yaml
文件中添加 vwo_flutter_sdk
依赖:
dependencies:
flutter:
sdk: flutter
vwo_flutter_sdk: ^1.0.0 # 请使用最新版本
然后运行 flutter pub get
来安装依赖。
2. 初始化 VWO SDK
在你的 Flutter 应用程序中,首先需要初始化 VWO SDK。通常在 main.dart
文件中的 main
函数中进行初始化。
import 'package:flutter/material.dart';
import 'package:vwo_flutter_sdk/vwo_flutter_sdk.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
// 初始化 VWO SDK
await VWO.init(
sdkKey: 'YOUR_SDK_KEY', // 你的 VWO SDK Key
config: Config(
logLevel: LogLevel.ALL, // 设置日志级别
),
);
runApp(MyApp());
}
3. 获取实验变量
在初始化之后,你可以在应用程序的任何地方使用 VWO
来获取实验变量或执行其他操作。
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('VWO Flutter SDK Example'),
),
body: Center(
child: FutureBuilder(
future: VWO.stringVariable('YOUR_VARIABLE_KEY', 'default_value'),
builder: (context, snapshot) {
if (snapshot.connectionState == ConnectionState.done) {
return Text('Variable Value: ${snapshot.data}');
} else {
return CircularProgressIndicator();
}
},
),
),
),
);
}
}
4. 跟踪用户转换
如果你希望在用户完成某个操作时跟踪转换,可以使用 trackConversion
方法。
VWO.trackConversion('YOUR_GOAL_IDENTIFIER');
5. 其他功能
你还可以使用 VWO
提供的其他功能,如:
- 获取用户细分 (
VWO.getUserSegment
): 获取用户的细分信息。 - 获取所有活动变量 (
VWO.getAllVariables
): 获取所有活动的变量。 - 设置自定义变量 (
VWO.setCustomVariable
): 设置自定义变量以用于进一步的细分。
6. 调试与日志
在开发过程中,你可以通过设置 logLevel
来查看详细的日志信息,帮助你调试和验证 SDK 的行为。
await VWO.init(
sdkKey: 'YOUR_SDK_KEY',
config: Config(
logLevel: LogLevel.ALL, // 设置为 LogLevel.ALL 以查看所有日志
),
);