# flutter_kepler
**Repository Path**: zhaimm/flutter_kepler
## Basic Information
- **Project Name**: flutter_kepler
- **Description**: No description available
- **Primary Language**: Dart
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2021-12-17
- **Last Updated**: 2021-12-17
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# flutter_kepler
#### 介绍
flutter 京东开普勒插件
地址:[flutter_kepler](https://pub.dev/packages/flutter_kepler)
支持Android和iOS,原生版本V2.2.4
Android:983598009@qq.com
iOS:329106954@qq.com
### 如何引入项目
[如何引入](https://pub.dev/packages/flutter_kepler#-installing-tab-)
```
dependencies:
flutter_kepler: ^版本号
```
### 已知问题
* iOS
不知道是不是example的iOS包名导购模式还在申请的原因,登录收不到回调。建议集成方自己试一下
### 工程性方法
参考[开普勒文档](http://kepler.jd.com/console/docCenterCatalog/docContent?channelId=46)
#### ios需要的工程性配置
1.进入[后台管理](http://kepler.jd.com/console/app/app_list.action),生成自己的SDK
2.将下载的SDk解压缩得到 JDKeplerSDK.framework、Kepler.bundle(JDKeplerSDK.framework用不上)
3.将Kepler.bundle拖入原生项目,如下图

#### android需要的工程性配置
在待引入工程的android目录下, AndroidManifest.xml文件内
`例如 flutter_kepler\example\android\app\src\main\AndroidManifest.xml`
添加以下配置
```
...
...
...
...
```
[参考链接]()
安全图片同样需要放在 待引入工程的android目录下 , /main/res/raw/safe.jpg
### 方法说明
* 头文件引入
```
import 'package:flutter_kepler/flutter_kepler.dart';
```
* 初始化
```
/**
* 初始化
* appKey:去管理后台查看
* appSecret:去管理后台查看
* result:{
* errorCode, //0为初始化成功,其他为失败
* errorMessage, //message
* }
*/
var result = await FlutterKepler.initKepler(
appKey: "",
appSecret: "",
);
```
* 打开url
```
///
/// 通过URL打开任意商品页面
/// @param url 页面url
/// @param userInfo 不需要可以不传 传参数据为第三方应用自定义,可以为页面,频道标识;也可以标识分成信息;该数据只做统计需求。传参长度,使用URL encode之后长度必须小于256字节(不建议传入中文以及特殊字符)
/// 禁止传参带入以下符号: =#%&+?<{}
///
///
FlutterKepler.keplerPageWithURL(
url: "",
userInfo:{},
);
```
* 打开导航页
```
///
/// 打开导航页
/// @param userInfo 不需要可以不传 传参数据为第三方应用自定义,可以为页面,频道标识;也可以标识分成信息;该数据只做统计需求。传参长度,使用URL encode之后长度必须小于256字节(不建议传入中文以及特殊字符)
/// 禁止传参带入以下符号: =#%&+?<{}
///
///
FlutterKepler.keplerNavigationPage(userInfo:{},);
```
* 通过SKU打开Kepler单品页
```
///
/// 通过SKU打开Kepler单品页
/// @param sku 商品sku
/// @param userInfo 不需要可以不传 传参数据为第三方应用自定义,可以为页面,频道标识;也可以标识分成信息;该数据只做统计需求。传参长度,使用URL encode之后长度必须小于256字节(不建议传入中文以及特殊字符)
/// 禁止传参带入以下符号: =#%&+?<{}
///
///
FlutterKepler.keplerOpenItemDetailWithSKU(
sku: "",
userInfo:{},
);
```
* 打开订单列表
```
///
/// 打开订单列表
/// @param userInfo 不需要可以不传 传参数据为第三方应用自定义,可以为页面,频道标识;也可以标识分成信息;该数据只做统计需求。传参长度,使用URL encode之后长度必须小于256字节(不建议传入中文以及特殊字符)
/// 禁止传参带入以下符号: =#%&+?<{}
///
///
FlutterKepler.keplerOpenOrderList(
userInfo:{}
);
```
* 根据搜索关键字打开搜索结果页
```
///
/// 根据搜索关键字打开搜索结果页
/// @param searchKey 搜索关键字
/// @param userInfo 不需要可以不传 传参数据为第三方应用自定义,可以为页面,频道标识;也可以标识分成信息;该数据只做统计需求。传参长度,使用URL encode之后长度必须小于256字节(不建议传入中文以及特殊字符)
/// 禁止传参带入以下符号: =#%&+?<{}
///
///
FlutterKepler.keplerOpenSearchResult(
searchKey: "",
userInfo:{}
);
```
* 打开购物车界面
```
///
/// 打开购物车界面
/// @param userInfo 不需要可以不传 传参数据为第三方应用自定义,可以为页面,频道标识;也可以标识分成信息;该数据只做统计需求。传参长度,使用URL encode之后长度必须小于256字节(不建议传入中文以及特殊字符)
/// 禁止传参带入以下符号: =#%&+?<{}
///
///
FlutterKepler.keplerOpenShoppingCart(
userInfo:{}
);
```
* 添加到购物车(深圳的加车接口)
```
///
/// 添加到购物车(深圳的加车接口)
/// @param sku 添加到购物车中的商品id
/// @param number 添加到购物车中商品数量,默认1件
///result:{
/// errorCode, //0为成功,其他为失败
/// errorMessage, //message
/// }
///
var result = await FlutterKepler.keplerAddToCartWithSku(
sku: "",
number:"",
);
```
* 联盟一键加购
```
///
///联盟一键加购
///unionID 联盟ID
///AppID 查看位置:我的推广-推广管理-APP管理
///skuID 商品SKU,
///refer refer (原生页面传域名+文章编号)
///
///result:{
/// errorCode, //0为成功,其他为失败
/// errorMessage, //message
/// }
var result = await FlutterKepler.keplerFastPurchase(
unionID: "",
appID: "",
skuID: "",
refer: "",
);
```
* 登录授权
```
///⚠️iOS可能收不到回调,Android正常,请自行测试
///登录授权
///
///result:{
/// errorCode, //0为成功,其他为失败
/// errorMessage, //message
/// }
var result = await FlutterKepler.keplerLogin();
```
* 登出并清除登录状态
```
///登出,清除登录状态
FlutterKepler.keplerCancelAuth();
```
* 判断是否登录
```
///判断登录是否失效
///
///result:{
/// errorCode, //0为成功,其他为失败
/// errorMessage, //message
/// }
var result = await FlutterKepler.keplerIsLogin();
```
* 是否强制使用H5打开界面 默认为true
```
/// 是否强制使用H5打开界面 默认为true;
/// 设置为false时,调用商品详情页,订单列表,购物车等方法时将跳转到京东app并打开对应的界面
FlutterKepler.setKeplerOpenByH5(isOpenByH5: bool);
```