记录问题

这篇文章记录实际中遇到的问题,写给自己看,只为以后遇到同样问题快速解决,持续更新

 

目录

 

1.显示问题

1.1 recyclerview 加载完数据会自动跑到第一个item

1.2 scrollview嵌套横向滑动的recyclerview,只显示一个item

1.3 Chronometer 实现开始、暂停、结束功能

1.4 应用开启后,每隔一段时间向服务器传一次自己的位置

1.5 计算后的double精确到小数点后两位

1.6 shape画叠加圆

1.7 ScrollView嵌套recyclerView加载完数据总是自动滑动到最下面

1.8 ScrollView嵌套recyclerView,recyclerView只能显示一个item

1.9Tablayout指示器过长

2.配置问题

2.1 Kotlin plugin should be enabled before 'kotlin-android-extensions'

2.2 Error: Invoke-customs are only supported starting with Android O (--min-api 26)

2.3 Compatible side by side NDK version was not found. Default is 20.0.5594570

2.4 Android10 访问不了网络

2.5 build中文出现乱码

3.编译问题

3.1 gradle插件版本与gradle版本对应表

3.2 查看gradle详细错误信息

3.3 安装失败:Installation failed due to: '-99'

3.4 error: failed linking file resources. Cause: invalid type code: 2D

3.5  jjava.rmi.ServerError: Error occurred in server thread; nested exception is:     java.lang.AssertionError: Could not delete caches dir F:\beforeUpdate-new\BaseProject-1.0

3.6 项目突然乱码了,原本的Java文件变成了J标识

4.有用的工具合集

5.代码推送问题

1.远程推送被拒绝

2.refusing to merge unrelated histories


1.显示问题

1.1 recyclerview 加载完数据会自动跑到第一个item

       不要每次都setAdapter(),用add,然后notifyDataSetChanged()

1.2 scrollview嵌套横向滑动的recyclerview,只显示一个item

       原因:itemwidth设置了固定值,改成wrap_content就可以了

1.3 Chronometer 实现开始、暂停、结束功能

原文链接

1.4 应用开启后,每隔一段时间向服务器传一次自己的位置

原文链接

1.5 计算后的double精确到小数点后两位

 DecimalFormat df = new DecimalFormat("0.00");
 new BigDecimal(df.format(需要转的数据));

1.6 shape画叠加圆

要实现这样一个效果,可以考虑用layer-list来实现,本文只列举了两个,其他的请自行扩展

1
圆+圆
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item>
        <shape
            android:shape="oval"
            android:useLevel="true">
            <size
                android:width="@dimen/px280"
                android:height="@dimen/px280" />

            <solid android:color="#AAF7D2" />

        </shape>
    </item>

    <item
        android:bottom="@dimen/px20"
        android:left="@dimen/px20"
        android:right="@dimen/px20"
        android:top="@dimen/px20">
        <shape
            android:shape="oval"
            android:useLevel="true">
            <size
                android:width="@dimen/px100"
                android:height="@dimen/px100" />
            <solid android:color="@color/white" />
        </shape>
    </item>

</layer-list>
2
环+圆
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item>
        <shape
            android:shape="oval"
            android:useLevel="true">
            <size
                android:width="@dimen/px280"
                android:height="@dimen/px280" />

            <solid android:color="#AAF7D2" />
            <stroke
                android:width="@dimen/px10"
                android:color="@color/yellow" />
        </shape>
    </item>

    <item
        android:bottom="@dimen/px90"
        android:left="@dimen/px90"
        android:right="@dimen/px90"
        android:top="@dimen/px90">
        <shape
            android:shape="oval"
            android:useLevel="true">
            <size
                android:width="@dimen/px100"
                android:height="@dimen/px100" />
            <solid android:color="@color/white" />
        </shape>
    </item>

</layer-list>

1.7 ScrollView嵌套recyclerView加载完数据总是自动滑动到最下面

rv.setFocusableInTouchMode(false);
rv.requestFocus();

1.8 ScrollView嵌套recyclerView,recyclerView只能显示一个item

用NestedScrollView代替ScrollView

rv.setLayoutManager(new LinearLayoutManager(this){
    @Override
    public boolean canScrollVertically() {
        return false;
    }
});

1.9Tablayout指示器过长

Tablayout指示器太长,很难看,通过setTabIndicatorFullWidth(false);方法设置

 

2.配置问题

2.1 Kotlin plugin should be enabled before 'kotlin-android-extensions'

  'kotlin-android'需要放在'kotlin-android-extensions'的前面,app 的build.gradle中如下

apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

2.2 Error: Invoke-customs are only supported starting with Android O (--min-api 26)

app的build.gradle下

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
   ...
}

