全部产品
云市场

跳转支付宝卡包

更新时间:2019-09-09 15:11:51

目前 mPaaS 暂不支持跳转支付宝卡包,如果您的应用具备卡包能力并仍打算使用此 API,请参考 扩展说明 扩展下列 API。

my.openCardList

此接口用于打开卡列表。

代码示例

  1. my.openCardList();

my.openMerchantCardList

此接口用于打开当前用户的某个商户的卡列表。

入参说明

名称 类型 必填 描述
partnerId String 商户编号

代码示例

  1. my.openMerchantCardList({partnerId:'2088xxxxx'});

my.openVoucherList

此接口用于打开券列表。

代码示例

  1. my.openVoucherList();

my.openMerchantVoucherList

此接口用于打开当前用户的某个商户的券列表。

入参说明

名称 类型 必填 描述
partnerId String 商户编号

代码示例

  1. my.openMerchantVoucherList({partnerId:'2088xxxx'});

my.openTicketList

此接口用于打开票列表。

代码示例

  1. my.openTicketList();

my.openMerchantTicketList

此接口用于打开某个商户的票列表。

入参说明

名称 类型 必填 描述
partnerId String 商户编号

代码示例

  1. my.openMerchantTicketList({partnerId:'2088xxxx'});

my.openCardDetail

此接口用于打开当前用户的某张卡的详情页。

入参说明

名称 类型 必填 描述
passId String 卡实例Id

代码示例

  1. //传入 passId 来打开
  2. my.openCardDetail({passId:"11xxxxx"});

my.openVoucherDetail

此接口用于打开当前用户的某张券的详情页。

入参说明

名称 类型 必填 描述
passId String 券实例 ID(如果传入了 partnerId 和 serialNumber,则不需传入 passId)
partnerId String 商户编号(如果传入了 passId,则不需传入 partnerId)
serialNumber String 序列号(如果传入了 passId,则不需传入 serialNumber)

代码示例

  1. //传入 passId 来打开
  2. my.openVoucherDetail({passId:"20170921"});
  3. // 传入 partnerId 和 serialNumber 来打开
  4. my.openVoucherDetail({
  5. partnerId:"2018xxxx",
  6. serialNumber:"20170921"
  7. });

my.openTicketDetail

此接口用于打开当前用户的某张票的详情页。

入参说明

名称 类型 必填 描述
passId String 卡实例 ID(如果传入了 partnerId 和serialNumber,则不需要传入 passId)
partnerId String 商户编号(如果传入了 passId 则不需要传入 partnerId)
serialNumber String 序列号(如果传入了 passId 则不需要传入 serialNumber)

代码示例

  1. //传入 passId 来打开
  2. my.openTicketDetail({passId:"20170921"});
  3. // 传入 partnerId 和 serialNumber 来打开
  4. my.openTicketDetail({
  5. partnerId:"2088xxxx",
  6. serialNumber:"20170921"
  7. });

扩展说明

Android

您需要完成以下几步来扩展 API:

  1. 实现 OpenCardHandler 接口,按照接口说明打开应用中的卡包列表或详情页。

    1. package com.mpaas.nebula.adapter.api;
    2. public interface OpenCardHandler {
    3. /**
    4. * 打开卡列表
    5. * @param partnerId 不为空时,表示打开某个商户的卡列表
    6. */
    7. void openCardList(String partnerId);
    8. /**
    9. * 打开券列表
    10. * @param partnerId 不为空时,表示打开某个商户的券列表
    11. */
    12. void openVoucherList(String partnerId);
    13. /**
    14. * 打开票列表
    15. * @param partnerId 不为空时,表示打开某个商户的票列表
    16. */
    17. void openTicketList(String partnerId);
    18. /**
    19. * 打开某个卡的详情页
    20. * @param passId 卡实例Id
    21. */
    22. void openCardDetail(String passId);
    23. /**
    24. * 打开某个券的详情页
    25. * @param passId 卡实例Id
    26. * @param partnerId 商户编号
    27. * @param serialNumber 序列号
    28. */
    29. void openVoucherDetail(String passId, String partnerId, String serialNumber);
    30. /**
    31. * 打开某个票的详情页
    32. * @param passId 卡实例Id
    33. * @param partnerId 商户编号
    34. * @param serialNumber 序列号
    35. */
    36. void openTicketDetail(String passId, String partnerId, String serialNumber);
    37. }
  2. 调用 MPTinyHelper.setOpenCardHandler 方法设置 OpenCardHandler 接口的实例。

    1. public class MPTinyHelper {
    2. public static MPTinyHelper getInstance();
    3. public void setOpenCardHandler(OpenCardHandler handler);
    4. }

iOS

参考 自定义 JSAPI > Plist 注册 > 注册 JSAPI 配置新的 JSAPI。

您需要完成以下几步来扩展 API:

  1. 开发者实现 openCardList 等对应的 JSAPI 实现类 JsApiHandlerSample
  2. 根据接口入参、出参处理,入参会在 data 中。
  3. 注册自定义 JSAPI。

自定义 JSAPI 代码示例(不包含注册):

  1. #import "JsApiHandlerSample.h"
  2. #import <UIKit/UIKit.h>
  3. @interface JsApiHandlerSample()<UIAlertViewDelegate>
  4. @property (nonatomic, strong) NSString* result;
  5. @end
  6. @implementation JsApiHandlerSample
  7. - (void)handler:(NSDictionary *)data context:(PSDContext *)context callback:(PSDJsApiResponseCallbackBlock)callback
  8. {
  9. [super handler:data context:context callback:callback];
  10. UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"是否打开卡包" message:@"允许打开卡包吗?" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确定", nil];
  11. [alertView show];
  12. if (self.result && [self.result isKindOfClass:[NSString class]]) {
  13. callback(self.result);
  14. } else {
  15. callback(@{@"error": @(11), @"errorMessage":@"用户取消"});
  16. }
  17. }
  18. - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
  19. {
  20. if (0 == buttonIndex) {
  21. self.result = @"xxx";
  22. } else {
  23. self.result = nil;
  24. }
  25. }
  26. @end