Git代码同步

1、拉取最新代码、提交

1
2
3
4
5
cd CQApp-api-mongodb/
git pull origin master
git add .
git commit -m "add api cardlist"
git push origin master

image-20201121123010573

image-20201121123124236

上传成功,我们通过网站或者sourcetree等查看效果

image-20201121124131447

1、问题1:未配置用户名和邮箱

image-20201121123308986

解决配置用户名和邮箱

1
2
3
4
5
6
7
8
# 1、全局配置:使用 --global 修饰后设置的全局的用户
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"


# 2、如果只想设置单个项目的用户:可cd到项目根目录下,执行如下命令:
$ git config user.name "Your Name"
$ git config user.email "email@example.com"

使用命令:git config –list 可查看当前用户信息以及其他的一些信息

image-20201121123421969

2、拉取提交省去密码输入的技巧–ssh

1
2
3
4
5
ssh-keygen -t rsa -C "ecs_aliyun"

cd /root/.ssh

cat id_rsa.pub

image-20201121114358468

到 github/gitee/gitlab 上添加对应的ssh

image-20201121114618923

四、提交云服务器代码

  • 1、从服务器重新拉代码,将本地代码更新为服务器上的最新代码
1
git pull

image-20220112144529354

  • 2、查看本地代码状态,是否有待提交的代码
1
git status
  • 3、将本地代码全部提交
1
git  add .
  • 4、commit提交并添加注释
1
git commit -m "我是提交的注释" 

如果提交过程中出现如下问题:

image-20220112145348308

请先根据提示,设置全局邮件和用户名,以让其他开发者可以看到是谁提交。配置前和配置后,可使用

1
2
3
4
5
6
7
# 查看
git config -l

# 设置提交者的邮箱
git config --global user.email "dvlproad@163.com"
# 设置提交者的用户名
git config --global user.email "dvlproad"

image-20220112145514520

设置完后,重新执行

1
git commit -m "我是提交的注释" 

即可。接下来就只剩最后一步,就可正式提交完成了。

  • 5、将本地的 master 分支推送到 origin 主机的 master 分支。
1
$ git push origin master

更多 git push用法,查看官网https://www.runoob.com/git/git-push.html

image-20220112163849708

结果:

image-20220112172647153

End

iOS功能_通用链接

Universal Links(通用链接)

相关文档:

Universal Links(通用链接),是iOS9推出的一项新功能。如果你的应用(app)支持通用链接(Universal Link)之后,iOS用户能够在点击网页的链接的时候无缝的重定向到已经安装的app,不需要额外的任何操作。如果没有安装对应的app,那么点击链接会使用Safari打开网页。

附:在iOS9以前,对于各种浏览器,Safari中唤醒app的需求,我们通常是只能使用scheme的方式。现在iOS9之后,我们多了一种方式。两种方式的区别是scheme能够支持我们跳转app的时候加入参数。

二、Universal Links的表现及测试

假设对于 com.dvlproad.Beyond 这个app,

dvlproad.com/app 是通用链接, dvlproad.com/mobile 不是通用链接。

1、在浏览器Safari地址栏中的表现

则我们先分别将这些链接粘贴到浏览器Safari的地址栏中,