2.3 Compatible side by side NDK version was not found. Default is 20.0.5594570

tools–>sdk manager–>Android sdk–>sdk tools–>show package detail–>找到NDK(side by side) 具体版本,完成下载并安装即可

2.4 Android10 访问不了网络

在AndroidManifest.xml <application />节点中加入  android:usesCleartextTraffic="true"

2.5 build中文出现乱码

help-edit Custom CM Options,在末尾加入-Dfile.encoding=UTF-8,然后重启as

3.编译问题

3.1 gradle插件版本与gradle版本对应表

https://developer.android.google.cn/studio/releases/gradle-plugin.html#updating-gradle

        gradle下载地址:https://services.gradle.org/distributions/

3.2 查看gradle详细错误信息

 gradlew compileDebug --stacktrace
        gradlew compileDebug --stacktrace -info
        gradlew compileDebug --stacktrace -debug
        gradlew compileDebugSources --stacktrace -info(推荐)

3.3 安装失败:Installation failed due to: '-99'

安装的时候出现了这个问题:List of apks: [0] 'F:\copy_dou\D\dou\workspace\dapingv1.1\app\build\outputs\apk\debug\app-debug.apk' Installation failed due to: '-99

解决方法:File--Invalidate Caches / Restart... 

3.4 error: failed linking file resources. Cause: invalid type code: 2D

原因是设置color的时候没有用正确的颜色格式,实际中可能会出错的两种情况:

通过Color.parseColor()方式设置颜色的时候忘了加“#”,比如Color.parseColor("#999999")写成Color.parseColor()

还有就是xml中color设置出错,我这次比较蠢,把android:textColor中的内容写成了文本

3.5  jjava.rmi.ServerError: Error occurred in server thread; nested exception is: 
    java.lang.AssertionError: Could not delete caches dir F:\beforeUpdate-new\BaseProject-1.0

解决步骤:

1.尝试build-clean project-rebuild project,没解决问题

2.尝试file-invalidate caches/restart,没解决问题

3.关闭as,找到上面说的文件路径,直接删除,提示该文件被java(TM) Platform SE binary占用,Ctrl+Shift+Esc启动任务管理器,找到该进程,结束任务,然后再打开as,编译、运行,成功

4.第3种方式就可以解决该问题了,可是每次都这么操作太费时间了,所以可以在出现这种情况的时候直接启动任务管理器结束占用文件的进程。推荐该方法

3.6 项目突然乱码了,原本的Java文件变成了J标识

解决方法:

删除.Androidstudio/system/caches下缓存文件再重新打开项目

用notepad++也可以看到正常的文件

 

4.有用的工具合集

1.gifSplitter(把gif分割为帧图片,当然ps也可以实现这个需求,不过这个更方便快捷嘛)

链接: https://pan.baidu.com/s/1D4xWgbIk57p2Pd4au9aImg 提取码: vdma

2.格式转换工厂(看名字就不用介绍是干啥了吧)

5.代码推送问题

1.远程推送被拒绝

按照这个方法解决了:https://www.cnblogs.com/wf-skylark/p/9315463.html

总结一下就是在terminal中用 git push -u origin +master​ 

2.refusing to merge unrelated histories

在你操作命令后面加--allow-unrelated-histories
例如:
git merge master --allow-unrelated-histories

 

IT问题管理记录模板是用于记录和跟踪IT问题的工具。它通常包括以下几个方面的内容: 1. 问题描述:记录问题的具体描述,包括问题的发生时间、地点以及问题的性质。例如,网络连接故障、软件错误等。 2. 影响程度:记录问题对业务流程或用户体验的影响程度,用于判断问题的优先级。例如,临时性故障、影响业务流程、导致大面积用户投诉等。 3. 解决方案:记录问题的解决方案或解决方法,以及问题解决的时间和持续时间。解决方案可以包括技术调整、系统更新、设备更换等。 4. 负责人:记录问题的负责人或责任人,用于追踪问题的处理进度和责任。 5. 解决状态:记录问题的处理状态,包括已解决、处理中、待解决等。 6. 问题来源:记录问题的来源,可以是用户反馈、系统监控报警、自动化分析等。 7. 监控和评估:记录问题解决后的效果和持续监控的结果,以确保问题的根本解决。 IT问题管理记录模板的使用可以帮助IT团队更好地跟踪和管理问题,提高问题解决的效率和质量。通过记录问题的具体情况和解决方案,可以追溯问题的历史,为类似问题的处理提供参考。同时,通过对问题的影响程度和解决状态的记录,可以根据实际情况优先处理问题。通过持续监控和评估,可以及时发现和解决问题,提高系统的稳定性和可用性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值