吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 8840|回复: 52
上一主题 下一主题
收起左侧

[其他原创] 给AList添加一个TrollStore(巨魔)跳转安装选项(已合并后续会实装)

  [复制链接]
跳转到指定楼层
楼主
anwen 发表于 2023-3-7 11:34 回帖奖励
本帖最后由 anwen 于 2023-3-8 09:35 编辑

前言

AList大家应该有一部分人用过了,我就不说了

然后也支持在线安装IOS软件,但是原本自带的只支持安装Apple原生的

然后去年出了一款可以不越狱也能随意安装IOS IPA应用的软件 TrollStore,机翻就是巨魔助手(有系统要求的喔~)

有一天脑瓜子突然灵光一闪 看到 巨魔支持输入链接进行安装,我就想有没有可能巨魔支持唤醒安装呢?

(唤醒指的就是点击按钮后提示你打开XXX应用...大家应该也熟悉,不过多叙述了)

然后就去 TrollStore 翻了翻还真有~ 格式如下

apple-magnifier://install?url=<URL_to_IPA>

Tips

  • On devices that don't have TrollStore (1.3+) installed, this will just open the magnifier app.

  • 翻译就是:如果你的 TrollStore 不是1.3+ 版本只会打开Apple的放大镜应用

说下这样的好处吧~

原始流程:先从AList下载应用  ---> 找到下载的软件  ---> 点击软件然后选择右上角分享  ---> 找到巨魔图标  ---> 跳进巨魔软件进行安装  ---> 安装好了删除软件

巨魔唤醒安装流程:点击AList巨魔安装按钮击弹窗提示   ---> 进入巨魔应用内等待下载  ---> 下载好然后点击安装按钮即可

  • 省去了手动找软件下载位置,点击右上角分享到巨魔,删除软件 这几个大概的流程(这样安装也没发现会下载到本地)

