xref: /MusicFree/src/pages/setting/settingTypes/aboutSetting.tsx (revision ab5f994a52bee1ac7c89f2ccf9b6ca60d362890a)
1import React from 'react';
2import {
3    Image,
4    ScrollView,
5    StyleSheet,
6    TouchableOpacity,
7    View,
8} from 'react-native';
9import rpx from '@/utils/rpx';
10import {ImgAsset} from '@/constants/assetsConst';
11import ThemeText from '@/components/base/themeText';
12import LinkText from '@/components/base/linkText';
13import useCheckUpdate from '@/hooks/useCheckUpdate.ts';
14import useOrientation from '@/hooks/useOrientation';
15import Divider from '@/components/base/divider';
16
17export default function AboutSetting() {
18    const checkAndShowResult = useCheckUpdate();
19    const orientation = useOrientation();
20
21    return (
22        <View
23            style={[
24                style.wrapper,
25                orientation === 'horizontal'
26                    ? {
27                          flexDirection: 'row',
28                      }
29                    : null,
30            ]}>
31            <View
32                style={[
33                    style.header,
34                    orientation === 'horizontal' ? style.horizontalSize : null,
35                ]}>
36                <TouchableOpacity
37                    onPress={() => {
38                        checkAndShowResult(true);
39                    }}>
40                    <Image
41                        source={ImgAsset.author}
42                        style={style.image}
43                        resizeMode="contain"
44                    />
45                </TouchableOpacity>
46                <ThemeText style={style.margin}>软件作者: 猫头猫</ThemeText>
47                <ThemeText style={style.margin}>
48                    公众号: 【一只猫头猫】
49                </ThemeText>
50                <ThemeText style={style.margin}>
51                    B站:{' '}
52                    <LinkText linkTo="https://space.bilibili.com/12866223">
53                        不想睡觉猫头猫
54                    </LinkText>
55                </ThemeText>
56            </View>
57            <ScrollView
58                contentContainerStyle={style.scrollViewContainer}
59                style={style.scrollView}>
60                <ThemeText fontSize="title">开发者的话: </ThemeText>
61                <ThemeText style={style.content}>
62                    软件作者是<ThemeText fontWeight="bold">猫头猫</ThemeText>
63                    ��,不是猫头鹰��,也不是什么其他的奇奇怪怪。软件没有其他版本,如果你下载到了付费版/广告版/挂羊头卖狗肉版,那说明你被坏蛋骗了��。
64                </ThemeText>
65                <ThemeText style={style.content}>
66                    软件相关信息会发布在公众号【
67                    <ThemeText fontWeight="bold">一只猫头猫</ThemeText>
68                    】中��,也简单做了个
69                    <LinkText linkTo="https://musicfree.catcat.work">
70                        官方网站
71                    </LinkText>
72                    。(手机版和桌面版的)下载地址、使用方式、插件开发方式、常见问题都在站点中。
73                </ThemeText>
74                <Image
75                    source={ImgAsset.wechatChannel}
76                    style={style.wcChannel}
77                />
78                <Divider style={style.content} />
79
80                <ThemeText style={style.content}>
81                    本软件完全免费,并基于{' '}
82                    <ThemeText fontWeight="bold">AGPL3.0 协议</ThemeText>{' '}
83                    开源,如果需要使用此代码进行二次开发,请遵守如下约定:
84                </ThemeText>
85
86                <ThemeText style={style.content}>
87                    1. 二次分发版必须同样遵循 AGPL 3.0 协议,开源且免费
88                </ThemeText>
89                <ThemeText style={style.content}>
90                    2. 合法合规使用代码,不要用于商业用途;
91                    修改后的软件造成的任何问题由使用此代码的开发者承担
92                </ThemeText>
93                <ThemeText style={style.content}>
94                    3.
95                    打包、二次分发时请保留代码出处:https://github.com/maotoumao/MusicFree
96                </ThemeText>
97                <ThemeText style={style.content}>
98                    4. 如果开源协议变更,将在此 Github 仓库更新,不另行通知
99                </ThemeText>
100                <ThemeText style={style.content}>
101                    代码已开源到{' '}
102                    <LinkText linkTo="https://github.com/maotoumao/MusicFree">
103                        Github
104                    </LinkText>
105                    ,如果打不开试试把链接中的 github 换成 gitee。
106                </ThemeText>
107
108                <Divider style={style.content} />
109
110                <ThemeText style={style.content}>
111                    本软件需要通过插件来完成包括播放、搜索在内的大部分功能,如果你是从第三方下载的插件,
112                    <ThemeText fontWeight="bold">
113                        请一定谨慎识别这些插件的安全性,保护好自己。(注意:插件以及插件可能产生的数据与本软件无关,请使用者合理合法使用。)
114                    </ThemeText>
115                </ThemeText>
116
117                <ThemeText style={style.content}>
118                    <ThemeText fontWeight="bold">
119                        还请注意本软件只是个人的业余项目,距离正式版也有很长一段距离。
120                    </ThemeText>
121                    如果你在找成熟稳定的音乐软件,可以考虑其他优秀的软件。当然我会一直维护,让它变得尽可能的完善一些。业余时间用爱发电,进度慢还请见谅。
122                </ThemeText>
123
124                <ThemeText style={style.content}>
125                    如果有问题或者建议,可以直接去 Github issue
126                    区留言,也可以去公众号【一只猫头猫】留言,也可以去{' '}
127                    <LinkText linkTo="https://qun.qq.com/qqweb/qunpro/share?_wv=3&_wwv=128&appChannel=share&inviteCode=1XgzeY8LfIa&businessType=9&from=246610&biz=ka&mainSourceId=share&subSourceId=others&jumpsource=shorturl">
128                        QQ 频道
129                    </LinkText>{' '}
130                    发帖。
131                </ThemeText>
132
133                <ThemeText style={style.content}>
134                    开发这个软件的最初目的是自用,顺便分享出来给有需要的人。如果这个软件能对你有些帮助,那这就是
135                    MusicFree 存在的意义。
136                </ThemeText>
137
138                <ThemeText style={style.content}>by: 猫头猫</ThemeText>
139            </ScrollView>
140        </View>
141    );
142}
143
144const style = StyleSheet.create({
145    wrapper: {
146        width: '100%',
147        flex: 1,
148    },
149    header: {
150        width: rpx(750),
151        height: rpx(400),
152        justifyContent: 'center',
153        alignItems: 'center',
154    },
155    horizontalSize: {
156        width: rpx(600),
157        height: '100%',
158    },
159    image: {
160        width: rpx(150),
161        height: rpx(150),
162        borderRadius: rpx(28),
163    },
164    margin: {
165        marginTop: rpx(24),
166    },
167    content: {
168        marginTop: rpx(24),
169        lineHeight: rpx(48),
170    },
171    wcChannel: {
172        width: rpx(330),
173        height: rpx(330),
174        marginLeft: rpx(210),
175        marginTop: rpx(24),
176    },
177    scrollView: {
178        flex: 1,
179        paddingHorizontal: rpx(24),
180        paddingVertical: rpx(48),
181    },
182    scrollViewContainer: {
183        paddingBottom: rpx(96),
184    },
185});
186