1、浏览器地址栏为非通用链接时,没什么特别。
2、而浏览器地址栏为通用链接的时候,
①如果我们有安装`com.dvlproad.Beyond这个app,则会发现该页面下滑后,在顶部会多了个在应用中打开的操作,形如:

UniversalLinks_show1

②如果我们没有安装com.dvlproad.Beyond这个app,则没有多这栏打开。即使你的通用链接都配置正确了。

2、在非浏览器,如备用录app里的表现

UniversalLinks_show2

我们会发现点击

1、备忘录中的链接为非通用链接时,点击链接没什么特别。
2、而备忘录中的链接为通用链接的时候,点击链接会直接跳转到我们的com.dvlproad.Beyond这个app上。

三、Universal Links的实现

要让一个链接成为通用链接。需要

1、开启配置 Associated Domains

只有以该域名开头的链接,才可能是通用链接。

2、制作上传 apple-app-site-association

1、Associated Domains

1、进入苹果Apple Developer -> Member Center -> Certificates, Identifiers & Profiles – >Identifiers - >App IDs–>Edit 然后开启打钩 Associated Domains 后保存。

img

如果你使用Xcode的自动管理证书,可直接跳到第二步,即Xcode会在你打开Associated Domains时,自动帮你处理证书配置问题以及appIDs打开Associated Domains。

2、在项目中添加Associated Domains

AssociatedDomains_Set1/AssociatedDomains_Set1.png)

点击Associated Domains的+号填入applinks:后面是你的域名。

AssociatedDomains_Set2/AssociatedDomains_Set2.png)

及添加完后,只有以该域名dvlproad.com开头的链接,才可能是通用链接。

附:有时候,上面的设置也会改使用二级域名,如applinks:app.dvlproad.com。

2、apple-app-site-association

App在安装的时候,iOS系统会去根据该app配置里填的那些Associated Domains下,去这些域的根目录下,取apple-app-site-association文件。

我们创建apple-app-site-association文件,并上传也是为了让iOS系统通过Associated Domainsapple-app-site-association这个文件,一起知道你的哪些是链接是Universal Links,哪些不是Universal Links。

2.1、制作apple-app-site-association 文件

创建一个命名为apple-app-site-association文件,文件名必须为apple-app-site-association!!!(注意这个文件必须没有后缀名

apple-app-site-association内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"applinks": {
"apps": [],
"details": [
{
"appID": "myTeamId.com.dvlproad.Beyond1",
"paths": [ "*" ]
},
{
"appID": "myTeamId.com.dvlproad.Beyond2",
"paths": [ "app" ]
}
]
}
}

appID 是由你的Team ID+BundleID组成,如果你不知道你的Team ID是什么?进入苹果Apple Developer -> Member Center ->Membership->Team ID

paths 是一个字符串的数组,这里是你的应用支持的通用链接与不支持的链接,例如你使用的是/*,代表着只要是Associated Domains域名下的所有的链接都支持。如果你不支持某一个链接,在这个链接前面加NOT空格,举个例子

“paths”:[ “NOT /home/“, “/“ ]

如果这样写就是除了不支持/home下所有的链接,其他链接都支持。

2.2、上传apple-app-site-association 文件

把你刚才制作好的apple-app-site-association文件,放到**1中Associated Domains所填写的域名dvlproad.com**的根目录下或者.well-known下(要怕除问题,两个地方都放也行。)。

2.3、检测上传的apple-app-site-association 文件是否成功

①、通过浏览器访问https://xxx.com/apple-app-site-association地址,看文件是否上传成功。

②、苹果有一个检测的接口 苹果测试入口 ,将你的域名放入测试口,点击TestURL即可。

2.4、上传apple-app-site-association 文件到dvlproad.github.io的例子

为方便测试,我们域名使用dvlproad.github.io这个。

1、apple-app-site-association必须放置在域名的根目录或者 .well-known 目录下,

2、在本地测试跟路径是否有效。

方法:将apple-app-site-association放置好后,我们执行hexo s,则我们就能成功访问http://localhost:4000,进而http://localhost:4000/apple-app-site-association

UniversalLinks_test1/UniversalLinks_test1.png)

3、本地可以后,就部署到服务器

测试部署成功与否,通过浏览器访问https://dvlproad.github.io/apple-app-site-association

1、优先本地部署测试,即 hexo s 后,通过浏览器访问:
http://localhost:4000/apple-app-site-association 如果可以下载则文件位置放置在根目录正确。
2、本地测试通过后,进行远程部署 hexo g 和 hexo d 测试,及通过浏览器访问:
https://dvlproad.github.io/apple-app-site-association
如果可以下载代表在1的基础上,远程部署也成功了。
如果无法访问/下载,而又确认部署完成了,那一般是部署了但还没同步到域名地址上的问题。建议等等或者再部署一下看看。

3、写一个通用链接并测试

为进一步了解知道哪些链接是通用链接,哪些不是。我们以上述例子进行说明。

则对于com.dvlproad.Beyond1这个app,由于paths是[ "*" ]

即只要是dvlproad.com开头的链接都是通用链接。

而对于com.dvlproad.Beyond2这个app,由于paths是[ "app" ]

所以,只有以dvlproad.com/app开头的链接才是通用链接。即形如 dvlproad.com/app/111、dvlproad.com/app/abc 等都是通用链接。

通用链接的测试方法,请按上面已经写玩的Universal Links的表现及测试进行测试,不再累述。

四、Universal Links的使用

在AppDelegate添加下面的方法处理Universal Links

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
//TODO:后台进入前台/通用链接
#pragma mark - Universal Link
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void(^)(NSArray<id<UIUserActivityRestoring>> * __nullable restorableObjects))restorationHandler {

NSLog(@"userActivity : %@",userActivity.webpageURL.description);
if ([userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb]) {
NSURL *webUrl = userActivity.webpageURL;
NSArray *universalLinks = LUCKIN_UNIVERSALLINKS;
BOOL isUniversalLinks = NO;
for (NSString *universalLink in universalLinks) {
isUniversalLinks = [webUrl.host isEqualToString:universalLink];
if (isUniversalLinks) {
break;
}
}
if (isUniversalLinks) {
//TODO:判断域名是自己的网站,进行我们需要的处理
} else {
[[UIApplication sharedApplication] openURL:webUrl];
}
}
return YES;
}

当用Universal Links启动APP时就会调用上面的方法。

把我们设置好通用链接的URL放到备忘录中,长按URL会多出一条在“××××”中打开,当你点击时就会打开你的APP,并且在上面的方法中将URL传给你处理。

微信SDK的最新版本openSDK1.8.6 开始,需要进行Universal Links配置。

1、分析微信配Universal Links的原因

回顾iOS9之前,假设一个页面在微信app内部打开,其要跳转到app,一般需要先跳转到浏览器,如Safari中,然后才能再进行scheme跳转到我们的应用。

UniversalLinks_wechat1

而有了Universal Links后,现在你用微信打开的页面,跳转的时候,即可直接跳转到app中,不用再经过浏览器。

2、微信配Universal Links的操作

2.1、基本分享操作的支持

微信分享配置Universal Links的有两个地方。

1、微信开放平台 https://open.weixin.qq.com 上对应app的Universal Links配置

UniversalLinks_wechat_Set1/UniversalLinks_wechat_Set1.png)

2、微信SDK使用时候的Universal Links配置。

如果上述两个值设置不一样,会导致在app中点击分享的时候,没法正常调起分享操作。错误信息如下:

UniversalLinks_wechat_error1

我们知道Universal Links是用来做通用链接的。但要完成这一步的操作不需要我们去开Associated Domains和上传apple-app-site-association才能完成基本的分享操作了。

2.2、分享完微信能够正常返回

iOS 9系统策略更新,限制了http协议的访问,需要在“Info.plist”中将要使用的URL Schemes列为白名单,才可正常检查其他应用是否安装。

1
2
3
4
5
6
7
8
9
10
<key>LSApplicationQueriesSchemes</key>
<array>
<string>weixin</string>
<string>weixinULAPI</string>
</array>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>

2.3、可以在微信内部直接跳转到app

实现Universal Links的实现。即

1、开启配置 Associated Domains

2、制作上传 apple-app-site-association

上面已说明,请查看上面内容。

End

iOS功能_桌面小组件

桌面小组件

相关文档:

一、小组件时间线

时间线,其包含多个时间线条目,每个时间线条目都包含时间和数据,用来更新小组件。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
struct Provider: AppIntentTimelineProvider {
// 用户第一次看到小组件时,显示的时间线条目占位数据
func placeholder(in context: Context) -> SimpleEntry {
SimpleEntry(date: Date(), configuration: ConfigurationAppIntent())
}

// 随后会调用以下方法,会要求程序提供预览快照,需要异步返回一个时间线条目展示小组件。当然这个方法不仅在小组件库中展示时会调用,其他情况下也可能调用,可以用 `context.isPreview` 来判断当前是否在组件库中显示
func snapshot(for configuration: ConfigurationAppIntent, in context: Context) async -> SimpleEntry {
SimpleEntry(date: Date(), configuration: configuration)
}

// 返回时间线,其包含多个时间线条目,每个时间线条目都包含时间和数据,用来更新小组件
func timeline(for configuration: ConfigurationAppIntent, in context: Context) async -> Timeline<SimpleEntry> {
var entries: [SimpleEntry] = []

// Generate a timeline consisting of five entries an hour apart, starting from the current date.
let currentDate = Date()
for hourOffset in 0 ..< 5 {
let entryDate = Calendar.current.date(byAdding: .hour, value: hourOffset, to: currentDate)!
let entry = SimpleEntry(date: entryDate, configuration: configuration)
entries.append(entry)
}

//
return Timeline(entries: entries, policy: .atEnd)
}
}

主动请求重新刷新

如果在App中修改了小组件的数据,可以通过如下的方式主动触发WidgetKit刷新小组件。

代码语言:javascript

复制

1
2
3
4
// 指定刷新哪个组件
WidgetCenter.shared.reloadTimelines(ofKind: "com.mygame.character-detail")
// 刷新全部组件
WidgetCenter.shared.reloadAllTimelines()

End

iOS功能_本地化 genstrings 一行命令搞定收集(高级)

目录

  • 一、问题出现场景
  • 二、如何收集需要本地化字符串

前言

首先说明为什么要写这一篇?这一篇的重点是什么?
问:需要本地化的时候,你还在一个个抽取到Localizable.strings,再翻译成对应的文本吗?你不觉得这样的方式很笨吗?如果原本的项目都没本地化,那你现在去抽,是不是要抽取到si。。。

你可能会反问我,不一个个抽,难道你还能一下子都抽取出来吗?是的,我有!这也是我为什么要写这一篇的原因。如果不是,那网上一大堆的本地化,我何必重复累诉。

一、问题出现场景

为什么会有这样的场景出现,场景如下:
最近在整理公司的一些老项目的时候,之前的开发人员,压根没做本地化,导致现在要将项目中的语言根据当地改成那边的文字(比如大的如不同国家,小的如不同地区的方言文字)。如果我一个个去每个文件里抽,那我一天48个小时都不够用,而且一点技术含量都没有,简直是弱智的表现。所以,既然”偷懒”作为一个程序员的”优良”品质,我们就应该好好想一想怎么样才能做到最快最好。所以下面将着重介绍如何高效的处理本地化这一点。

1、添加本地化的输出文件

image-20250309004650075

输入文件名,默认是Localizable

1
2
// Localizable.strings
NSLocalizedString(@"无访问相册权限", nil)

如果你想将本地化的文件进一步区分到不同文件,请输入另外的名字,且使用时候如下:

1
2
// LocalizableDownloader.strings
NSLocalizedStringFromTable(@"相册访问授权失败", @"LocalizableDownloader", @"相册访问授权失败")

只有一个本地化文件时候显示样式是如下:

image-20250309005203038/image-20250309005203038.png)

2、添加想要的文件

image-20250309005656351

在右侧Localization中勾选想要的本地化语言,可在左侧文件列表,可发现InfoPlist.stirings左侧多了一个箭头,点击箭头可以展开,显示支持的本地化语言。

image-20250309010352746

二、如何收集需要本地化字符串

1、基本命令介绍

genstrings -o en.lproj *.m
但是这个命令只能生成当前目录的,并没有遍历子目录,所以基本没用,所以不推荐,建议用后面的 find 方法

附:genstrings命名的基本语法:

1
2
3
4
5
6
7
genstrings [-a] [-q] [-o <outputDir>] sourcefile
其中参数:
-a 在存在的文件后面追加内容
-q 关闭多个键/值对的警告
-o 指定输出目录
因此如果我们想输出到en.lproj目录,则代码如下:
genstrings -o en.lproj *.m
2、高级命令介绍

所谓高级,只是多了个遍历所有的子目录文件的方法而已,先忽略这种叫法。即遍历所有的子目录文件,去生成Localizable.strings,命令如下:

1
2
3
4
5
6
7
8
9
10
11
12
②高级命令:
错误:find ./ -name *.m -print0 | xargs -0 genstrings -o ./en.lproj("错误写法,执行无效, 因为*.m处两边少了双引号")
正确:
find ./ -name "*.m" -print0 | xargs -0 genstrings -o ./en.lproj(正确写法,亲测有效)
find ./ -name "*.m" -print0 | xargs -0 genstrings -o ./zh-Hans.lproj
等价于:
正确:find . -name \*.m | xargs genstrings -o ./en.lproj (正确,亲测有效)
此命令会去把当前cd到的目录下的所有文件(含子目录中的文件)有用到NSLocalizedString函数的key值都写到文件里。

两个命令执行的前提都是你得必须在你所cd到的文件夹下,创建要将生成的Localizable.strings放在什么位置,在上面的命令中是放在en.lproj文件夹中,当然这个名字我们也可以随便取。最后最后,真正本地化的时候,需要安装系统的en.lproj名字来。

两个命令执行的结果都是:如果命令行中的 en.lproj文件夹中没有Localizable.strings,那么其会自动创建Localizable.strings文件,并在其中补全东西。如果有,则会去更新它的内容。
3、详细操作步骤

通过终端命令genstrings生成字符串资源文件的步骤如下:

①、构造需要本地化的字符串

对项目中需要本地化的字符串设置NSLocalizedString,如

1
2
NSString *ok = NSLocalizedString(@"OK", @"dialog button"); 
NSString *ok = NSLocalizedStringFromTable(@"Ok", @"commonTable", @"dialog button");

附:本地化中可能遇到的含格式的字符串的时候,怎么写?参考AFNetworking的写法如下:
[NSString stringWithFormat:NSLocalizedStringFromTable(@"Request failed: %@ (%ld)", @"AFNetworking", nil), [NSHTTPURLResponse localizedStringForStatusCode:response.statusCode], (long)response.statusCode]

②、执行命令

打开终端,cd到项目文件夹下(包含en.lproj和zh-Hans.lproj)
执行上面的命令find ./ -name "*.m" -print0 | xargs -0 genstrings -o en.lproj(正确写法,亲测有效)

③、生成的资源文件在哪?

答:如果使用NSLocalizedStringFromTable(key, tbl, comment)来获取字符串,资源文件会以tbl参数作为文件名,比如上诉生成的资源文件为:commonTable.strings

附:执行命令遇到的常见问题

有时候执行命令后常出现这样的问题,

509D03C5-3AB4-4C1E-A6C5-FF0E60B7876F.png

之前一直以为是命令处理的文件个数有限,后来才发现原来是我们的本地化代码有些地方没写对,或者没写完全。

比如:
①情况1:

1FBDC094-A455-4FED-9E78-14960BB4EFBC.png

0A255F9E-DF29-4460-A091-33E2598569F8.png

这种问题,可全局查找";替换掉那些语句有问题的为", "cjcomment");即可解决问题。

②情况2:
下面这个是括号没对,右括号是中文的括号,不是英文的(对于这种问题,我们可以搜索中文的括号,将项目中的中文括号,替换成英文括号即可解决绝大部分问题,甚至是全部问题)

541E0E79-2BB4-47A4-85F6-54904FF5E263.png

所以,为了解决类似的问题,要养成项目中所有的括号,都用英文的括号表示吧。

其他参考文章:

iOS实现语言本地化

End

结束!

PPT常识

PPT母版

PPT占位图

  • WPS office2016怎么插入占位符?

    占位符需要在母版中插入,通过[视图→幻灯片母版],可进入「幻灯片母版」视图。

    进入之后,会发现,WPS演示中并不能直接插入新的占位符,不过,默认的母版及其下各版式中,已经有各种类型的占位符(标题占位符、文本占位符、竖排文字占位符、内容占位符、图片占位符)了。

    所以可以通过【复制】原有版式,或者仅复制版式中特定的占位符,来实现新的占位符的添加。

附:

Office Word/PPT 高亮

需求,将以下代码在word、ppt中进行高亮显示

1
2
3
4
5
6
7
8
9
10
<LKImagesUploadList
imageModels={this.state.imageModels}
isEditing={this.state.isEditing}
supportBrowseImage={true}
imageModelsChangeBlock={(imageModels)=>{
this.setState({
imageModels: imageModels
})
}}
/>
  • 在word中插入带语法高亮功能的代码 (不推荐,虽然可以,但是不好看)

    借助一个网站的功能即可搞定,网址:http://www.planetb.ca/syntax-highlight-word

    只需复制点击Show Highlighted后生成的那个新页面中的代码内容,将其粘贴到word中即可看到我们想要的带语法高亮功能的代码了。

  • 如何在ppt或word中添加高亮代码的几种方法

    特别说明:使得代码在PPT可以高亮的方法是从word中复制带格式(Commond+Alt+V)的代码到PPT来

    所以,首先看使得代码在word文件中高亮的方法步骤如下:

    **高亮方法一:比SciTE更加强大的软件,HightLight,官网是:http://www.andre-simon.de/ ** 往下看还有个更好用的在线代码高亮网站

    操作方法:

    ①、在自己的文件中复制要修改的代码

    ②、进入highlight工具中的Clipboard标签页Paste from clipboard

    ③、选择输入的Select syntax为对应的语言

    ④、选择输出为RTF,然后执行Copy preview to clipboard

    ⑤、打开word文件,粘贴(Command+V)

    至此,已完成代码在word文件中的高亮。接下来才能执行代码在ppt中的高亮。

    ⑥、将高亮的代码,拷贝粘贴到word。

    ⑦、再从word中复制粘贴到ppt中即可完成。

    附1:目前HighLight使用的主题风格

    ①light+Acid、同时在word中对该区域的填充颜色为

    ②dark+dark blue、同时在word中对该区域的填充颜色为黑蓝色

    附2:对HightLight软件其他功能的使用说明。

    1
    插件python_ref_python_org.lua(视情况添加)即可在后续生成的代码中加入函数引用出处

    高亮方法二:在线代码高亮网站 强烈推荐

    操作方法:也是高亮后,拷贝粘贴到word,再从word中复制粘贴到ppt中。

    参考文章:在PowerPoint中插入高亮代码的方法一则

团队介绍的ppt

好用的网站

一、好用的软件下载网站

1、应用的网站

网站 介绍 情况 是否有消费
1 https://macwk.cn/ macwk的替代品 本来的macwk在2022.10.05正式宣布关站
2 https://xclient.info
3 https://www.macbl.com
4 https://appstorrent.ru/ 俄罗斯的网站 已关闭
5 https://mac.macxz.com/ 未来Mac下载 可搜索得到 manico \ anygo,感觉更全 好多要积分或加会员
6 https://www.xxmac.com/ 可搜索得到 manico
7 https://www.qijishow.com/
https://qijishow.com/down/
额外有设计师的各类色彩库、资源库

2、APP安装问题

科学上网_AppleID

背景

美区应用的下载

一、前提:美区AppleID

1、自己注册美区AppleID

美国地址生成器 来源 注册美国区Apple ID保姆级教程

可用的地址示例:

  • 街道:4665 University Street
  • 城市:DALLAS
  • 州:俄勒冈州
  • 邮编:97338
  • 电话:503-9177288

2、购买(极其不推荐,容易勿登被锁)

二、美区应用的下载

背景:美区 Apple ID 付款方式比较麻烦,不能绑定大陆发行的信用卡。而你又没有该类卡。

方式 推荐指数
网站购买兑换码 不推荐:人傻钱多
朋友转赠兑换码 不推荐:朋友那边需要绑定Visa付款方式
自己充值购买(推荐) 推荐:灵活性高

1、网站购买兑换码(不推荐:人傻钱多)

示例:Shadowrocket 下载

进入小卖部网站 https://fk.myue.cc/ 搜索 Shadowrocket

发卡网站 网站 商品
小卖部 https://fk.myue.cc/ Shadowrocket等
leo小店 https://shop.leouu.cn/ 国内视频账号
更多发卡网站 2024 年 31 个可以购买美区 Apple ID 和 Shadowrocket 小火箭兑换码的发卡网站

示例:

image-20240312111610755

购买后,进行兑换即可 Apple-美区兑换码用方法

2、朋友转赠兑换码

在 iPhone 上如何赠送付费应用给好友?

3、自己充值购买(推荐)

3.1、苹果官网购买充值

苹果官网购买充值(银联卡):https://www.apple.com/shop/gift-cards

3.2、PockytShop(有支付宝小程序)购买(亲测有效)

其他参考文章:如何使用PockytShop购买美区苹果商店礼品卡充值余额

直接搜索 PockytShop,打开并登录,然后搜索选择到 App Store

image-20240316015952374

购买后将得到礼品卡码。

image-20240316020156979

最后打开 App Store,点开右上角账户,选择兑换充值卡,然后粘贴上刚才的号码就能完成兑换。现在就可以去购买 App 订阅服务了。

image-20240316020320505

3.3、如何查看余额

要查看当前的Apple ID余额,只需打开App Store,点击右上角的个人头像,你的余额会显示在屏幕顶部。

End

科学上网_ClashX

在线订阅转换工具

一、ClashX的使用

其他应用:美区付费应用 Shadowrocket 的下载,详见:科学上网_AppleID

1、Clash的下载及安装

1.1 知道软件的下载地址

Clash Verge

1.2 不知道软件的下载地址

1、先使用旧方式,科学上网。

2、利用旧的科学上网方式,使用gmail邮箱注册并登录

描述 地址 账号
翻墙机场 翻墙机场 https://xn--mest5a943ag8x.com/#/dashboard userqianuser@gmail.com
闪电猫 https://speedcat-aff.com/user/profile dvlproad@163.com
更多🪜 梯子导航: tzdaohang.com
瑶瑶领先 https://yyssr.org/ 未注册
FlyingBird https://a03.fbaffa06.cc 未注册

示例:

2、Clash数据的来源与配置

image-20230312190109423

2.1 导入到ClashX

导入后的结果:

image-20230312190309143

2.2 导入到 Clash Verge

ClashVerge_3setting_1

3、Clash 的使用

3.1 ClashX 的使用

你也可以使用这个方式

image-20230312190612970 image-20230312191850552

使用SpeedCat

3.1 Clash Verge 的使用

ClashVerge_3using_1

二、设置走代理

  • WiFi/系统代理设置:影响的是图形化应用程序(浏览器、微信、Spotify 等),因为它们遵循操作系统的网络代理配置。
  • 环境变量 (HTTP_PROXY等):影响的是命令行/终端程序curlgitpipnpmapt 等),因为它们会读取这些环境变量。

它们互不干扰,你可以只开其中一个,或者两个都开。

如果你:

  • ✅ 设置了环境变量 HTTP_PROXY / HTTPS_PROXY
  • ❌ WiFi 设置中开启代理

那么:

  • 终端里的命令(如 curl https://google.comgit clone)会通过 Clash Verge 的代理(通常是 127.0.0.1:7897)→ 可以科学上网
  • 浏览器系统应用等不会走代理 → 无法科学上网(除非浏览器自己安装了代理插件并单独设置)

1、让浏览器走代理

选择④系统代理开启后,其会自动帮你对你的wifi设置代理

以下是设置系统代理后,网络的设置变化

网络代理关闭时候 网络代理开启时候

2、让终端程序 Warp 等默认走代理

2.1 先获取代理的环境变量值

ClashVerge_3using_2env

2.2 在环境变量文件里 open ~/.zshrc,设置以下内容

1
2
3
4
5
6
7
8
# ------------------- 代理设置 -------------------
# Clash Verge 代理配置(默认开启)
export https_proxy=http://127.0.0.1:7897
export http_proxy=http://127.0.0.1:7897
export all_proxy=socks5://127.0.0.1:7897
# 快捷开关(备用):把 Clash Verge 生成的配置写入 zsh 配置文件,并给命令起别名
alias proxy="export https_proxy=http://127.0.0.1:7897 http_proxy=http://127.0.0.1:7897 all_proxy=socks5://127.0.0.1:7897"
alias unproxy="unset https_proxy http_proxy all_proxy"

在终端立即生效环境变量

1
source ~/.zshrc

三、ClashX的代理信息怎么提取

有时候,我们无法安装支持ClashX的软件。而导致我们只能把ClashX中的代理信息提取出来,再添加到软件上。

那ClashX的代理信息怎么提取呢?

答:

image-20230315001025736

打开配置文件夹。

image-20230315000937705

用记事本或者Sublime Text等打开上述yaml,查看里面的信息即可看到每个节点使用的服务器、端口、加密方式、密码等信息。将它们手动输入到你的软件即可(目前我用的软件是Patatso,因为ShadowSockt下载需要付费还没绑卡)。

End

科学上网_ModHeader

Chrome插件之ModHeader

Chrome插件之ModHeader

插件下载地址:

插件安装问题:

插件的使用:

image-20230302004644164

newbing上的使用

1、假装外网,避免重定向

1
2
X-Forwarded-For
5.8.251.255

假装请求是从上面这个ip转发过去的。

输入X-选中选项

image-20230302005050901

2、假装安装了bing应用

1
2
User-Agent
EdgA/110.0.1587.54

image-20230302013222111

更多参考资料:

image-20230302003005550

https://www.bing.com/?mkt=zh-CN

https://www.bing.com/?mkt=en-US