可能就是懒癌犯了吧.....(bushi

不叨叨了 直接开始说怎么改吧QAQ

开始

本次实现的主要都是在前端界面内,但是由于本人又菜又爱玩...(就是说我是菜鸡...

源码路径:alist-web/src/pages/home/previews/ipa.tsx

我们直接copy一份源码的,在下面加一个新的就行,就如下面完整版的哪个巨魔测试的就是

把里面的格式改改就能用了..

原本我是这样改的... (我自己瞎缝合的 哈哈)

"apple-magnifier://install?url=" + objStore.raw_url

然后发现会 301错误,但是开启Web proxy还是可以用

经过测试发现 objStore.raw_url最后生成的链接是类似中转了 最终链接中的到的是 /p/ 的参数链接

又经过测试发现直接点击复制链接 的到的是 /d/的参数链接,能用,后来我手动把 /d/ 改成/p 发现提示301错误,由此知道了咋修改了

(上面的两条可以不用懂...)

下面就东拼西凑的想办法让参数直接传入复制链接的参数传入到我们需要的位置,然后技术不行不会改(哈哈哈)

找了几个别的大佬都是会Golang后端,不会前端,最后找到了 @侃遍天下无二人 帮忙修改的(因为我是哪个又菜又爱玩技术还不行的菜鸡)

"apple-magnifier://install?url=" + useLink().rawLink(objStore.obj, true)

这样改了能用了...但是后来发现不能安装带中文的路径(测试过的),如下图所示

img

开始以为是 TrollStore 的问题,然后同时我也尝试直接将带中文的链接手动在巨魔助手内进行手动添加能不能下载,结果是可以下载安装(还是我太菜 哈哈)

然后就尝试将Search(浏览器顶部直接复制链接)的链接进行了URL编码同时直接写死测试一下,发现能用了

"apple-magnifier://install?url=http%3A%2F%2F192.168.68.59%3A5244%2Fd%2F139%2F%25E7%25BD%2591%25E9%2580%259F%25E6%2598%25BE%25E7%25A4%25BA%2520-%2520TrollSpeed_1.7.3.tipa%3Fsign%3DDhqFh9SnUPQ9Id74EDlN75AXKJrZxJ95kTESN-aQYL0%3D%3A0"

然后就二次修改将编码进行URL编码一番,@白毛 提到的将链接进行URL编码试试看

"apple-magnifier://install?url=" + encodeURIComponent(useLink().rawLink(objStore.obj, true))

然后再测试可以安装带中文路径的啦~ over 完美解决...

(还有个瑕疵暂时,就是两个按钮绑定的是一样的事件似乎,点击巨魔的按钮 原生的安装按钮也会变哈哈,但是不影响使用 我就懒得改了,主要是不会哈哈哈)

img

PM fix:上面提到的瑕疵修复了...新建一条即可,第一条是原生的,我们在第一条下面新加一条就行..

  const [installing, setInstalling] = createSignal(false)
  const [trInstalling, setTrInstalling] = createSignal(false)

修好了 喏~这次没看到冲突了,但是记得也要给使用的代码中修改了~

          onClick={() => {
            setTrInstalling(true) //原来这里是setInstalling
          }}
        >
          {t(`home.preview.${trInstalling() ? "tr-installing" : "tr-install"}`)} //原来这里是installing

img

我们还要加一个 <HStack>呢用<HStack>把<Button>包起来,不然不是一排是竖着排序了...

import导入的时候也要导入一个 HStack 喔~不然不生效的(正常编辑器会提示你的)

img

PM FIX: 然后提交合并...开发者帮我改了下,这样更加符合了嘿嘿

const { currentObjLink } = useLink()

…………………………

            "apple-magnifier://install?url=" + encodeURIComponent(currentObjLink(true))

完整版

import { Button, HStack } from "@hope-ui/solid"
import { createSignal } from "solid-js"
import { useT, useLink } from "~/hooks"
import { objStore } from "~/store"
import { api, baseName, safeBtoa } from "~/utils"
import { FileInfo } from "./info"

const Ipa = () => {
  const t = useT()
  const [installing, setInstalling] = createSignal(false)
  const [trInstalling, setTrInstalling] = createSignal(false)
  const { currentObjLink } = useLink()
  return (
    <FileInfo>
      <HStack spacing="$2">
        <Button
          as="a"
          href={
            "itms-services://?action=download-manifest&url=" +
            `${api}/i/${safeBtoa(
              encodeURIComponent(objStore.raw_url) +
                "/" +
                baseName(encodeURIComponent(objStore.obj.name))
            )}.plist`
          }
          onClick={() => {
            setInstalling(true)
          }}
        >
          {t(`home.preview.${installing() ? "installing" : "install"}`)}
        </Button>
        <Button
          as="a"
          colorScheme="primary"
          href={
            "apple-magnifier://install?url=" +
            encodeURIComponent(currentObjLink(true))
          }
          onClick={() => {
            setTrInstalling(true)
          }}
        >
          {t(`home.preview.${trInstalling() ? "tr-installing" : "tr-install"}`)}
        </Button>
      </HStack>
    </FileInfo>
  )
}
export default Ipa

后续其他

1.安装 tipa 文件

虽然我们安装的是 .ipa 文件,也有一些 .tipa 的也能安装,虽然是越狱用的但是有一些是可以用巨魔安装的

如果你需要可以自行添加

源码位置:alist-web\src\pages\home\previews\index.ts

     name: "Ipa",
     exts: ["ipa", "tipa"],
     component: lazy(() => import("./ipa")),
2.修改 tipa图标

默认的 tipa图标是类似文件的样式不好看

  • 如下图所示,左侧是没加图标之前的右侧是添加图标后

img

源码位置:alist-web\src\utils\icon.ts

大概第45行 添加一个 tipa 后缀进去就行

"dmg,ipa,plist,tipa": BsApple,

如果你想换图标可以在这里找:https://solid-icons.vercel.app/ 怎么用不用说了吧~

3.修改文字显示

可能坛友也发现了我文字显示哪里怎么是巨魔,你显示哪里是安装

因为我也把文字做了修改

我这里只修改了中文语言包,编译的时候把英文也删除了,如果你不删除你需要两个位置都加

中文语言包源码位置:alist-web\src\lang\zh-CN\home.json 只需要自己加后面两个就行前两个是让你知道加在哪里

       "install": "安装",
       "installing": "正在安装",
       "tr-install": "巨魔",
       "tr-installing": "巨魔正在安装"

英文语言包源码位置:alist-web\src\lang\en\home.json  只需要自己加后面两个就行前两个是让你知道加在哪里

       "install": "Install",
       "installing": "Installing",
       "tr-install": "TrollStore",
       "tr-installing": "TrollStore Installing"

语言包改了,前端代码位置也要改一下

源码位置:alist-web\src\pages\home\previews\ipa.tsx

在我们新加的那个按钮里面自己添加就行

          {t(`home.preview.${trInstalling() ? "tr-installing" : "tr-install"}`)}
        </Button>

结束

呃....以上就是这些..感谢给我提供帮助的大佬们~ 么么哒 爱你们

免费评分

参与人数 9吾爱币 +15 热心值 +7 收起 理由
抱抱 + 1 巨魔 ipa 软件包 大全https://iosyyds.net
WWNN + 1 + 1 鼓励转贴优秀软件安全工具和文档!
qsj521521 + 1 + 1 谢谢@Thanks!
nfscarbon + 1 + 1 我很赞同!
Tonyha7 + 2 + 1 谢谢@Thanks!
侃遍天下无二人 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
hongziming + 1 我很赞同!
Sakura456 + 1 我很赞同!
kwan8888 + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

推荐
晴朗的秋天 发表于 2023-3-7 14:00
zys724 发表于 2023-3-7 13:54
大佬,这些ipa包从哪里来,特别是定位的找不到

私发你消息了,,,私信居然要扣5个CB。。。心疼~

免费评分

参与人数 5吾爱币 +7 热心值 +4 收起 理由
bobosyunle + 1 热心回复!
tisonlau + 1 + 1 谢谢@Thanks!
122003 + 1 + 1 用心讨论,共获提升!
zys724 + 1 + 1 热心回复!
anwen + 3 + 1 回回血给你

查看全部评分

推荐
 楼主| anwen 发表于 2023-3-7 15:38 |楼主
本帖最后由 anwen 于 2023-3-7 15:39 编辑
igroot520 发表于 2023-3-7 15:36
完犊子,我是用的alist一键安装的,我还没找到前端在哪里

等下个版本吧~ 下个版本就合并了 已经pr进去啦
考虑到层主都不知道前端在哪里 哈哈 估计自己编译也够呛QAQ~~~~ 等下个版本吧 哈哈
沙发
你是我的人 发表于 2023-3-7 12:32
3#
晴朗的秋天 发表于 2023-3-7 12:48
感谢分享。16.3的用户表示羡慕~~~
4#
 楼主| anwen 发表于 2023-3-7 12:52 |楼主
晴朗的秋天 发表于 2023-3-7 12:48
感谢分享。16.3的用户表示羡慕~~~

开始的时候TrollStore也不支持 15.4.1...我都差点准备升级了 还好等来了希望
5#
晴朗的秋天 发表于 2023-3-7 12:58
anwen 发表于 2023-3-7 12:52
开始的时候TrollStore也不支持 15.4.1...我都差点准备升级了 还好等来了希望

我之前用12,用TrollStore用得非常爽,安装虚拟定位、安装喜欢的字体。
后来换了14PM, 为了灵动岛,啥都没有了。。。哭唧唧
6#
 楼主| anwen 发表于 2023-3-7 13:00 |楼主
本帖最后由 anwen 于 2023-3-7 13:08 编辑
晴朗的秋天 发表于 2023-3-7 12:58
我之前用12,用TrollStore用得非常爽,安装虚拟定位、安装喜欢的字体。
后来换了14PM, 为了灵动岛,啥 ...

12继续用~哈哈 灵动岛一边站 哈哈~ 要是14也支持TrollStore销量肯定不少
7#
xiaotuxt 发表于 2023-3-7 13:44
有几个图片不能查看了?
8#
 楼主| anwen 发表于 2023-3-7 13:49 |楼主
xiaotuxt 发表于 2023-3-7 13:44
有几个图片不能查看了?

可能图床屏蔽了 换图源了这次呢
9#
zys724 发表于 2023-3-7 13:54
晴朗的秋天 发表于 2023-3-7 12:58
我之前用12,用TrollStore用得非常爽,安装虚拟定位、安装喜欢的字体。
后来换了14PM, 为了灵动岛,啥 ...

大佬,这些ipa包从哪里来,特别是定位的找不到
10#
晴朗的秋天 发表于 2023-3-7 13:59
zys724 发表于 2023-3-7 13:54
大佬,这些ipa包从哪里来,特别是定位的找不到

我不敢发链接,怕被封ID。。。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 12:22

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表