CoCo编辑器、图形化编程怎么调用Scheme(跳转应用)

13 阅读3分钟

比较抱歉的是,由于本人没用过这些方面的工具,所以本期教程没有截图,纯文字叙述

虽然标题是说图形化编程,但是java也同样适用(对于java会提供相关代码)

废话不多说,先上一个例子看看效果:

https://cloudgenius.eggyhub.top/page/scheme/api/?scheme=mailto:zyz2034688700@163.com&pic=http://q.qlogo.cn/headimg_dl?dst_uin=1490295476%26spec=640%26img_type=jpg&name=云云鬼才&description=给作者发邮件

功能介绍

不感兴趣的可以直接跳过

Q:本功能有什么用?

A:本功能可以允许在软件发布后动态更新某个功能的Scheme调用,而不需要进行软件更新,更新Scheme跳转只需要一个api

Q:这个功能有什么优/缺点?

A:优点很明显,可以进行动态加载并且不需要担心Android12以上对于显式调用需要在安装包中声明调用的问题
缺点也是有的,比如如果有一些应用没有对浏览器调用开启白名单,那么浏览器调用会失效,更明显的缺点就是有一个跳转到浏览器的过程,这个会让用户觉得很难受

Q:为什么要做这个功能?

A:有很多原因,但是大部分的原因应该是一个朋友需要调用Scheme,但是没有好的方案

废话不多说,直接进入正文

分段版教程(适合老手)

首先是BASE_URL:

https://cloudgenius.eggyhub.top/page/scheme/api/

接着是参数:

* scheme : 实际调用时需要的Scheme
  pic : 网页显示的图片(如果调用过快的话可能显示不出来就直接跳转了)
  name : 显示的名称(你想显示什么名称就输入什么,完全自定义)
  description : 描述(也是自定义,看你希望用户看到什么)

"*"项为必填项,其他为选填项,可根据实际情况自行选择参数

注 : pic参数支持Base64编码图片和网络URL,但是不建议使用Base64(数据量太大,容易造成卡顿)

拼接后:

https://cloudgenius.eggyhub.top/page/scheme/api/?scheme=实际Scheme内容&pic=图片链接或Base64编码内容&name=名称&description=描述

整合式教程(适合新手)

基础链接为:

https://cloudgenius.eggyhub.top/page/scheme/api/

参数介绍

参数名称是否必选示例备注
scheme调用参数✔️mailto:xxx@xx.com需要输入标准的Scheme
pic图片https://placehold.co/400x400/png同时支持URL和Base64(不建议),可以先把图片上传到图床上
name名称你的应用名/想要跳转应用名等…你想输入什么就输入什么,不做限制,看你心情
description描述跳转的原因/应用简介等…根据实际情况来看,如果不想填完全可以不填

实际应用:

https://cloudgenius.eggyhub.top/page/scheme/api/?scheme=mailto:xxx@xxx.com&pic=https://placehold.co/400x400/png&name=名称&description=介绍
                                                 ————————————————————————— ———————————————————————————————————— ———————— ————————————————
                                                            ↑                               ↑                     ↑           ↑
                                                        Scheme(必填)                       图片地址                  名称         介绍

快捷代码

Python

from plyer import webbrowser

def open_url(url):     #在 Android 上用默认浏览器打开链接
    try:
        webbrowser.open(url)
        print(f"已打开链接: {url}")
    except Exception as e:
        print(f"打开链接失败: {e}")

if __name__ == "__main__":
    open_url("https://cloudgenius.eggyhub.top/page/scheme/api/?scheme=<Scheme>&pic=<pic_url>&name=<name>&description=<description>")

Java

import android.content.Intent;
import android.net.Uri;

private static final String SCHEME_URL = "https://cloudgenius.eggyhub.top/page/scheme/api/?scheme=<Scheme>&pic=<pic_url>&name=<name>&description=<description>";

public void openUrl() {
    Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(SCHEME_URL));
    startActivity(intent);
}

记得把 <Scheme> <pic_url> <name> <description> 替换成实际内容

最后附上一个调用自定义Scheme的网页(适合开发者)
cloudgenius.eggyhub.top/page/scheme
聪明的你应该已经发现是基础url把最后一个段去掉了吧😁,可以用于测试Scheme有没有生效哦

本期文章就到这里,有任何问题👉🏻点此联系 👈🏻