自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 资源 (1)
  • 问答 (4)
  • 收藏
  • 关注

原创 Gradle7.1后 Could not find method publications() for arguments

升级了 Gradle 版本,在加入 maven-publish 插件后发现居然同步失败了。一查原因,找到了解决措施。如下:部分应该在 块之外,并且在它自己的中我们还需要在块中添加一个部分,指定要发布的变体。代码如下:参考:https://developer.android.com/reference/tools/gradle-api/7.1/com/android/build/api/dsl/LibraryPublishing...

2022-06-11 19:20:02 1475 1

原创 Jetpack Compose 自定义绘制——高仿Keep周运动数据页面

废话之前先上图吧,如果不是有人告诉,你可以一眼看出哪个是真哪个是假吗?仿制整个页面(仅仅页面)大概花了我两个小时,不过仅仅是静态的、不可点击的。图有形似而无功能。自定义绘制Jetpack Compose 自定义绘制的文章其实并不少了,基本代码上和View体系基本类似,就是方法上有所差异详细的内容可以见其他作者的文章,如路很长OoO的JetPack-Compose - 自定义绘制 - 掘金 (juejin.cn)RugerMc的使用 Jetpack Compose 完成自定义绘制 - 掘金 (

2022-05-30 18:56:17 794

原创 2022年Python3.10和VSCode图文配置教程

1.安装Python环境进入Python官网,鼠标指向 Downloads ,如下图点击下载。这里咱就下载最新的版本(Python 3.10.4)点击等待下载即可。下载完成后打开python-3.10.4-xxx.exe。然后选择自定义安装。下一步。到这里记得勾选 ‘Add Python to …’, 添加到环境变量。(如果你忘了,请参考python3手动配置环境变量_朝阳群众Jone的博客-CSDN博客_手动配置python环境变量)选择自定义安装路径后,然后点击安装。打开CMD,测试

2022-05-12 20:32:47 3430 1

原创 MySQL远程登录 1698 Access denied for user ‘root‘@‘localhost‘

如果你已经设置过密码,并且可以直接登陆,那么下面是解决办法先登进去mysql$ mysql -u root -p输入密码后登进去设置允许远程登录ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'mypass123';exit 退出即可...

2022-03-25 17:49:12 2510

原创 带你从零部署你的网页(两种方式)

网页部署小伙伴们完成了网页的制作后,是否希望自己精心制作的网页能被其他人访问到呢?今天我们就用vercel和nginx两种方式,带大家亲手部署属于自己的网页。vercelvercel是广为使用的网站托管平台,可以与 github 、 gitlab 等平台协作使用。对于个人用户提供了免费的服务(虽然限制了项目数量和其他功能),但也完全够用了。此处使用github平台演示。github 是什么?世界上最大的代码托管平台代码托管是啥意思,和百度网盘有啥不同准确来说,github托管的是Git

2022-03-12 14:59:02 7096

原创 深入Jetpack Compose——布局原理与自定义布局(四)ParentData

上一篇文章,我们接触了固有特性测量。这一篇,我们将探索ParentDataParentData曾经的例子让我们回忆一下第一篇文章中提到的例子,为了实现如下效果我们当时使用了这样一串修饰符:Box(modifier = Modifier .fillMaxSize() .wrapContentSize(align = Alignment.Center) .size(50.dp) .background(C

2022-03-10 11:29:56 308

原创 深入Jetpack Compose——布局原理与自定义布局(三)

在上一篇文章(深入Jetpack Compose——布局原理与自定义布局(二)中,我们探索了Modifier的本质和原理。这一次我们看看Compose体系中的一个重要特性:固有特性测量。固有特性测量或许不少人已经知道,Compose为了提高测绘性能,强行规定了每个微件只能被测量一次。也就是说,我们不能写出类似下面这样的代码:val placeables = measurables.map { it.measure(constrains) }// 尝试测量第二次,直接报错val placeables

2022-02-28 10:19:46 352

原创 深入Jetpack Compose——布局原理与自定义布局(二)

在上一篇文章深入Jetpack Compose——布局原理与自定义布局(一) 中,我们大致了解了Layout过程并简单实现了两个自定义布局。本次让我们将目光转向Modifier和固有特性测量本文部分参考自Android官方视频:Deep dive into Jetpack Compose layoutsModifier本质关于Modifier的本质,RugerMc大佬在图解 Modifier 实现原理 ,竟然如此简单这篇文章中已经解释地非常清楚了,我就不画蛇添足了。不过为了后续行文方便,我还是在此简

2022-02-15 14:03:17 1268

原创 深入Jetpack Compose——布局原理与自定义布局(一)

Jetpack Compose 正式版发布也已半年了,对我来说,应用到项目中也很久了(参见本人开源项目:译站)。 目前很多文章还集中于初探上,因此萌生了写作本文的想法,算是为Compose中文资料提供绵薄之力。本文的内容来自Android官方视频:Deep dive into Jetpack Compose layouts总览Jetpack Compose 中,单个可组合项被显示出来,总体上经历三个过程Composition(组合) -> Layout(布局) -> Drawing(绘制

2022-02-15 14:01:39 1461

原创 Jetpack Compose 中优雅完成数据持久化

Compose出来也好久了,各种remember和LocalXXX.current也是用得越来越熟。如果能在保持上述写法一致性的情况下完成数据的持久化工作,不是显得挺优雅的吗?基于此,我写出了开源库:ComposeDataSaver: 在Jetpack Compose中优雅完成数据持久化简单一瞥:// booleanExample 初始化值为false// 之后会自动读取本地数据var booleanExample by rememberDataSaverState(KEY_BOOLEAN_EXA

2022-01-25 21:01:59 2813

原创 在win11安装WSA并直接调试App

在win11安装WSA并直接调试App2021年10月20日,微软”千呼万唤始出来“地发布了对WSA的初步支持,win11具备了原生运行android apk的能力废话之前,先上图此窗口可正常拖动、缩放大小,在任务栏独立显示目前(2021年10月21日)该功能还是预览阶段。话不多说,开搞演示APP为开源项目:FunnySaltyFish/FunnyTranslation: 基于Jetpack Compose开发的翻译软件,支持多引擎、插件化~ | Jetpack Compose+MVVM+协

2021-10-21 17:32:24 4794 2

原创 Python3.10正式版发布!新特性速览

Python 3.10正式发布,你尝鲜了吗?本文参考自 Python官方文档 : Python Release Python 3.10.0 | Python.org在正值国庆假期人山人海的2021年10月4号,Python官方正式发布了Python3.10.0。作为一只假期期间宅着不动的coding人,自然是第一时间体验了一波。相较于之前的版本,该版本有以下主要变更。ps: 想看更好看的排版?访问:https://funnysaltyfish.github.io/2021/10/05/pytho

2021-10-05 22:37:28 1973 1

原创 Jitpack.io ERROR: No build artifacts found一路踩坑的解决【Gradle 7.0+,Kotlin 1.5+】

前段时间上传我的项目CMaterialColors到Jitpack时一直出现错误,最早报出的错误是:Found artifact: com.funny.cmaterialcolors:release:1.0.0Found artifact: com.funny.cmaterialcolors:release:2021-06-15T08:52:13.4704949ZExit code: 0ERROR: No build artifacts found实话说当时非常无语,经过几次失败的尝试后我决

2021-07-26 16:55:41 3081

原创 Jetpack Compose异步加载图片的实现

本文使用两种方式,实现Compose中图片的异步加载前言Android开发中异步加载图片是非常常见的需求。本文将带你实现这一需求。本文将分为如下两个方面:自己写函数用开源库本文目录前言实现借助Glide库自己写引入依赖编写函数使用例子借助开源框架简单的例子一些限制参考实现借助Glide库自己写Glide开源库基本上成为了Android中加载图片的首选,其简单易用的API和强大的缓存能力让这一过程变得十分方便。自然在Jetpack Compose中也可以使用。引入依赖在模块中的

2021-07-14 19:22:21 2035 2

原创 error: Microsoft Visual C++ 14.0 is required问题解决方法【可用】

安装个cvxpy真是太折腾了,各种错误。能找到的安装包都是包丢失或损坏,简直了……最终找到了离线的可安装包,如下链接: 查看链接提取码: f4bx注意,安装时请选择默认方式,也就是包含windows8.1的那个,里面的sdk会被用到。百度网盘下载有点慢,如果需要的话可以私信我,我看看能不能发文叔叔的【它不提供永久链接,所以没法在这里放出来】...

2021-07-11 18:21:46 146

原创 开源库:在Jetpack Compose中使用MaterialColor

使用此库即可用法示例import com.funnty.cmaterialcolors.MaterialColors/*...*/Surface(color = MaterialColors.Red200) { Text(text = "FunnySaltyFish", modifier = Modifier.padding(4.dp),color = MaterialColors.PurpleA700) /*像上面这样写color就行*/}例子这是官方例子其它更多见

2021-06-19 17:43:42 213

原创 学了python不知干啥?爬爬虫!(7)代理的使用

合理爬取,不恶意扩大站点压力本文章仅作示例,请勿用作非法用途该系列的其他篇目:系列文章合集目录在Python爬虫过程中,常常会遇见因为各种原因被服务器拒绝访问的情况。有时候设置User-Agent能够解决问题,但如果遇到服务器校验ip访问次数来判断爬虫的情况,这样简单的做法就无能为力了。往往这种时候,采用代理ip间接访问能取得不错的成效。那么,什么是代理呢?代理基本概念让我们假想这样一个场景,你是一个广告员,负责给一个老奶奶打广告并获拿到她的反馈留言。老奶奶每天见到你很心烦,看见你多次.

2021-05-21 17:20:06 403 1

原创 学了python不知干啥?爬爬虫!目录

合理爬取,不恶意扩大站点压力本文章仅作示例,请勿用作非法用途该系列的其他篇目:(1)保存网络图片(2)爬取网络小说全本并保存(2.5)另一个网络小说例子+GUI操作界面 (3)爬取豆瓣书籍列表(bs4/lxml简单使用)(4)多线程爬取(5)requests+错误处理(6)爱词霸翻译【js逆向,全过程详解】其他我的github...

2021-05-18 23:35:06 173

原创 学了python不知干啥?爬爬虫!(6)爱词霸翻译(内容详尽,从打开网页手把手完成JS逆向并写出代码)

合理爬取,不恶意扩大站点压力本文章仅作示例,请勿用作非法用途该系列的其他篇目:(1)保存网络图片(2)爬取网络小说全本并保存(2.5)另一个网络小说例子+GUI操作界面 (3)爬取豆瓣书籍列表(bs4/lxml简单使用)(4)多线程爬取(6)requests+错误处理本篇目录前言分析网络加载过程JS源码分析寻找具体算法代码编写完整代码前言  前几篇教程的爬取,我们一直局限于静态网站,且请求仅限于get。但在实际的开发过程中,动态内容才往往是爬取的核心。在本节内容中,我将带你一.

2021-04-17 21:17:27 886 9

原创 github push 443 :Failed to connect to github.com

可能的解决办法:在命令行输入:git config --global --unset http.proxygit config --global --unset https.proxy你可能认为你没用代理什么的,我也这么认为。但我输了这条命令之后就能用了。所以不妨试试?...

2021-03-17 16:10:11 209

原创 Android 基于自定义View实现的超好看底部导航栏

Android应用开发中,底部导航栏是常见需求之一,谷歌官方提供的AndroidX也包含了这一套件。但千篇一律使用下来未免觉几分单调。带着这个需求,我从View出发,实现了一个好看且易于使用的底部导航栏。

2021-03-17 12:48:12 1127

翻译 【文档翻译】Android 12总体迁移指南

本文翻译自Android官方文档,旨在指出迁移到Android 12的大致步骤。原文可以参见:这里此文档为个人翻译,Markdown编排为纯手打。如有错误请以原文档为准。目录迁移到Android12确保Android 12的兼容性执行兼容性测试提升应用的目标平台并使用新的API构建应用获取SDK、更改目标平台、使用新API构建应用测试您的Android 12应用使用App Compatibility Toggles进行测试迁移到Android12本文对标准的开发和测试过程提供高度视角,可以.

2021-03-12 23:20:48 511

原创 【解决】无线网卡windows仍在设置此设备的类配置,代码56

症状:笔记本wifi列表为空,设备管理器无线网卡显示【无线网卡windows仍在设置此设备的类配置,代码56】解决方法:下载ccleaner,扫描注册表,修复问题。再扫描一遍,修复问题。完成。原因:未知。...

2021-02-04 15:45:00 3400 1

原创 学了python不知干啥?爬爬虫!(5)requests库的使用+错误处理

合理爬取,不恶意扩大站点压力本文章仅作示例,请勿用作非法用途该系列的其他篇目:(1)爬取网络图片(2)爬取网络小说全本并保存(2.5)另一个网络小说例子+GUI操作界面 (3)爬取豆瓣书籍列表(bs4/lxml简单使用)(4)多线程爬取本篇并没有完成实际项目,而是讲述更加普遍化的处理方式。如果只是希望复制粘贴的,现在可以选择离开了本篇目录Requests初探小试身手异常处理HTTP状态码请求时间其他后续Requests初探  在前几次的爬虫中,我们一直使用urllib来完成需.

2021-01-07 17:33:11 387

原创 Android Studio4.1插件路径

C:\Users\{你的用户名}\AppData\Roaming\Google\AndroidStudio4.1\plugins

2020-12-28 16:48:37 1186

原创 学了python不知干啥?爬爬虫! (4)多线程爬取

多线程+Queue批量翻译,用比喻的方式讲解概念。欢迎您的观看!

2020-09-16 21:42:36 356

原创 Flutter Execution failed for task ‘:app:lintVitalRelease‘另一种解决(非修改build.gradle)

今天Flutter打包apk的时候,Gradle报错;上网一查,好家伙,全是lintOptions {disable ‘InvalidPackage’checkReleaseBuilds falseabortOnError false}为什么有错误就非要忽略提示呢?看不见就不存在吗?无语……于是自己在StackOverFlow上找了一圈,找到了一个可以解决的。如下,在终端依次执行三个命令:flutter build apk --debugflutter build apk -

2020-09-12 16:58:12 803

原创 Android自定义View开源库——FunnyTimeLine(时间选择器)

FunnyTimeLine是我第二个开源的自定义View(第一个FunnyUnlockView见这里),本质上是一个时间轴样式的时间选择器。成品因图片过大,请点击该页面查看(因GIF压缩问题,此处展示的图片并不清晰且卡顿,建议您下载demo自行体验)特点该View具有以下特点:三级惯性滑动:对 低中高 三种速度提供了三种惯性滑动,使用起来更加流畅自然动态生成图像:基于数据实时生成当前绘制图像(而不是全部绘制后区域加载)双缓冲绘图:基于内存画布+真实画布绘制,降低真实绘制次数,减少频闪使

2020-09-12 00:05:14 281

原创 Flutter卡在Running ‘gradle assembleDebug‘最完整解决

目录前言准备多处修改运行命令运行项目前言结合csdn+博客园+github+Stack Overflow+自己尝试,解决该问题!今天突发奇想试一下flutter,按照网上教程配置完后(flutter doctor)全部合格,运行却卡在了Running ‘gradle assembleDebug’。打开任务管理器,AS的网络占用相当之低,一会就为0。找了各种方法,最后搞出了这一套准备准备一个可以完成编译和运行的Android项目(项目A)打开你的Flutter项目(项目B)Flutter的安

2020-07-31 13:08:28 18707 9

原创 学了python不知干啥?爬爬虫! (3)爬取豆瓣书籍列表(bs4/lxml简单使用)

python爬取豆瓣新书列表,使用bs4结合lxml解析数据。全过程带你一步步走进。附完整源码。

2020-07-10 10:30:57 942

原创 RecyclerView最后一项显示不全的有效解决

普适性解决最后一项显示不全!作者:FunnySaltyFishRecyclerView 28人类极度擅长创造替代关系,因为真实的关系充满了不可控的风险——《2030终点镇》总览场景探索什么是Space?话不多说,肝代码场景自己写了一个小App,发布一段时间以后有用户反馈最后一项的卡片部分阴影被遮挡。于是试图解决。这是解决之前(图源酷安 @去春游の空心 反馈, 侵删)这...

2020-03-04 22:34:50 4133 5

原创 2019最后一点时间,写个两行python跨个年

跨年直接上代码吧,两行(不想把import写进去了太臃肿)比较菜哈import timeprint("2020快乐!\n".join([" "[0:i%8 if i%8<=4 else 8-i%8] for i in range(2020)]) if time.localtime(time.time()).tm_year == 2020 else "2019看不到哦")...

2019-12-31 23:57:42 913

原创 学了python不知干啥?爬爬虫! (1)保存网络图片

生活就像淋浴:方向转错,水深火热 ——意林引言各位玩python的,相比对“爬虫”这个字眼并不陌生。啥?你不知道?对啦,就是需要一个不知道的……那么,咱们的第一件事就是……概念上来一手概念,恐怕这是最劝退的了咱们还是先来看看它能干啥吧这只虫,能干嘛?不打开网页,下载图片啦不打开网页,看看小说啦或者保存点贴吧贴子啦,图片啦等等……什么,你说:那我要这玩意儿...

2019-12-29 00:42:17 589 6

原创 年轻人的第一个开源库:FunnyUnlockView

FunnyUnlockViewAuthor:FunnySaltyFishLanguage:Java(Android)成果展示/Results Display

2019-12-22 14:08:58 204

原创 一个完整的Android正六边形地图例子

没有人能打败你,除了你自己总览一个完整的正六边形地图包括 绘制、拖动、定位略带游戏开发思想,有独立常量类、数据类地图有GameMap类原生Canvas绘制,无任何第三方库AS理论可直接编译原创地图定位算法见:参见这里演示(图片可能演示较慢,实际很流畅)其他本应用为个人项目提取,故部分类设计上可能有些奇怪,见谅内包括必要注释,若需要更详尽的注视请留言评论本应用...

2019-11-23 22:14:02 607 2

原创 一种创新的正六边形定位(全过程详解)

生活便是这样,你越努力挣扎,越是越陷越深提纲■为了让您按需阅读,您可以点击这里来快进■但我并不建议快进,因为这篇文章有它自己的逻辑若您不想阅读我的吐槽,您可以点击这里直接从正文看起若您连讲解都懒得看,就想白嫖代码,您可以点击这里直接白嫖若您啥也不想看,但是多余了5毛钱,您可以点击豪华的这里施舍一下序言■为什么会有这篇?近来闲来无事,于是想写个六边形的游戏地图玩一玩。一拍...

2019-11-03 13:36:25 4000 2

正六边形地图定位.zip

完整的AS工程,包括地图绘制、拖拽、定位 有独立常量类,数据类等 无任何第三方库,编译出来APP仅50k 地图定位算法为原创,暂时对负数格子有bug,其余流畅运行 算法参见:https://blog.csdn.net/qq_43596067/article/details/102881679

2019-11-23

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除