Android Studio 从2.3.1升级到3.4.1遇到的问题

博客主要讲述了Android Studio使用中的两个问题及处理方式。一是打包报错,原因是布局文件里使用未定义的id;二是配置打包apk名字出错,AS 2.3.1版本配置正常,3.4.1版本报错。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 1.打包报错
    打包错误内容
    处理方式
  • 如下图,打开此文件,找到错误的文件,发现在我的布局文件里面使用了id,但是id没有定义所以出错了
    找到报错文件
  • 2.配置打包apk名字出错
  • AS 2.3.1 版本如下配置没有问题,但是3.4.1报错
	buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            // 自定义输出配置
            applicationVariants.all { variant ->
                variant.outputs.each { output ->
                    def outputFile = output.outputFile
                    if (outputFile != null && outputFile.name.endsWith('.apk')) {
                        // 输出apk名称为wooyun_v1.0_wandoujia.apk
                        def fileName = "mlxy${defaultConfig.versionName}_${variant.productFlavors[0].name}.apk"
                        output.outputFile = new File(outputFile.parent, fileName)
                    }
                }
            }
        }
    }
 Cannot set the value of read-only property 'outputFile' for ApkVariantOutputImpl_Decorated{apkData=Main{type=MAIN, fullName=xiaomiDebug, filters=[], versionCode=3140, versionName=3.1.4}} of type com.android.build.gradle.internal.api.ApkVariantOutputImpl.

AS 3.4.1 处理方式

	buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

            // 自定义输出配置
            android.applicationVariants.all { variant ->
                variant.outputs.all {
                    outputFileName = "crm_${defaultConfig.versionName}.apk"
                }
            }
        }
    }
框架一第一章 绪论 1.1 研究背景与意义  1.1.1 移动互联网发展趋势  1.1.2 即时通讯软件的应用价值 1.2 国内外研究现状  1.2.1 国外即时通讯技术发展  1.2.2 国内Android应用研发现状 1.3 研究内容与方法 1.4 论文结构安排 第二章 系统开发基本技术 2.1 Android系统架构分析  2.1.1 Linux内核层  2.1.2 系统运行库层  2.1.3 应用框架层  2.1.4 应用层 2.2 Android开发核心技术  2.2.1 Java/Kotlin语言特性  2.2.2 Android SDK组成  2.2.3 四大组件(Activity/Service/Broadcast/ContentProvider) 2.3 开发工具链  2.3.1 Android Studio开发环境  2.3.2 Gradle构建工具  2.3.3 Git版本控制 2.4 即时通讯协议分析  2.4.1 HTTP与WebSocket对比  2.4.2 XMPP协议解析  2.4.3 MQTT轻量级协议 第三章 Android系统设计 3.1 需求分析  3.1.1 功能需求(登录/聊天/通讯录/消息推送)  3.1.2 非功能需求(性能/安全性/兼容性) 3.2 系统架构设计  3.2.1 MVC与MVVM模式选择  3.2.2 模块化设计思想 3.3 核心模块设计  3.3.1 用户模块(注册/登录/个人信息)  3.3.2 即时通讯模块(消息收发/文件传输)  3.3.3 通讯录管理模块  3.3.4 消息通知模块 3.4 数据库设计  3.4.1 E-R图设计  3.4.2 SQLite表结构设计 3.5 UI/UX设计  3.5.1 Material Design设计原则  3.5.2 界面交互流程设计 3.6 安全性设计  3.6.1 数据传输加密(SSL/TLS)  3.6.2 用户认证机制 第四章 系统实现与测试 4.1 开发环境搭建  4.1.1 Android Studio配置  4.1.2 模拟器与真机调试 4.2 核心功能实现  4.2.1 用户模块实现(注册登录流程)  4.2.2 即时通讯功能实现(Socket编程)  4.2.3 消息存储与同步机制  4.2.4 通知推送集成(Firebase Cloud Messaging) 4.3 数据库实现  4.3.1 Room持久化库应用  4.3.2 数据缓存策略 4.4 系统测试  4.4.1 测试方案设计  4.4.2 功能测试用例(黑盒/白盒测试)  4.4.3 性能测试(响应时间/内存占用)  4.4.4 兼容性测试(不同Android版本) 4.5 测试结果分析 第五章 结论与展望 5.1 研究成果总结 5.2 系统不足与改进方向 5.3 移动应用开发趋势展望框架二### 目录 第一章 引言 1.1 研究背景与意义 1.2 国内外研究现状 1.3 论文主要研究内容 1.4 论文组织结构 第二章 Android系统相关技术研究 2.1 Android系统体系架构 2.1.1 Linux内核层 2.1.2 系统运行时与库层 2.1.3 应用框架层 2.1.4 应用层 2.2 Android设计方法与开发语言 2.2.1 MVC/MVP/MVVM架构模式 2.2.2 Java/Kotlin语言特性 2.2.3 XML布局设计 2.3 Android Studio开发工具 2.3.1 AS功能模块分析 2.3.2 调试与性能优化工具 第三章 聊天软件需求分析 3.1 功能模块划分与核心需求 3.1.1 用户管理模块(注册、登录、安全验证) 3.1.2 消息通信模块(文本、图片、语音) 3.1.3 联系人管理模块(添加、分组、黑名单) 3.1.4 文件传输模块(类型支持、大小限制) 3.2 非功能需求与实现约束  3.2.1 性能与实时性(延迟、并发)  3.2.2 安全性设计(数据传输与存储)  3.2.3 兼容性要求(Android版本、屏幕适配) 3.3 技术选型与可行性验证  3.3.1 开发工具链选型(Android Studio、Firebase)  3.3.2 网络协议选择(WebSocket vs. XMPP)  3.3.3 数据库与加密方案(SQLite + SQLCipher) 第四章 系统设计与实现 4.1 系统总体架构设计 4.1.1 客户端-服务器模式 4.1.2 技术选型(如Socket/WebSocket、XMPP协议) 4.2 核心模块设计 4.2.1 用户认证模块 4.2.2 消息传输模块(文本、图片、语音) 4.2.3 数据库设计(SQLite/Realm) 4.2.4 网络通信模块(Retrofit/OkHttp) 4.3 界面设计与实现 4.3.1 Material Design规范应用 4.3.2 核心界面原型(聊天列表、对话窗口) 4.4 安全性设计 4.4.1 HTTPS通信加密 4.4.2 本地数据加密存储 第五章 系统测试与优化 5.1 测试策略与方法 5.1.1 测试环境配置(硬件+软件) 5.1.2 自动化测试框架(Espresso+JUnit) 5.2 功能测试用例与结果 5.2.1 核心功能验证(消息收发/文件传输) 5.2.2 边界条件测试(弱网/高负载) 5.3 性能测试与分析 5.3.1 基准性能测试(响应时间/吞吐量) 5.3.2 压力测试(并发用户/消息洪峰) 5.4 安全性与兼容性测试 5.4.1 OWASP Top 10漏洞扫描 5.4.2 多设备适配测试 5.5 优化策略与效果 5.5.1 消息队列优化(优先级队列) 5.5.2 内存泄漏治理(LeakCanary) 第六章 总结与展望 6.1 研究成果总结 6.2 存在的问题与改进方向 参考文献 附录(代码片段、界面截图、测试报告等)比较两个框架更推荐使用哪个 说明两个论文框架的优缺点 难易程度 是否符合论文要求 设计思路
最新发布
03-18
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值