首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >颤振释放构建包太大了

颤振释放构建包太大了
EN

Stack Overflow用户
提问于 2021-11-08 14:47:26
回答 1查看 492关注 0票数 1

最近,我已经从Android原生Java平台转向了颤振。从教程和在线信息中我了解到,欺骗应用程序的大小可能很大,但发布版可能不太大。

颤振释放构建束为123.7 MBs。安装后,应用程序的大小将增加到大约300到350 MBs。

我在资产方面没有媒体。所有的mipmap和绘图被缩小到总数小于100 kbs。

我有这个应用程序,我正在使用以下插件:

代码语言:javascript
复制
  cupertino_icons: ^1.0.2
  flutter_native_splash: ^1.2.3
  firebase_core:
  firebase_auth: ^3.1.3
  cloud_firestore: ^2.5.3
  firebase_messaging: ^10.0.8
  firebase_storage: ^10.0.5
  sqflite: ^2.0.0+4
  path_provider: ^2.0.5
  permission_handler: ^8.1.6
  pinput: ^1.2.0
  flutter_launcher_icons: ^0.9.2
  http: ^0.13.3
  flutter_local_notifications: ^8.2.0
  contacts_service: ^0.6.3
  intl: ^0.17.0
  file_picker: ^4.1.4
  cached_network_image: ^3.1.0
  provider: ^6.0.1
  awesome_notifications: any
  flutter_sound: ^8.4.1+1
  stream_transform: ^2.0.0
  jitsi_meet: ^4.0.0
  dio: ^4.0.1
  google_fonts: ^2.1.0
  share_plus: ^3.0.4
  fluttertoast: ^8.0.8
  connectivity_plus: ^2.0.2
  shared_preferences: ^2.0.8
  random_string: ^2.3.1

我正在使用Proguard在gradle:

代码语言:javascript
复制
buildTypes {
    release {
        signingConfig signingConfigs.release
        minifyEnabled true
        shrinkResources true
        useProguard true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}

和前护卫规则档案:

代码语言:javascript
复制
## Flutter wrapper
 -keep class io.flutter.app.** { *; }
 -keep class io.flutter.plugin.** { *; }
 -keep class io.flutter.util.** { *; }
 -keep class io.flutter.view.** { *; }
 -keep class io.flutter.** { *; }
 -keep class io.flutter.plugins.** { *; }
 -keep class com.google.firebase.** { *; }
 -dontwarn io.flutter.embedding.**
 -ignorewarnings

此外,我还试图像下面这样清理和运行构建查询,但没有区别:

代码语言:javascript
复制
flutter clean && flutter build appbundle

如有任何建议和帮助,将不胜感激。

更新

正如שואוהבאותך所建议的,问题似乎在于flutter_sound插件。我从flutter_sound转到flutter_sound_lite,并试图重建。现在我错了。

属性receiver#androidx.media.session.MediaButtonReceiver@exported value=(false)来自:awesome_notifications AndroidManifest.xml:59:13-37也存在于com.github.canardoux:flutter_sound_core:8.4.2 AndroidManifest.xml:18:13-36 value=(true)。建议:在AndroidManifest.xml:57:9-63:20的元素中添加‘tools:replace=:android:导出’来覆盖。

清单:

代码语言:javascript
复制
<activity> // Main Activity
    <intent-filter>
        <action android:name="FLUTTER_NOTIFICATION_CLICK" />
        <category android:name="android.intent.category.DEFAULT"/>
    </intent-filter>
</activity>

有什么建议吗?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-09 07:43:41

正如flutter_sound插件所建议的那样,问题似乎在上。我从flutter_sound转到了flutter_sound,但问题依然存在。

最后,我开发了自己的颤振插件。目前,它只适用于android系统,但将很快提供给IOS系统。

现在,我的应用程序包大小已经从123.6 MBs减少到了47.6 MBs

如果有相同的问题,请在下面给出插件链接:

颤振声系统- 插件链接

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69885404

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档