From 50d6a0f9b43800faa86e3ab072212ab5791116e7 Mon Sep 17 00:00:00 2001 From: rainerosion Date: Mon, 17 Jan 2022 19:47:47 +0800 Subject: [PATCH] add channel option. --- README.md | 8 ++++---- skyBadge.js | 51 ++++++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 50 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 76afbbd..d989cb3 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@

-# [auto.js]光遇徽章使用脚本 +# [auto.js]光遇徽章使用脚本 v1.0.1 ## 初衷 @@ -20,12 +20,12 @@ ## 当前功能 -- 目前只支持网易官方服 - - 录入多个徽章信息 - 选择对应徽章使用 +- 新增渠道服选择 + ## 使用方法 - 使用NFC Tools Pro(其他软件也可)读取实体徽章的URL @@ -60,7 +60,7 @@ ## 渠道服务包名 -如果你正在使用渠道服,请修改脚本第15行的`com.netease.sky`为下表中渠道对应的包名,目前收集到的各渠道包名见下表。 +~~如果你正在使用渠道服,请修改脚本第15行的`com.netease.sky`为下表中渠道对应的包名,~~目前收集到的各渠道包名见下表。 | 包名 | 渠道名称 | | ------------------------ | -------- | diff --git a/skyBadge.js b/skyBadge.js index 118a98c..d624b67 100644 --- a/skyBadge.js +++ b/skyBadge.js @@ -2,7 +2,7 @@ // console.show(); var storage = storages.create("com.netease.sky:badge"); // storage.clear(); -var global_option = { "[O]录入徽章": "add", "[O]清空徽章": "clear", "[O]删除徽章": "delete" } +var global_option = getMenu(); if (!storage.contains("menu")) { storage.put("menu", global_option); } @@ -12,15 +12,23 @@ startSky(); * 打开app */ function startApp(url) { - var packageName = 'com.netease.sky'; - var className = 'com.tgc.sky.netease.GameActivity_Netease'; + // 选择渠道 + var package_name = getAppChannelPackageName(); + var class_name = "com.tgc.sky.netease.GameActivity_Netease"; + + if (package_name == null || package_name == undefined || package_name.length == 0) { + toast("未选择渠道"); + // 重新提示 + startApp(url); + return; + } app.startActivity({ action: "android.nfc.action.NDEF_DISCOVERED", category: "android.intent.category.DEFAULT", data: url, type: "https", - packageName: packageName, - className: className + packageName: package_name, + className: class_name }); } @@ -109,4 +117,37 @@ function isOptions(key, menu) { return true; } return false; +} + +/** + * 渠道包名 + * @returns + */ +function getAppChannelPackageName() { + let package_map = { + "[C]网易": "com.netease.sky", + "[C]哔哩哔哩": "com.netease.sky.bilibili", + "[C]九游": "com.netease.sky.aligames", + "[C]OPPO": "com.netease.sky.nearme.gamecenter", + "[C]4399": "com.netease.sky.m4399", + "[C]小米": "com.netease.sky.mi", + "[C]VIVO": "com.netease.sky.vivo", + "[C]应用宝": "com.tencent.tmgp.eyou.eygy" + }; + let channel_options = Object.keys(package_map).map(function (data) { + return data; + }); + let index = dialogs.select("请选择渠道", channel_options); + let channel_name = channel_options[index]; + let channel_package = package_map[channel_name]; + console.log("channel:" + channel_name + ",package:" + channel_package); + return channel_package; +} + +/** + * 全局菜单 + * @returns + */ +function getMenu() { + return { "[O]录入徽章": "add", "[O]清空徽章": "clear", "[O]删除徽章": "delete" }; } \ No newline at end of file