AndroidStudio学习笔记

本文讲述了在AndroidStudio中遇到的webview与NestedScrollView冲突解决方法,新版本aar打包异常及处理,以及编译问题的排查,包括类间对象传递和SDK版本兼容性问题的解决方案。
摘要由CSDN通过智能技术生成

webview组件和其他组件起冲突

问题

webview和NestedScrollView组件一起使用时,会出现webview无法滑动的问题

解决方法

 NestedScrollView nestedScrollView = getView().findViewById(R.id.mine_scrowview);
        studentView.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                if (event.getAction() == MotionEvent.ACTION_UP)
                    nestedScrollView.requestDisallowInterceptTouchEvent(false);
                else
                    nestedScrollView.requestDisallowInterceptTouchEvent(true);
                return false;
            }
        });

重写内嵌在NestedScrollView里的webview的setontouchlistener方法
该方法适用于普通的scrollview

原因

scrollview的焦点判断高于内嵌在里面的webview导致的

新版本的Androidstudio打包aar时出现异常

具体的异常信息

Direct local .aar file dependencies are not supported when building an AAR

原因

gradle在7以上时分module调用aar时是正常的, 但是如果要把module单独打包成aar供其他项目调用的话需要另行设置

解决办法

https://www.jianshu.com/p/a6a221e04d30

  1. 在根目录中创建Directory(文件名自定义,这里定义为LocalRepo)在里面创建Directory(文件名自定义,这里定义为staticip)
  2. 把你需要调用的aar包剪切进去
  3. 复制其他module里的build.gradle
  4. 把复制过来的build.gradle里的内容删掉
  5. 在buil.gradle里添加configurations.maybeCreate("default") artifacts.add("default", file('需要调用的aar包包名.aar'))
  6. 在根目录下的setting.build里添加 include ':LocalRepo:staticip'注意这里的LocalRepo和staticp需要改成你在第一步设置的文件名
  7. 然后在你需要调用这个aar包的module的build.gradle里添加 implementation project(':LocalRepo:staticip')注意这里的LocalRepo和staticp需要改成你在第一步设置的文件名
    就可以正常调用和打包了

编译问题

没有动什么却提示编译失败

异常:如下,这个异常导致了compileDebugJavaWithJavac failed

The following annotation processors are not incremental: jetified-arouter-compiler-1.2.1.jar (com.alibaba:arouter-compiler:1.2.1), jetified-auto-service-1.0-rc2.jar (com.google.auto.service:auto-service:1.0-rc2).
Make sure all annotation processors are incremental to improve your build speed.

解决办法

./gradlew --stop

然后clean projects
重新run就行了

个人想法

上面的这个异常我在平时编译的事常备也会遇到,但不会导致compileDebugJavaWithJavac filed
于是我回想了一下在项目里的操作,唯一的可能就是修改了代码之后run,但是我强行终止了,然后重新run就出现了这个问题,代码是肯定没影响的,因为都是逻辑代码,所以大概领是我强行终止了gradle build,导致了某些缓存之类的出现了异常,进而导致了编译失败

类之间传递对象的那些事

问题

在使用

getIntent().getSerializableExtra("key",自定义类.class)

进行对象型数据传递时,Androidstudio提示需要Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU也既是sdk版本大于等于33才支持这个写法
那么低于这个版本的都怎么办呢

解决办法

强转

(自定义的类)getIntent().getSerializableExtra("key");
### 回答1: Android Studio是Google推出的Android应用程序开发工具,它集成了开发、调试、打包等功能。要学习使用Android Studio,需要了解以下几个方面的知识: 1. Java基础: Android开发是基于Java语言的,所以要学习Android Studio首先要掌握Java基础知识。 2. Android基础: 了解Android操作系统的基本构架和常用组件,如Activity、Service、BroadcastReceiver等。 3. Android Studio使用: 了解Android Studio的基本界面和常用功能,如创建工程、编写代码、调试程序等。 4. Android SDK: 了解Android SDK的安装和配置,以及如何使用SDK Manager来下载SDK并配置项目。 5. 练习实践: 多练习实际项目,熟悉Android Studio的使用,并不断练习和完善自己的技能。 ### 回答2: Android Studio 是一个为 Android 来开发的整体开发环境。它基于 IntelliJ IDEA ,强调速度和智能操作,并致力于为应用程序开发提供高效率的开发工具。Android Studio 的推出,使得 Android 开发者更加容易地创建高质量的应用程序。 首先,要学 Android Studio ,你需要首先了解一些基本知识。学习 Android Studio 的工具包括 Gradle 、 Kotlin 和 Java 等。通过学习这些基础知识,你可以了解不同的语言、工具和框架。 在学习 Android Studio 时要使用实战性的方法。也就是说,每次学习新的东西时,你需要找到一个相关的例子。这样可以帮助你更好地理解它。如果你使用 Android Studio 模板,这将非常有用。这些模板可以帮助你创建常见的应用程序结构,并且你可以基于这些模板创建自己的应用程序。 另外,还有很多不同的工具和插件可以帮助你学习 Android Studio 。例如, Android Studio 网站上有很多有用的文章和教程,可以帮助你更好地理解 Android Studio 。还有很多在线工具可以帮助你实现特定的功能,在初学者阶段,这些工具可以为学习的难度减轻很多。 总之,学习 Android Studio 任重而道远。需要有耐心和时间,还需要不断地尝试和实践。在这个过程中,你可以尝试教学资料、交流学习合作、进一步增强你的知识水平。通过不断的应用和实践,一定可以成为一名优秀的 Android 开发者并圆满地完成应用开发。 ### 回答3: 作为一个应用开发者,学习使用安卓应用程序开发套件非常重要。Android Studio是Google出品的最新安卓开发工具,它具有多种强大的工具和功能,可以极大地提高应用程序的开发效率和质量。在学习过程中,个人对Android Studio的理解主要体现在以下几个方面。 首先,要开始使用Android Studio,需要了解它的基本结构和工具。Android Studio主要由三个主要组件组成:IDE、SDK、和Emulator。IDE是开发者使用的主要工具。它提供了编写、测试和调试代码所需的所有基本功能,包括视觉化设计器,代码编辑器和调试工具。SDK是开发应用程序所需的软件开发包。它包括实用程序和库,可用于在应用程序中实现预定功能。Emulator是一个虚拟的安卓设备,可以用来在开发应用程序时模拟真实设备上的应用程序运行情况。 其次,一些基本的编程知识也必不可少,例如Java编程、XML语言、UI界面设计等。Java是Android Studio中最常用的编程语言,用于编写应用程序的逻辑代码;XML语言则用于设计UI界面。在学习这些基本知识时,建议首先了解Java语言特性和面向对象编程理念,熟悉它们的基本语法和数据类型。同时,也可以通过在线教程和网课等方式加强对UI设计和布局的理解。 最后,学会使用网上的资源和社区的帮助非常重要。Android Studio的开发者社区很大,有很多在线资源可以帮助开发者的开发学习,例如stack overflow、CSDN社区等。同时,Google官方的开发者网站也提供了大量的文档资料、教程、API使用说明等。 总之,Android Studio学习需要进行持续不断的针对不同方面的学习和实践。要充分运用Android Studio的强大功能,建议在掌握基础知识的基础上,多做实际的项目练习,不断提高自己的技术水平和代码能力,才能成为一名优秀的安卓应用程序开发者。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

淳杰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值