精华内容
下载资源
问答
  • 支付宝支付流程

    2020-09-04 00:39:05
    如果用户已安装支付宝APP,商家APP会跳转支付宝中完成支付支付完后跳回到商家APP内。如果用户没有安装支付宝APP,商家APP内会调起支付宝网页支付收银台,用户登录支付宝账户,支付完后展示支付结果。 接入 ...

    支付宝支付流程

    准备工作

    1. 下载支付宝开放平台开发助手
      在这里插入图片描述
    2. 支付宝开放平台 申请自己的沙箱环境
    3. 花生壳
      在这里插入图片描述
      4.客户端调试工具 手机安装
      在这里插入图片描述
      适用场景
      在App内集成支付宝支付。APP调用支付宝提供的SDK,SDK再调用支付宝APP内的支付模块。如果用户已安装支付宝APP,商家APP会跳转到支付宝中完成支付,支付完后跳回到商家APP内。如果用户没有安装支付宝APP,商家APP内会调起支付宝网页支付收银台,用户登录支付宝账户,支付完后展示支付结果。

    接入

    1. 创建应用并获取APPID
      在这里插入图片描述
      APPID和支付宝网关都是其自动生成提供的,不需要配置,沙箱只需要在在这里配置密钥。记得用私钥签名公钥验证下其正确性。

    1.只能填写和修改应用公钥,支付宝公钥会自动对应生成,两个公钥是不一样的(仅仅头尾像而已)
    2.配置AlipayConfig.java的公钥属性使用的是支付宝公钥
    3.这个支付宝网关都是沙箱测试环境的,真实线上环境的网关没有 dev,线上的APPID 是另外的。在创建应用时才有 快速接入文档
    链接: link.

    密钥配置

    1. 支付宝密钥处理体系
    在这里插入图片描述
    所以需要获取到应用公钥、应用私钥以及支付宝公钥:

    ①应用公钥
    由商户自己生成的RSA公钥(与应用私钥必须匹配),商户需上传应用公钥到支付宝开放平台,以便支付宝使用该公钥验证该交易是否是商户发起的。

    ②应用私钥
    由商户自己生成的RSA私钥(与应用公钥必须匹配),商户开发者使用应用私钥对请求字符串进行加签。

    ③支付宝公钥
    支付宝的RSA公钥,商户使用该公钥验证该结果是否是支付宝返回的。
    打开支付宝开放平台开发助手
    在这里插入图片描述
    更改复制的公钥
    在这里插入图片描述
    在这里插入图片描述

    Demo案例解析

    package com.example.demo.controller;
    
    import com.alipay.api.AlipayApiException;
    import com.alipay.api.AlipayClient;
    import com.alipay.api.DefaultAlipayClient;
    import com.alipay.api.domain.AlipayTradeAppPayModel;
    import com.alipay.api.request.AlipayTradeAppPayRequest;
    import com.alipay.api.response.AlipayTradeAppPayResponse;
    
    /**
     * 作者: MrHongGA
     * 时间: 2020/8/28 17:44
     * 描述:
     */
    public class AliPayController {
        /**
         * APP_ID  应用id
         */
        private final static String APP_ID="2021000119661427";
        /**
         *应用私钥
         */
        private final static String APP_PRIVATE_KEY="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";
        /**
         * 编码
         */
        private final static String CHARSET="UTF-8";
        /**
         * 支付宝公钥
         */
        private final static String ALIPAY_PUBLIC_KEY="MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsRHT6u+jdzu/Z3Ccf39LUgQVj0vF40lGISRNSmCYqE/IpDhNAzZcfftBmJ0t3Gmj5Hi+QYNfQm0DgKwiV5xHEFGVU59JzHqJCsV5IDcCeB8WkIzpzkBmrK3EAw14q/Oibmm6f8PGZvfwgZge7owZx+SqlfnyMsEcfWmUQIgFvvkBEY7XozXEHMILAA6Mk3B1hs+hY+Y9hJF8LML7Hi0VUT4I1CbyMlh7oKpY1P+ySvifyf1MvZ6VO8zCyLpa6nbJyIWfFsC8jw3ZQExdme67VAVnvvJmogPnGVA5+HbUBRR0hkSp8wmuEusNYa2VFnx/DpWLbozgNQiJai9Dgxt0TwIDAQAB+5UZhLLv9lUfWBFhF2xfC23INvVowY3xFXpUu16ytCeDDarxWU8zyGQYCJuNBhW6rP4ZQk7vndCyFg3V+6G3W0TgBOHH9w50eP571Hfc9mACTQVjK7+4HlZ2ISPgUrrVOcH5D7WoiOai9o59jdKx+pb9W6ydzZK1VbZ5GxEHHDMJufJKszcIUR1kayvuHVMB/1u15tQFeDAa0RrPMAuNx5U1N9k5sDI0sdGC5GDsX+elnhtng3j8wneEKLzmtZVW+Kq+JlqQIDAQAB";
    
        /**
         * 沙箱公关
         */
        private final static String GATEWAY_URL ="https://openapi.alipaydev.com/gateway.do";
    
        /**
         * 格式化
         */
        private final static String FORMAT ="json";
    
        /**
         * 签名类型
         */
        private final static String SIGN_TYPE ="RSA2";
        /**
         * 获取订单信息
         */
        public void getOrderInfo(){
            //实例化客户端
            AlipayClient alipayClient = new DefaultAlipayClient(GATEWAY_URL, APP_ID, APP_PRIVATE_KEY, "json", CHARSET, ALIPAY_PUBLIC_KEY, "RSA2");
            //实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称:alipay.trade.app.pay
            AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest();
            //SDK已经封装掉了公共参数,这里只需要传入业务参数。以下方法为sdk的model入参方式(model和biz_content同时存在的情况下取biz_content)。
            AlipayTradeAppPayModel model = new AlipayTradeAppPayModel();
            model.setBody("我是测试数据");
            model.setSubject("App支付测试Java");
            model.setOutTradeNo("老洪真帅");
            model.setTimeoutExpress("30m");
            model.setTotalAmount("520");
            model.setProductCode("QUICK_MSECURITY_PAY");
            request.setBizModel(model);
            request.setNotifyUrl("商户外网可以访问的异步地址");
            try {
                //这里和普通的接口调用不同,使用的是sdkExecute
                AlipayTradeAppPayResponse response = alipayClient.sdkExecute(request);
                System.out.println(response.getBody());//就是orderString 可以直接给客户端请求,无需再做处理。
            } catch (AlipayApiException e) {
                e.printStackTrace();
            }
        }
        public static void main (String[] args){
            AliPayController aliPayController=new AliPayController();
            aliPayController.getOrderInfo();
        }
    }
    

    这里都是一些配置参数,类似于properties文件的作用。
    1)partner在自己的蚂蚁金服个人中心就可以看到,2088开头。
    2)支付宝号就不用说了。
    3)支付宝公钥也是支付包提供的,复制过来,这里客户蚂蚁金服账号已经收回去了,没法给大家一个一个找,自己细心点,个人中心的这些参数都有。
    4)商户私钥就是我们之前生成贴过去的商户密钥。
    5)扫码付款页面return_url ,我这里是测试,设置
    return_url=”locahost:端口号create_direct_pay_by_user-JAVA-UTF-8/rerturn_url.jsp”
    6)notify可以自己随便设置一个,用于付款结束后跳转到商户页面。
    6)其他参数暂时不管。
    所有静态变量都设置好,确保正确,没有空格,如果下面测试出问题,就从这几个参数里找,是不是哪里有空格,或者密钥贴错了的原因。先不要去把参数弄成配置文件形式再读出来,有些框架会报错。建议测试跑通再尝试配置化。
    重启项目继续测试,再次点击确认支付。

    展开全文
  • 第一步:在手机安装乐心健康app。 安卓版下载地址:乐心健康安卓版 苹果版下载地址:乐心健康iOS版 乐心运动app for android v3.0 安卓版 第二步:注册账号登录,并设置登录密码。 第三步:完成第三方同步,将...
  • python修改微信支付宝步数 项目意义 实现方法 python代码 下载地址 私信小编01即可获取大量Python学习资料 项目意义 如果你想在支付宝蚂蚁森林收集很多能量...第一步:在手机安装乐心健康app。 安卓版.

    python修改微信和支付宝步数

    • 项目意义
    • 实现方法
    • python代码
    • 下载地址

    私信小编01即可获取大量Python学习资料

    项目意义

    如果你想在支付宝蚂蚁森林收集很多能量种树,为环境绿化出一份力量,又或者是想每天称霸微信运动排行榜装逼,却不想出门走路,那么该python脚本可以帮你实现。

    实现方法

    手机安装第三方软件乐心健康,注册账号登录,将运动数据同步到微信和支付宝。用python脚本远程修改乐心健康当前登录账号的步数即可。

    第一步:在手机上安装乐心健康app。

    python修改微信和支付宝步数

     


    安卓版下载地址:乐心健康安卓版
    苹果版下载地址:乐心健康iOS版

    第二步:注册账号登录,并设置登录密码。

    python修改微信和支付宝步数

     


    第三步:完成第三方同步,将运动数据同步到微信和支付宝。

    python修改微信和支付宝步数

     


    第四步:运行python脚本,修改乐心健康步数。

    python修改微信和支付宝步数

     

     

    python修改微信和支付宝步数

     

     

    python修改微信和支付宝步数

     

    python代码

    程序设定是每天7点自动修改步数,在下面脚本对应的位置替换填入乐心健康账号、乐心健康密码、修改步数,然后运行程序。修改步数推荐设置范围是30000至90000,步数值太大会导致修改不成功。如果想改变第二天自动修改步数的时间,请修改图示位置的25200,+25200代表第二天0点后加上的秒数,也就是7x60x60,即7小时,根据自己的需要修改即可。如果每天都要修改步数,那么让程序一直保持运行即可。
    注意:运行程序会立刻修改当天的步数,自动修改步数是从程序保持运行的第二天开始。

    python修改微信和支付宝步数

     

    python修改微信和支付宝步数

     


    change_step.py

    # -*- coding: utf-8 -*-
    import requestsimport jsonimport hashlibimport timeimport datetimeclass LexinSport:    def __init__(self, username, password, step):        self.username = username        self.password = password        self.step = step    # 登录    def login(self):        url = 'https://sports.lifesense.com/sessions_service/login?systemType=2&version=4.6.7'
            data = {'loginName': self.username, 'password': hashlib.md5(self.password.encode('utf8')).hexdigest(),
                    'clientId': '49a41c9727ee49dda3b190dc907850cc', 'roleType': 0, 'appType': 6}
            headers = {            'Content-Type': 'application/json; charset=utf-8',
                'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 7.1.2; LIO-AN00 Build/LIO-AN00)'
            }        response_result = requests.post(url, data=json.dumps(data), headers=headers)        status_code = response_result.status_code        response_text = response_result.text        # print('登录状态码:%s' % status_code)
            # print('登录返回数据:%s' % response_text)
            if status_code == 200:
                response_text = json.loads(response_text)            user_id = response_text['data']['userId']
                access_token = response_text['data']['accessToken']
                return user_id, access_token
            else:
                return '登录失败'
        # 修改步数    def change_step(self):        # 登录结果        login_result = self.login()        if login_result == '登录失败':
                return '登录失败'
            else:
                url = 'https://sports.lifesense.com/sport_service/sport/sport/uploadMobileStepV2?systemType=2&version=4.6.7'
                data = {'list': [{'DataSource': 2, 'active': 1, 'calories': int(self.step/4), 'dataSource': 2,
                                  'deviceId': 'M_NULL', 'distance': int(self.step/3), 'exerciseTime': 0, 'isUpload': 0,
                                  'measurementTime': time.strftime('%Y-%m-%d %H:%M:%S'), 'priority': 0, 'step': self.step,
                                  'type': 2, 'updated': int(round(time.time() * 1000)), 'userId': login_result[0]}]}
                headers = {                'Content-Type': 'application/json; charset=utf-8',
                    'Cookie': 'accessToken=%s' % login_result[1]
                }            response_result = requests.post(url, data=json.dumps(data), headers=headers)            status_code = response_result.status_code            # response_text = response_result.text            # print('修改步数状态码:%s' % status_code)
                # print('修改步数返回数据:%s' % response_text)
                if status_code == 200:
                    return '修改步数为【%s】成功' % self.step
                else:
                    return '修改步数失败'
    # 睡眠到第二天执行修改步数的时间def get_sleep_time():    # 第二天日期    tomorrow = datetime.date.today() + datetime.timedelta(days=1)
        # 第二天7点时间戳
        tomorrow_run_time = int(time.mktime(time.strptime(str(tomorrow), '%Y-%m-%d'))) + 25200
        # print(tomorrow_run_time)
        # 当前时间戳    current_time = int(time.time())
        # print(current_time)
        return tomorrow_run_time - current_time
    if __name__ == "__main__":
        # 最大运行出错次数    fail_num = 3
        while 1:
            while fail_num > 0:
                try:                # 修改步数结果                result = LexinSport('乐心健康账号', '乐心健康密码', 修改步数).change_step()
                    print(result)
                    break
                except Exception as e:                print('运行出错,原因:%s' % e)
                    fail_num -= 1
                    if fail_num == 0:
                        print('修改步数失败')
            # 重置运行出错次数        fail_num = 3
            # 获取睡眠时间        sleep_time = get_sleep_time()        time.sleep(sleep_time)
    展开全文
  • 项目意义 ...第一步:在手机安装乐心健康app。 安卓版下载地址:乐心健康安卓版 苹果版下载地址:乐心健康iOS版 第二步:注册账号登录,并设置登录密码。 第三步:完成第三方同步,将运动数据

    项目意义

    如果你想在支付宝蚂蚁森林收集很多能量种树,为环境绿化出一份力量,又或者是想每天称霸微信运动排行榜装逼,却不想出门走路,那么该python脚本可以帮你实现。

    实现方法

    手机安装第三方软件乐心健康,注册账号登录,将运动数据同步到微信和支付宝。用python脚本远程修改乐心健康当前登录账号的步数即可。

    第一步:在手机上安装乐心健康app。


    安卓版下载地址:乐心健康安卓版
    苹果版下载地址:乐心健康iOS版

    第二步:注册账号登录,并设置登录密码。


    第三步:完成第三方同步,将运动数据同步到微信和支付宝。


    第四步:运行python脚本,修改乐心健康步数。

     

     

    python代码

    程序设定是每天7点自动修改步数,在下面脚本对应的位置替换填入乐心健康账号、乐心健康密码、修改步数,然后运行程序。如果每天都要修改步数,那么让程序一直保持运行即可。

    change_step.py

    # -*- coding: utf-8 -*-
    import requests
    import json
    import hashlib
    import time
    import datetime
    
    
    class LexinSport:
        def __init__(self, username, password, step):
            self.username = username
            self.password = password
            self.step = step
    
        # 登录
        def login(self):
            url = 'https://sports.lifesense.com/sessions_service/login?systemType=2&version=4.6.7'
            data = {'loginName': self.username, 'password': hashlib.md5(self.password.encode('utf8')).hexdigest(),
                    'clientId': '49a41c9727ee49dda3b190dc907850cc', 'roleType': 0, 'appType': 6}
            headers = {
                'Content-Type': 'application/json; charset=utf-8',
                'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 7.1.2; LIO-AN00 Build/LIO-AN00)'
            }
            response_result = requests.post(url, data=json.dumps(data), headers=headers)
            status_code = response_result.status_code
            response_text = response_result.text
            # print('登录状态码:%s' % status_code)
            # print('登录返回数据:%s' % response_text)
            if status_code == 200:
                response_text = json.loads(response_text)
                user_id = response_text['data']['userId']
                access_token = response_text['data']['accessToken']
                return user_id, access_token
            else:
                return '登录失败'
    
        # 修改步数
        def change_step(self):
            # 登录结果
            login_result = self.login()
            if login_result == '登录失败':
                return '登录失败'
            else:
                url = 'https://sports.lifesense.com/sport_service/sport/sport/uploadMobileStepV2?systemType=2&version=4.6.7'
                data = {'list': [{'DataSource': 2, 'active': 1, 'calories': int(self.step/4), 'dataSource': 2,
                                  'deviceId': 'M_NULL', 'distance': int(self.step/3), 'exerciseTime': 0, 'isUpload': 0,
                                  'measurementTime': time.strftime('%Y-%m-%d %H:%M:%S'), 'priority': 0, 'step': self.step,
                                  'type': 2, 'updated': int(round(time.time() * 1000)), 'userId': login_result[0]}]}
                headers = {
                    'Content-Type': 'application/json; charset=utf-8',
                    'Cookie': 'accessToken=%s' % login_result[1]
                }
                response_result = requests.post(url, data=json.dumps(data), headers=headers)
                status_code = response_result.status_code
                # response_text = response_result.text
                # print('修改步数状态码:%s' % status_code)
                # print('修改步数返回数据:%s' % response_text)
                if status_code == 200:
                    return '修改步数为【%s】成功' % self.step
                else:
                    return '修改步数失败'
    
    
    # 睡眠到第二天执行修改步数的时间
    def get_sleep_time():
        # 第二天日期
        tomorrow = datetime.date.today() + datetime.timedelta(days=1)
        # 第二天7点时间戳
        tomorrow_run_time = int(time.mktime(time.strptime(str(tomorrow), '%Y-%m-%d'))) + 25200
        # print(tomorrow_run_time)
        # 当前时间戳
        current_time = int(time.time())
        # print(current_time)
        return tomorrow_run_time - current_time
    
    
    if __name__ == "__main__":
        while 1:
            # 最大运行出错次数
            fail_num = 3
            while fail_num > 0:
                try:
                    # 修改步数结果
                    result = LexinSport('乐心健康账号', '乐心健康密码', 修改步数).change_step()
                    print(result)
                    fail_num = 3
                    break
                except Exception as e:
                    print('运行出错,原因:%s' % e)
                    fail_num -= 1
                    if fail_num == 0:
                        print('修改步数失败')
            sleep_time = get_sleep_time()
            time.sleep(sleep_time)

    完整项目代码获取点这里获取

    展开全文
  • 1.缩略图的方式显示文章列表(首页,分类文章),包括显示文章分类发布时间,加载分页。 2.在首页用轮播方式显示指定文章。 3.显示文章分类(专题),包括显示分类的封面图片。 4.显示文章内容页,包括文章站内...
  • 手机安装第三方软件乐心健康,注册账号登录,将运动数据同步微信支付宝。用 python 脚本远程修改乐心健康当前登录账号的步数即可。 第一步:在手机安装乐心健康 app。 安卓版下载地址: ( ...

    项目意义

    如果你想在支付宝蚂蚁森林收集很多能量种树,为环境绿化出一份力量,又或者是想每天称霸微信运动排行榜装逼,却不想出门走路,那么该 python 脚本可以帮你实现。

    实现方法

    手机安装第三方软件乐心健康,注册账号登录,将运动数据同步到微信和支付宝。用 python 脚本远程修改乐心健康当前登录账号的步数即可。

    第一步:在手机上安装乐心健康 app。

     


    安卓版下载地址:

    ( http://app.mi.com/details?id=gz.lifesense.weidong )

    苹果版下载地址:

    ( https://apps.apple.com/us/app/lifesense-health/id1479525632 )

    第二步:注册账号登录,并设置登录密码。

     

    第三步:完成第三方同步,将运动数据同步到微信和支付宝。

     

    第四步:运行 python 脚本,修改乐心健康步数。

     

     

    3

    python 代码

    程序设定是每天 7 点自动修改步数,在下面脚本对应的位置替换填入乐心健康账号、乐心健康密码、修改步数,然后运行程序。修改步数推荐设置范围是 30000 至 90000,步数值太大会导致修改不成功。如果想改变第二天自动修改步数的时间,请修改图示位置的 25200,+25200 代表第二天 0 点后加上的秒数,也就是 7x60x60,即 7 小时,根据自己的需要修改即可。如果每天都要修改步数,那么让程序一直保持运行即可。

    注意:运行程序会立刻修改当天的步数,自动修改步数是从程序保持运行的第二天开始。

     

    部分源码,全部源码获取方式见文末# -*- coding: utf-8 -*-
    import requests
    import json
    import hashlib
    import time
    import datetime


    class LexinSport:
    def __init__(self, username, password, step):
    self.username = username
    self.password = password
    self.step = step

    # 登录
    def login(self):
    url = 'https://sports.lifesense.com/sessions_service/login?systemType=2&version=4.6.7'
    data = {'loginName': self.username, 'password': hashlib.md5(self.password.encode('utf8')).hexdigest,
    'clientId': '49a41c9727ee49dda3b190dc907850cc', 'roleType': 0, 'appType': 6}
    headers = {
    'Content-Type': 'application/json; charset=utf-8',
    'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 7.1.2; LIO-AN00 Build/LIO-AN00)'
    }
    response_result = requests.post(url, data=json.dumps(data), headers=headers)
    status_code = response_result.status_code
    response_text = response_result.text
    # print('登录状态码:%s' % status_code)
    # print('登录返回数据:%s' % response_text)
    if status_code == 200:
    response_text = json.loads(response_text)
    user_id = response_text['data']['userId']
    access_token = response_text['data']['accessToken']
    return user_id, access_token
    else:
    return '登录失败'

    # 修改步数
    def change_step(self):
    # 登录结果
    login_result = self.login
    if login_result == '登录失败':
    return '登录失败'
    else:
    url = 'https://sports.lifesense.com/sport_service/sport/sport/uploadMobileStepV2?systemType=2&version=4.6.7'
    data = {'list': [{'DataSource': 2, 'active': 1, 'calories': int(self.step/4), 'dataSource': 2,
    'deviceId': 'M_NULL', 'distance': int(self.step/3), 'exerciseTime': 0, 'isUpload': 0,
    'measurementTime': time.strftime('%Y-%m-%d %H:%M:%S'), 'priority': 0, 'step': self.step,
    'type': 2, 'updated': int(round(time.time * 1000)), 'userId': login_result[0]}]}
    headers = {
    'Content-Type': 'application/json; charset=utf-8',
    'Cookie': 'accessToken=%s' % login_result[1]
    }
    response_result = requests.post(url, data=json.dumps(data), headers=headers)
    status_code = response_result.status_code
    # response_text = response_result.text
    # print('修改步数状态码:%s' % status_code)
    # print('修改步数返回数据:%s' % response_text)
    if status_code == 200:
    return '修改步数为【%s】成功' % self.step
    else:
    return '修改步数失败'


    # 睡眠到第二天执行修改步数的时间
    def get_sleep_time:
    # 第二天日期
    tomorrow = datetime.date.today + datetime.timedelta(days=1)
    # 第二天7点时间戳
    tomorrow_run_time = int(time.mktime(time.strptime(str(tomorrow), '%Y-%m-%d'))) + 25200
    # print(tomorrow_run_time)
    # 当前时间戳
    current_time = int(time.time)
    # print(current_time)
    return tomorrow_run_time - current_time


    if __name__ == "__main__":
    # 最大运行出错次数
    fail_num = 3
    while 1:
    while fail_num > 0:
    try:
    # 修改步数结果
    result = LexinSport('乐心健康账号', '乐心健康密码', 修改步数).change_step
    print(result)
    break
    except Exception as e:
    print('运行出错,原因:%s' % e)
    fail_num -= 1
    if fail_num == 0:
    print('修改步数失败')
    # 重置运行出错次数
    fail_num = 3
    # 获取睡眠时间
    sleep_time = get_sleep_time
    time.sleep(sleep_time)

    展开全文
  • 项目意义如果你想在支付宝蚂蚁森林收集很多能量种树,为环境绿化出一份力量,又或者是想每天称霸微信运动排行...第一步:在手机安装乐心健康app。安卓版下载地址:乐心健康安卓版苹果版下载地址:乐心健康iOS版第...
  • Android微信支付集成踩过的坑

    千次阅读 2017-10-26 16:49:31
    近公司需要微信支付,所以不得不去看看微信支付文档。但是你懂得,那文档写的真带劲,看不懂。...1、前期的准备:把App安装到手机,然后去微信平台下载签名工具:https://open.weixin.qq.com/zh_CN/htmledit
  • 2实现方法手机安装第三方软件乐心健康,注册账号登录,将运动数据同步微信支付宝。用 python 脚本远程修改乐心健康当前登录账号的步数即可。第一步:在手机安装乐心健康 app。安卓版下载地址:...
  • 公司项目需要用到微信支付,之前没有接触过,...首先要求填写签名的地方可以下载一个签名APP,安装此签名APP到手机,接下来用正式的签名工具打包现在自己的APP安装到手机,打开签名APP输入刚才自己的APP包名,这...
  • BookStack 配套手机APP BookChatApp 开源地址 Gitee: https://gitee.com/truthhun/BookChatApp GitHub: https://github.com/TruthHun/BookChatApp BookChatApp下载体验地址 https://www.bookstack.cn/app 目录...
  • 12.开源的微信接口、微博接口、阿里接口、支付宝支付、微信支付、推送功能源码,让你的APP更强大。 13.简单实用的图片HTTP上传下载客户端服务端(IndyHttpServer)的示例源码。 14.发朋友圈、查看朋友圈的客户端...
  • 手机安装第三方软件乐心健康,注册账号登录,将运动数据同步微信支付宝。用 python 脚本远程修改乐心健康当前登录账号的步数即可。 第一步:在手机安装乐心健康 app。 安卓版下载地址:(http://app.m
  • 2实现方法手机安装第三方软件乐心健康,注册账号登录,将运动数据同步微信支付宝。用 python 脚本远程修改乐心健康当前登录账号的步数即可。第一步:在手机安装乐心健康 app。安卓版下载地址:...
  • 有的人有点资源当宝贝一样,所以我购买了免费分享出来供大家下载,源码原地址http://www.sucaihuo.com/source/1287,本教程包括安装后台编译打包详细教程,非常适合新手,跟着做就行 Thinkphp5开发的千月影视APP...
  • 实现方法手机安装第三方软件乐心健康,注册账号登录,将运动数据同步微信支付宝。用python脚本远程修改乐心健康当前登录账号的步数即可。第一步:在手机安装乐心健康app。 安卓版下载地址:...
  • 16、[2014-06-03] 添加"no-siteapp",防止百度转码,手机访问百度收录页面直接跳转到手机版。 15、[2014-06-01] 修复极少数版本会员中心显示错乱的问题。 14、[2014-05-27] 新增功能,查询删除"已经入库的,没有...
  • 支持二维码扫描下载安装到手机。 2、企业会员可以将简历导出为WORD格式保存到自己电脑, 3、企业发布职位,新增设职位福利标签,可同时选择多个标签,如五险、双休等, 4、企业职位管理内新增发布中职位、屏蔽中...
  • 以及基于Git、PowerApp、混合现实、AR、MR技术,正是:一日千里,始于基石。 这都在全新的Zoomla!逐浪CMS2 x3.9.3中得到了淋漓尽致的体现,作为成熟的CMS软件厂商,我们从不只为标新立异、哗众取宠,而是既关注全新...
  • 电脑商城多用户,个人支付宝免签,无需在支付宝申请接口,直接填写支付就可以实现在线支付功能,另外再加上24套微信店铺模板一起打包,在这里完全免费分享,无任何限制,免金币,免RMB下载。在这里非常感谢粉丝分享...
  • 手机网站支付接口2.0(手机网站支付):client.TradeWapPay() 统一收单下单并支付页面接口(电脑网站支付):client.TradePagePay() APP支付接口2.0(APP支付):client.TradeAppPay() 统一收单交易支付接口(商家扫...
  • 鉴于以上特点,您可以下载安装Fecmall,然后更改Fecmall的模板功能,扩展自己想要 的功能,或者安装第三方开发好了的扩展或者模板,来快速的组建起来您的网站。 6、捐赠 如果您认为这是一个不错的项目,对您有...
  • 手机网站:手机站、APP软件、微网站,多渠道展示 微网站 :微信墙 微活动,互动口碑两相宜 帮助中心;详尽操作教程,快速掌握建站技巧 模板统 :全行业精致网站模板,免费使用 推广系统:对接B2B供求平台,免费发布...
  • 下载流程:清理进程数据(包括修改设备信息)、切换IP、登录appID、打开App Store、在App Store搜索应用、下载安装app(打码)、注销app ID、关闭App Store、卸载app 评论流程:在下载流程的基础上进行评论 ...
  • 安装 node.js mysql 环境,并将此项目所有文件下载到服务器任意目录上面;注:node.js版本 >= 8.9.0 mysql版本 >= 5.5 下载项目 点击下载,解压并进入项目根目录,找到 config/config.default.js 文件按照...
  • 可以先下载apk运行到手机上看看效果,下载链接地址: apk如下所示 组件化apk的下载地址 02.项目运行 运行环境要求 Android studio 版本需要在3.0之上,compileSdkVersion是28,gradle版本是3.2.1,gradle-...
  • 一步一步由简入深讲解怎么实现,从auto.js软件的安装下载到手机的权限设置,再到脚本代码的讲解都有详细的讲解,除此之外其中还穿插了很多爱华为荣耀V20上实操的视频,让DIY学习者更加快速get技巧。 auto.js简介...
  • 整合了 RESTful API,支持前后端分离接口开发 App 接口开发,可直接上手开发业务。 一键切换云存储,本地存储、腾讯 COS、阿里云 OSS、七牛云存储都可一键切换,且增加其他第三方存储也非常方便。 全面监控系统...

空空如也

空空如也

1 2 3
收藏数 53
精华内容 21
关键字:

和支付app下载安装到手机