You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Play商店部署后产品Widget异常:TextField消失

解决Play商店上传后TextField消失的问题

可能原因及修复方案

  • R8/ProGuard代码混淆导致TextField被误删
    Play商店的App Bundle默认启用R8混淆,若规则配置不当,TextField相关类或方法可能被移除。
    修复:在proguard-rules.pro中添加保留规则:

    # 保留官方TextField类及方法
    -keep class androidx.compose.material3.TextField {*;}
    -keep class androidx.compose.material.TextField {*;}
    -keepclassmembers class androidx.compose.material3.TextField {*;}
    -keepclassmembers class androidx.compose.material.TextField {*;}
    # 若使用自定义TextField,保留自定义类
    -keep class com.yourpackage.YourCustomTextField.** {*;}
    

    用assembleRelease构建混淆后的APK测试,确认TextField正常后再上传。

  • 资源压缩误删TextField依赖资源
    资源压缩可能移除TextField依赖的字体、绘制资源等。
    修复:在res/raw/keep.xml中添加资源保留规则:

    <?xml version="1.0" encoding="utf-8"?>
    <resources xmlns:tools="http://schemas.android.com/tools"
        tools:keep="@drawable/*textfield*,@font/*" />
    

    根据实际使用的资源调整通配符,确保TextField所需资源不被压缩。

  • Play商店动态交付或签名配置问题
    动态交付可能导致组件部署不完整,签名配置不一致也可能引发异常。
    修复:

    • 尝试上传完整APK(而非App Bundle)测试,排查是否为Bundle打包问题。
    • 检查App Signing配置,确保签名后的包与本地测试包配置一致。
    • 关闭不必要的动态交付模块,测试基础包是否包含TextField组件。
  • Jetpack Compose版本兼容bug
    部分Compose版本在Play商店编译环境下存在TextField渲染异常。
    修复:升级Compose相关依赖至最新稳定版,示例配置:

    implementation "androidx.compose.material3:material3:1.2.1"
    implementation "androidx.compose.ui:ui:1.6.1"
    

    重新构建测试后再上传。

内容的提问来源于stack exchange,提问作者Kamlesh Yadav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 20:45:58