【第一行代码】安卓学习中的坑与笔记

安卓开发问题部分

·litepal包添加失败的解决方法

刚起步学习安卓,在学习郭神的《第一行代码》的时候发现litepal怎么也加入不了依赖。
并发送这个报错:Failed to resolve: org.litepal.guolindev:core:3.2.3

网上很多资料都没有用,最后是自己碰巧解决了。

最开始是百度了好几天的资料才发现使用GitHub的依赖需要添加这个:maven { url 'https://www.jitpack.io' }

但还是无济于事,最后瞎猫碰上死耗子又添加了阿里云的maven最后成功添加依赖

jcenter { url 'https://maven.aliyun.com/repository/public' }

做此记录





· 出现’META-INF/DEPENDENCIES’.

packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
    }

记着这个用来删除重复的代码段要放在android{}里面,不然会报错




· 调用相册章节

即使已经动态权限申请了WRITE_EXTERNAL_STORAGE,即使已经是Android7.0以上了,还是需要在AndroidManifest里面写上<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
不然连权限申请都不弹出来,最后的图片更是展现不了。找了很久才发现是这个原因





· 使用getAdapterPosition时返回的position为-1

网上搜到了很多问题和解决答案,最后在一个博客的一个大佬的评论中得到了答案,供大家参考:
这里不是因为使用了notifyDataSetChanged导致的周期问题什么什么的,是我在oncreate最后返回值写错了,写成了

return new ViewHolder(view); 

和那个博主的错误情况如出一辙,应该是自动补全导致的锅,看了下郭神的代码,正确的也如那个评论所说,应该是:

return holder;



· litepal中的Datasupport被弃用问题

被LitePalSupport替代了,extends LitePalSupport即可



·as中批量替换检索得的关键词的方法


先是ctrl+f搜索所需要替换的字串,再用ctrl+r输入替换后的字串。


·layoutflater与findViewById()

前者可以找到layout目录下的xml文件并实例化,后者是可以在xml文件中更具体地找到widget控件。

1、对于一个没有被载入或者想要动态载入的界面,都需要使用LayoutInflater.inflate()来载入;
2、对于一个已经载入的界面,就可以使用Activiyt.findViewById()方法来获得其中的界面元素。





·在最后的天气数据库创建中找不到province

litepal.xml里表初始化代码有错…初始化时写的是province而不是Province



·查看不了源码

解决方法原文

源码无法下载,显示
all packages are not available for download!
the following packages are not available:
package id sources android-32

文章内提到是因为api32根本没提供源码,换成低版本的sdk就可以了,30及以下都可以



# ·使用drawerlayout的时候滑动页面遮挡问题 因为在该布局的第二个子控件中要打android:layout_gravity="start"的时候发现没有给我自动补全,我以为是因为版本迭代导致这个不需要了就没写,结果一直有bug,选择城市的侧滑界面一直霸占了weatheractivity页面,后来上网查drawerlayout的时候发现android:layout_gravity="start"是必须要写的,然后我手动写完发现是可以使用的,大家可以注意下。 总结:android:layout_gravity="start"可能会没有自动补全,但是可以写的,也是必须要写的。功能是以阅读习惯从左到右,也就是侧滑导航在左边。

·和风天气的api接口问题

全局初始化

遗忘笔记部分

此处记录遗忘的知识点:

ContextCompat

ContextCompat 可以理解为是封装了 Context 的一些便捷方法,如加载图片等资源文件

使用as模拟器时电脑本机的地址是10.0.2.2

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: "failed to resolve: jp.wasabeef:glide-transformations:4.0.0" 是一个编译错误,意味着程序无法解决这个特定的依赖项。 这个错误通常出现在使用了依赖管理工具如Gradle或Maven时。它表明在项目构建过程,无法正确找到并下载所需的依赖项。 有几个常见的原因会导致这个错误出现。首先,可能是因为你所使用的库的版本与你在构建文件指定的版本不一致。在这种情况下,你需要确认库的最新版本,并更新你的构建文件。 其次,可能是因为库的地址错误或库不存在。你可以在Gradle或Maven的存储库搜索以确定库是否存在,并检查库的名称和地址是否与你在构建文件使用的版本一致。 最后,可能是由于网络连接错误,导致构建工具无法从存储库下载依赖项。在这种情况下,你可以尝试使用代理或更改你的网络配置来解决问题。 总之,当你遇到"failed to resolve"的错误时,你需要检查构建文件的依赖项的版本、地址以及你的网络连接,以确保能够成功解决依赖项。 ### 回答2: 在使用 Glide 图片加载库时出现了 "failed to resolve: jp.wasabeef:glide-transformations:4.0.0" 的错误。这个错误是由于 Gradle 无法解析指定的 Glide 图片转换库版本号4.0.0。 要解决这个问题,可以尝试以下几种方法: 1. 检查版本号:先确保正确的使用了最新版本的 Glide 和转换库。可以打开项目的 build.gradle 文件,查看 Glide 和转换库的版本号,确保二者兼容。 2. 检查依赖项:检查项目的 build.gradle 文件是否正确添加了依赖项。需要确保在 dependencies 块添加了正确的 Glide 和转换库依赖项,例如: ``` implementation 'com.github.bumptech.glide:glide:4.12.0' implementation 'jp.wasabeef:glide-transformations:4.3.0' ``` 3. 更新仓库:如果以上两个步骤都没问题,可能是 Gradle 无法从默认的 Maven 仓库解析到转换库。可以尝试添加 `maven { url 'https://jitpack.io' }` 到项目的 build.gradle 文件的 repositories 块,确保 Gradle 可以解析 jitpack 仓库的依赖。例如: ``` allprojects { repositories { // 其他仓库 maven { url 'https://jitpack.io' } } } ``` 4. 清理缓存:有时 Gradle 缓存可能会引起问题,可以尝试清理 Gradle 缓存并重新构建项目。可以通过在命令行运行 `./gradlew clean` 或者在 Android Studio 点击 "Build" -> "Clean Project" 来清理缓存。 以上是解决 "failed to resolve: jp.wasabeef:glide-transformations:4.0.0" 错误的一些常见方法。根据具体情况选取适合的解决方案,希望能帮到你。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值