Android开发
第九区大虾
这个作者很懒,什么都没留下…
展开
-
解决uri为content时无法获取info的问题
转载:https://www.shangmayuan.com/a/3b7fa0fcaa124e87bb8eb085.html重要代码Uri downloadFileUri = manager.getUriForDownloadedFile(downId);File file = new File(new URI(downloadFileUri.toString()));Cursor c = manager.query(new DownloadManager.Query().setF..原创 2022-05-26 22:54:31 · 234 阅读 · 0 评论 -
ERROR: JAVA_HOME is set to an invalid directory:
在配置flutter的环境时出现ERROR: JAVA_HOME is set to an invalid directory:的错误,很明显是Java环境变量的配置问题.2.在配置JAVA_HOMEde 时候JDK目录下不要配置到bin,只需要配置到bin的上一级目录即可,然后在path路径下配置好bin。1,需要确保自己的主机安装了几个版本的jdk,有时自己安装了jdk1.8,但是AS安装的时候默认带了OPEN JDK。有时候后面带bin也没有问题,但是上面这种是推荐配置方式.原创 2023-05-25 00:47:22 · 2105 阅读 · 0 评论 -
关于安卓的V13,V7包。
最近项目build 出现了一个问题,就是突然报错说仓库里的V7和V13找不到了,我当时使用的是国内阿里和华为的镜像,如果这两个镜像无此jar 包,那么很可能源镜像也没有,怎么办呢?第一种手动下载,之前肯定有人上传这2个文件的,因此百度一下,下载然后添加到本地的依赖中。第二种,考虑到这2个包是兼容包,V13和V7分别兼容安卓3和安卓2的,如果最小sdk 在这2个版本之上,大可以删除掉这2个依赖,我的项目里,这2个依赖集成在第三方库里面,因此我删除掉了,并且做了简单测试。另外,新版本的androidstu原创 2021-03-10 09:35:13 · 164 阅读 · 0 评论 -
安卓checkbox设置圆形
安卓checkbox设置成圆形的代码 style="@style/Widget.AppCompat.CompoundButton.RadioButton"原创 2021-05-29 17:34:31 · 939 阅读 · 0 评论 -
关于安卓约束布局
安卓约束布局app:layout_constraintEnd_toStartOf 意思是你当前摆放编辑的空间的end边界和你要对齐的控件的start原创 2021-05-29 17:28:47 · 461 阅读 · 0 评论 -
retrofit相关依赖路径
//网络框架implementation('com.squareup.okhttp3:okhttp:5.0.0-alpha.6')implementation('com.squareup.okhttp3:logging-interceptor:5.0.0-alpha.6')implementation 'com.squareup.retrofit2:retrofit:2.9.0'implementation 'com.google.code.gson:gson:2.9.0'implementat.原创 2022-04-19 21:40:08 · 226 阅读 · 0 评论 -
获取安卓权限组的说明信息和图标资源
最近在做安卓源码相关项目,需要自定义安装包,其中安装的时候需要向用户展示所安装应用需要的敏感权限,按照谷歌的说法,敏感权限就那几组,这里我展示获取权限信息和图标的简要代码private static final String[] permissions={ Manifest.permission.READ_CONTACTS, Manifest.permission.BODY_SENSORS, Manifest.permission.ACCESS_COAR原创 2022-04-14 23:59:28 · 440 阅读 · 0 评论 -
安卓源码下载的环境搭建
硬件环境:至少16G内存,200G的硬盘空间(读写速度越快越好),CPU越贵越好,当然奔腾赛扬也可以,要确保CPU主频至少3.0GHz,我的是I7 8565U,内存条2333的频率软件环境:1.Linux环境,我用的是优麒麟系统的乌班图,也可以在window环境下搭建一个虚拟机,但是不推荐这么做,直接装双系统,具体怎么装双系统可以去看优麒麟的下载页面,有个安装教程2.Python3x,这个默认系统已经装了Python3.83.GNU Make,这个系统已经默认安装了4.Git,Lin原创 2022-04-10 16:18:53 · 3356 阅读 · 0 评论 -
progressbar的样式修改
该view在安卓开发中使用频率极高,但是官方提供的样式就那几种.如何修改样式呢,可以点进去查看主题,Android简单自定义圆形和水平ProgressBar的样式_liao277218962的专栏-CSDN博客_android progressbar 圆形样式...转载 2022-01-20 00:24:14 · 282 阅读 · 0 评论 -
io.codearte.gradle.nexus:gradle-nexus-staging-plugin
这个是用于提交代码到自建仓库的,不需要可以删除掉,会导致AS匹配不上新得grade版本,会引起如下一些问题:1.Failed to notify task execution graph listener.2.Unable to load class 'org.gradle.api.artifacts.maven.MavenDeployer'删除掉就可以了。...原创 2022-01-12 16:51:22 · 1569 阅读 · 0 评论 -
Type org.jetbrains.annotations.NotNull is defined multiple times:
在集成jetpack相关框架之后,突然报出:Type org.jetbrains.annotations.NotNull is defined multiple times:这个错误,在主工程APP的build.gradle文件的android{}添加一段代码即可:android{configurations { cleanedAnnotations implementation.exclude group: 'org.jetbrains', module: 'annotation原创 2022-01-06 12:43:42 · 2891 阅读 · 0 评论 -
AnimatorCompatHelper类被移除
supportLib 26.0.0+以上AnimatorCompatHelper类被移除所以clearInterpolator(view)找不到替换方案:TimeInterpolator mDefaultInterpolator = new ValueAnimator().getInterpolator();view.animate().setInterpolator(mDefaultInterpolator);转载 2022-01-05 03:56:40 · 170 阅读 · 0 评论 -
Plugin with id ‘maven‘ not found
升级AS之后,出现这个错误,androidstudio是Arctic Fox版本,gradle插件版本是7.0,JDK11.方案:apply plugin: 'maven' 改成: apply plugin: 'maven-publish'也可参考Maven Publish Plugin原创 2022-01-05 02:11:36 · 682 阅读 · 0 评论 -
> Using insecure protocols with repositories, without explicit opt-in, is unsupported.
这个问题是因为升级AS之后,项目配置文件需要使用https而不是http链接,可以尝试在http链接的"http"后面加一个"s",我这样改是成功的.参考Spring源码阅读环境&&Grandle错误异常:Using insecure protocols with repositories, without explicit opt-in, is un_菜鸟老文的博客-CSDN博客...转载 2022-01-05 02:04:24 · 4956 阅读 · 0 评论 -
关于bottomnavigationview和navigation框架结合使用的问题
使用安卓jetpack组件时,我的底部导航栏使用了谷歌官方的bottomnavigationview,配合navigation组件使用,我发现在nav_graph.xml文件里使用include标签时,没有办法和底部导航联动.按照官方文档,在activity写了联动的代码之后应该是可以自动导航相应界面的,经过几个小时的调试查找资料,发现需要满足3个条件:menu 里面的各tab的id,include标签的id,和点击include标签跳转之后的navigation文件里面的id要一致..原创 2021-12-28 02:30:58 · 1479 阅读 · 0 评论 -
去除BottomNavigationView 点击tab时的水波纹效果
BottomNavigationView是安卓的系统导航栏框架,我集成后,发现点击tab时,会有相应的阴影散开的波纹效果,这个不好看,我需要改掉,首先在BottomNavigationView的XML布局添加style="@style/Widget.Design.BottomNavigationView"设置background为 白色,再把itemBackground也能设置为白色就可以了...原创 2021-12-24 08:05:26 · 1166 阅读 · 1 评论 -
如何可视化查看room数据库表
安卓jetpack 的room数据库框架是基于Sqlite3的数据库,但是有别于sqlite,因此使用查看sqlite的数据库可视化软件看不到room的数据库的值(但是可以打开),使用Androidstudio自带的databaseinspector,高版本的AS需要在APP inspection里面打开,另外应用必须是debug版本...原创 2021-12-01 07:52:32 · 4690 阅读 · 0 评论 -
android.database.sqlite.SQLiteConstraintException: NOT NULL constraint failed: UserLogin.
我在搭建安卓jetpack框架的时候,使用room作为数据库,发现这个错误,之前是可以拿到数据的,但是现在却一直报这个错误,服务器的数据没有问题,插入函数也没有问题,后面仔细想了一下自己的操作,是改了字段的名字,就是这里:由于使用了序列化的注解 SerializedName, 所以,这个对应的字段名字是需要和服务器传过来的json数据里面的字段对应,而我的这个User对象对应的JSON字段为data,你写成user就找不到了方法:把SerializedName括号里面的user改为data就可.原创 2021-12-01 06:56:09 · 2435 阅读 · 0 评论 -
Expected @HiltAndroidApp to have a value. Did you forget to apply the Gradle Plugin? (dagger.hilt.an
在搭建jet pack框架的时候,笔者集成hilt和room,发现始终报出这个错误,第一步检测没有生成数据库,因此要把room数据库集成步骤做完整,否则会报出dao还有未实现的方法(这些方法是你集成room之后运行,系统会自动实现的,不需要手动实现);查阅很多方案,需要添加如下defaultConfig {......javaCompileOptions { annotationProcessorOptions { arguments += ...原创 2021-11-24 03:14:44 · 1043 阅读 · 0 评论 -
run-as: package has corrupt installation: com.
这种情况要么你先排除是不是安装了release版本的包;不是release的还出现这样的错误,那么删除应用,重启手机,再重启IDE,本人这样操作之后是可以了的侧边栏找不到device file explorer,可能是被侧边栏其他标签覆盖了,移除几个标签就显示出来了...原创 2021-11-16 18:05:24 · 597 阅读 · 0 评论 -
Caused by: com.android.tools.r8.CompilationFailedException: Compilation fail: 异常处理
多个依赖重复,有时候消除掉了重复依赖或者切换debug和release版本的时候发现还有这个报错,可以先删除项目的所有模块的build然后再进行Invalidate Caches/Restart操作,实测可行.参考了以下博客:Caused by: com.android.tools.r8.CompilationFailedException: Compilation fail: 异常处理_u010231454的专栏-CSDN博客...转载 2021-11-16 16:36:02 · 4628 阅读 · 0 评论 -
A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$Kap
我在开发一个新的安卓项目的时候,集成安卓的jetpack组件,一直报出这个错误A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$Kap反复查找网上解决方案,都没有效果,知道在stack网站上有人说把自己的j d k改为a s默认的,我尝试了一下,果然成功的。我的embedded jdk 是11的版本,用的是as arctic fox,设备为m1的Appl原创 2021-09-29 23:45:05 · 1787 阅读 · 0 评论 -
安卓给未签名的加固包手动签名的命令行
使用powershell 窗口似乎会出错(即使你定位到了jdk的bin目录下,也会找不到jarsigner,提示使用.\jarsigner则会报出只能使用一个别名的错误),因此还是要使用cmd命令打开窗口,然后使用cmd命令切换到jdk的bin目录下(因为需要这个目录下的jarsigner),为了避免环境出错,可以预先把需要签名的apk和签名文件复制到该目录下。然后使用命令行:jarsigner -verbose -keypass aliasname-storepass aliaspassword-..原创 2021-09-18 00:40:20 · 174 阅读 · 0 评论 -
关于JNI开发的坑
由于项目需要,本人要集成第三方SDK,其中有些so文件需要加载,在按照SDK文档的指导集成之后运行,总是会报出java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/项目包名这个错误,...原创 2021-06-10 06:08:39 · 343 阅读 · 0 评论 -
NDK does not contain any platforms问题解决
AS升级到4.2之后,NDK居然找不到,找到配置界面jir原创 2021-06-01 15:58:03 · 1482 阅读 · 0 评论 -
Android 导入项目提示 Could not find method buildFeatures()for arguments xxx on extension ‘android
出现该问题是因为使用了AS4.1以上的版本,只有AS4.1以上的版本才会有这个buildFeatures()函数, buildFeatures { dataBinding = true }4.1以下的还是使用dataBinding这个函数来开启数据绑定dataBinding { enabled = true}根据版本不同,换一下就好了...原创 2021-05-27 16:28:10 · 4991 阅读 · 1 评论 -
jar包依赖重复问题解决方案
之前遇到jar包引用重复的问题,负责组长告知一种解决方案,特此记录android项目中出现多处引用jar包时,可能编译时会出现 重复引用的 exception,此时在采用provided引入将XXXXX(jar包名).jar该jar包放入lib下,然后在build中加provided 引用dependencies { compile files('libs/blur.jar') provided files('libs/XXXXX(jar包名).jar')}...原创 2021-05-27 11:14:48 · 1421 阅读 · 0 评论 -
给listview设置默认选中position
给listview设置默认选中:listListview.post(new Runnable() { @Override public void run() {//在这里面做初始化操作,下面的代码是操作index为0的item,设置他的背景颜色 listListview.getChildAt(0).setBackgroundResource(R.color.white); }注意:不能使用...原创 2021-04-25 15:46:03 · 351 阅读 · 0 评论 -
安卓改变imageButton的src
转载链接: https://blog.csdn.net/degong4876/article/details/102239860转载 2021-04-25 11:02:28 · 257 阅读 · 0 评论 -
relative布局button无法覆盖
在Android 5.0之后Button 有一个阴影过度效果,需要设置android:stateListAnimator="@null"转载 2021-04-22 14:59:47 · 111 阅读 · 1 评论 -
NDK does not contain any platforms
android studio中NDK配置出现:NDK does not contain any platforms,原因是NDK配置版本过高导致,可以设置到20.0.5的NDK版本原创 2021-04-13 10:34:36 · 722 阅读 · 0 评论 -
ERROR: Failed to resolve: com.github.tbruyelle:rxpermissions:0.10.2
问题: ERROR: Failed to resolve: com.github.tbruyelle:rxpermissions:0.10.2在使用RXPermissions的权限申请框架时,AS报了一个上述的错误,笔者搜索了一下,需要配置gradle环境,添加阿里镜像或者华为镜像:maven { url 'https://maven.aliyun.com/repository/public/' }maven { url 'https://maven.aliyun.com/repository/原创 2021-04-08 14:17:10 · 1631 阅读 · 0 评论 -
关于V13包
出现 Failed to resolve: support-v13 错误,在依赖里面也找不到这个引用,可能集成的第三方SDK有这个,不能删除,但是仓库源码又下载不了, 可在APP 的build里面添加dependencies { configurations { all*.exclude group: 'com.android.support', module: 'support-v13'}}完美运行...原创 2021-03-27 11:28:30 · 81 阅读 · 0 评论 -
Error adding epoll events for fd -1: Bad file descriptor
运行AS的时候,突然就出现Error adding epoll events for fd -1: Bad file descriptor ,但是自己发布在服务器的发行版本就不会出现此问题,因此肯定自己改了哪里,发现近期修改安全漏洞,有一个漏洞是模拟器漏洞,公司不允许模拟器运行APP,于是适配了一个方案,我注释点这个代码就OK了,这个错误,多半是集成的C程序部分出错,因此要从JNI,CPP文件去入手....原创 2021-03-23 10:38:01 · 253 阅读 · 0 评论 -
关于activity 的 FLAG_ACTIVITY_SINGLE_TOP
使用intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);可以将需要的activity置于栈顶,有些第三方应用叫起本地应用,可以使用这个flag,很有用.原创 2021-03-22 15:27:00 · 1070 阅读 · 0 评论 -
关于gradle一直反复下载或者一直停留在build model 的问题
最近遇见一个很奇葩的BUG,本人两台机器,一台惠普台式16G,一台ThinkPad 16G,同样的WiFi条件,从同一个项目拉取代码进行编译,使用的也是一个版本的Androidstudio,台式机仅有两分钟时间完成下载编译成功;而笔记本却使用1小时时间还没有完成编译,并且之前这个项目是可以迅速完成编译的,但是后来不知道为什么就编译的非常慢,起初怀疑是网络问题,但是台式机同样网络为什么可行呢?后来使用VPN也是不可以;我也怀疑是不是两个编译器的setting配置不一样,但是经过对比是一模一样的;最后检测了环境原创 2021-01-24 18:52:50 · 8263 阅读 · 4 评论 -
关于Error inflating class com.google.android.material.tabs.TabLayout的解决方案
出现Error inflating class com.google.android.material.tabs.TabLayout这个错误网络上有的解决方案大多数是换掉主题,但是试了之后发现基本没用,我这里是这样改的把theme替换为:android:theme="@style/Theme.MaterialComponents.Light.NoActionBar" 加了之后可以,但是会出默认的一个白色背景,可以使用这个属性添加到xml里面:app:backgroundTint,当然也可以指定bac原创 2021-01-19 15:06:59 · 2693 阅读 · 2 评论 -
安卓解决bundle,intent传输数据太大导致崩溃的解决方案
安卓开发中有时候使用intent或者bundle传递数据到下一个activity或者是fragment的时候会莫名其妙的崩溃仔细查找发现是数据量太大导致的崩溃,有些传递对象是一个bean,里面包含大量的图片,字符串,可能几百条,网络上大部分的做法是改为使用eventBus传递数据,我这里的做法是将需要传递的数据序列化(安卓最好使用parcelable,可以使用intent直接传递这种list数据类型)保存到本地,然后在接下来的页面里面读取这个数据就行serializable的保存和读取:privat原创 2021-01-11 17:56:34 · 2443 阅读 · 0 评论 -
kotlin compiler embeddable下载慢的解决办法
集成kotlin项目开发的时候,kotlin compiler embeddable下载很慢第一种是慢慢等他下载完成第二种是在官网或者相关仓库地址下载,然后手动添加到相关目录下1.下载地址 https://mvnrepository.com/artifact/org.jetbrains.kotlin/kotlin-compiler-embeddable/1.4.212.下载完成之后找到.gradle目录,(一般是放在C盘个人文件目录下面),caches->module-2 ->.原创 2020-12-17 20:06:02 · 15560 阅读 · 6 评论 -
安卓textview的DrawableTop属性图片加间距
安卓开发中,textview有一个自带图片的功能,可以不需要额外设置imageview而使得textview自带图片,可以节省解析xml文件的内存开销,但是这个Drawable却没有设置间距方法,只能在代码里面动态调整.给textview动态添加Drawable : //在左侧添加图片 Drawable drawable= getResources().getDrawable(R.drawable.gray_circle); drawable.setBounds(0,.原创 2020-11-26 14:24:24 · 1091 阅读 · 0 评论