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