tobias 5.1.1 copy "tobias: ^5.1.1" to clipboard
tobias: ^5.1.1 copied to clipboard

A Flutter plugin for allowing users to authenticate or pay with native Android/iOS/OpenHarmony AliPay SDKs.

logo

pub package Build status GitHub stars GitHub forks GitHub license GitHub issues OpenFlutter

中文移步这里

Join QQ Group now: 1003811176

QQGroup

What's Tobias #

Tobias is a flutter plugin for AliPaySDK, works on iOS, Android and OpenHarmony

Getting Started #

I highly recommend that you read the official documents before using tobias.

  1. You have to config url_scheme in pubspec.yaml. Url scheme is a unique string to resume you app on iOS but please note that _ is invalid.

  2. for OpenHarmony, you have to add scheme alipays to module.json5 in your project like this:

{
  "module": {
    "querySchemes": [
      "alipays"
    ],
  }
}
copied to clipboard

Payment #

It's simple,pass Tobias your order info from server :

import 'package:tobias/tobias.dart' ;
Tobias tobias = Tobias();
tobias.pay(yourOrder);
copied to clipboard

If you're working with iOS, please add and pass universal link. See how to configure universal link.

The result is map contains results from AliPay.The result also contains an external filed named platform which means the result is from iOS or android. Result sample:

{
result: partner="2088411752388544"&seller_id="etongka123@163.com"&out_trade_no="180926084213001"&subject="test pay"&total_fee="0.01"&notify_url="http://127.0.0.1/alipay001"&service="mobile.securitypay.pay"&payment_type="1"&_input_charset="utf-8"&it_b_pay="30m"&return_url="m.alipay.com"&success="true"&sign_type="RSA"&sign="nCZ8MDhsNvYNAbrLZJZ2VUy6vydgAp+JCq1aQo6ORDYtI9zwtnja3qNGQNiDJCuktoIj7fSTM487XhjPDqnOreZjIA1GJpxu9D1I3nMXIn1M7DfZ0noDwXcYZ438/jbYac7g8mhpwdKGweLCAni9mO3Y6q3iBFkox8i9PcsGxJY=",
resultStatus: 9000,
 memo: ,
 platform:iOS
}

copied to clipboard

NOTE:Tobias use pay_V2.

If you're facing conflicts with utdid on iOS, you can set no_utdid: true in pubspec.yaml

Auth #

import 'package:tobias/tobias.dart' ;
Tobias tobias = Tobias();
tobias.auth("your auth str);
copied to clipboard

Check AliPay Installation #

Tobias tobias = Tobias();
var result = await tobias.isAliPayInstalled;
copied to clipboard

You can also call tobias.version which returns a map contains version and platform.

Upgrade to 1.0.0 #

There's no need to override AppDelegate since tobais 1.0.0. If you have done that before, please remove the following code in your AppDelegate:


- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
  return [TobiasPlugin handleOpenURL:url];
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options
{
  return [TobiasPlugin handleOpenURL:url];
}
copied to clipboard

If you have to override these two functions, make sure you have called the super:


- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
    
  return [super application:application openURL:url sourceApplication:sourceApplication annotation:annotation];
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options
{
    
  return [super application:application openURL:url options:options];
}
copied to clipboard

Buy me a cup of coffee。

Subscribe Us On WeChat #

subscribe

LICENSE #

Copyright 2018 OpenFlutter Project

Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements.  See the NOTICE file distributed with this work for
additional information regarding copyright ownership.  The ASF licenses this
file to you 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.
copied to clipboard
84
likes
140
points
803
downloads

Publisher

verified publisheropenflutter.dev

Weekly Downloads

2024.08.16 - 2025.02.28

A Flutter plugin for allowing users to authenticate or pay with native Android/iOS/OpenHarmony AliPay SDKs.

Repository (GitHub)

Documentation

API reference

License

Apache-2.0 (license)

Dependencies

flutter, flutter_web_plugins, plugin_platform_interface

More

Packages that depend on tobias