第二阶段每日汇报20230525
今日解决了安卓项目的报错问题
1.中文注释导致编译乱码
2.数组越界
3.空指针异常
报错1.
解决方法:
修改AndroidStudio的VM Options,增加UTF-8编码支持。
Step1:AS----> Help----->Edit Custom VM options
Step2:打开文件后再最后增加UTF-8编码设置
Dfile.encoding=UTF-8
Step3:AS–>File—>Invalid caches./Restart 重启
报错2.
==5768==ERROR: AddressSanitizer: global-buffer-overflow on address 0x64619e74 at pc 0x595b4fdf bp 0xeecfefd8 sp 0xeecfefc8
解决方法2.
跟踪ListView的源码,可以看出来是与Adapter绑定的数据源存在数组越界。
因为此时,可能会有两个甚至多个线程同时修改数据源。
报错3.空指针异常
解决方法3.
hisList = (ListView) findViewById(R.id.oillist);
if(hisList==null)
{
Log.d("debug","hislist null");
}
hisList.setAdapter(tAdapter);
发现hisList是空指针,这时候就要检查 findViewById(R.id.oillist) 里面的ID是不是不存在,或者产生冲突了,有重复的名字存在。
一般错误在 findViewById处。我的这里错误出现在ID oillist 有重名,改成别的名字就OK了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!