Flutter项目修改包名、图标、生成多端Logo

一、修改包名

对于 Android

  1. 更改 AndroidManifest.xml 文件中的包名:

    • 找到项目目录下的 android/app/src/main/AndroidManifest.xml。
    • 修改 <manifest> 标签中的 package 属性为新的包名。
  2. 修改 build.gradle 文件:

    • 打开 android/app/build.gradle。
    • 找到 applicationId 并更改为新的包名。
  3. 重命名包目录:

    • 在 android/app/src/main/kotlin 或 java 目录下,根据原包名找到相应的目录结构。
    • 将目录结构重命名为新的包名对应的结构。
  4. 更新包引用:

    • 如果有任何 Kotlin/Java 文件包含旧的包名引用,需要更新这些引用为新的包名。(如果需要的话)

对于 iOS

  1. 修改 Info.plist 中的 Bundle Identifier:

    • 打开 ios/Runner/Info.plist。
    • 修改 CFBundleIdentifier 的值为新的包名。
  2. 使用 Xcode 更改项目配置:

    • 打开 iOS 目录下的 Runner.xcworkspace 文件。(就是先在Finder中打开**Runner.xcworkspace所在的文件夹,然后双击它,mac系统下会自动用xcode打开它**)
    • 双击后 Xcode Runner.xcworkspace ,选择项目根节点(顶部的Runner),然后在 General 标签页中找到 Bundle houdentifier 并修改。(点击箭头,就可以修改)

3. 重命名 Swift 或 Objective-C 桥接文件(如有,如果需要):

diff 复制代码
-   如果项目中包含 Swift 或 Objective-C 的桥接文件,需要确保其包名也进行相应的更新。

最后步骤

  • 清理和重建项目:

    • 在 Flutter 项目根目录运行 flutter clean。
    • 然后运行 flutter pub get。
  • 测试应用:

    • 编译并运行应用,确保一切正常。

运行一下,基本到这就可以了。(如果不行,可以考虑下结合一下命令 Flutter create --com.your.packagename)


二、修改App名称

对于 Android:

老板本

  1. 打开你的 Flutter 项目。

  2. 导航到 android/app/src/main/res/values/strings.xml。

  3. 修改 <string name="app_name">YourAppName</string> 中的 YourAppName 为你想要的应用名称。

    xml 复制代码
    xmlCopy code
    <resources>
        <string name="app_name">New App Name</string>
    </resources>

新版本

但是呢,对于新版的Android studio新建的Flutter项目,安卓下并没有string文件,这时。

打开 android/app/src/main/AndroidManifest.xml 手动修改application标签下的label的值,也可以修改app名称。


对于 iOS:

  1. 在 Flutter 项目中,导航到 ios/Runner/Info.plist。

  2. 找到 <key>CFBundleName</key> 和其下方的 <string> 标签。

  3. 修改 <string> 标签中的值为你的新应用名称。

    vbnet 复制代码
    xmlCopy code
    <key>CFBundleName</key>
    <string>New App Name</string>

三、修改图标

常规的,这里不展开。

说一下使用 flutter_launcher_icons: ^0.13.1 的修改图标吧

yaml 复制代码
dev_dependencies:
  flutter_test:
    sdk: flutter
  flutter_launcher_icons: ^0.13.1

flutter_launcher_icons:
  android: "launcher_icon"
  ios: true
  image_path: "assets/icons/launcher_ios.png"

注意:

  • 1、 flutter_launcher_icons 和 dev_dependencies 是同级别的,不是从属关系
  • 2、这里图片名字写着launcher_ios,不是说固定的,你也可以写别的名字,跟ios没关系的。只要确保assets/icons下有对应图片即可。

执行命令

arduino 复制代码
flutter packages get
flutter pub run flutter_launcher_icons:main

到这里,就可以了。运行可查看效果。

题外话,顺便附上原版的教程 (pub.dev/packages/fl...

yaml 复制代码
dev_dependencies:
  flutter_launcher_icons: "^0.13.1"

flutter_launcher_icons:
  android: "launcher_icon"
  ios: true
  image_path: "assets/icon/icon.png"
  min_sdk_android: 21 # android min sdk min:16, default 21
  web:
    generate: true
    image_path: "path/to/image.png"
    background_color: "#hexcode"
    theme_color: "#hexcode"
  windows:
    generate: true
    image_path: "path/to/image.png"
    icon_size: 48 # min:48, max:256, default: 48
  macos:
    generate: true
    image_path: "path/to/image.png"

END

相关推荐
Csvn4 小时前
Monorepo
前端
Csvn4 小时前
流水线
前端
Csvn4 小时前
微前端架构
前端
Linux-lucky6 小时前
45-Linux学习之旅之防火墙与WEB加固
linux·前端·网络·学习·ubuntu
风骏时光牛马8 小时前
生成一个移动端标题,只需要一个标题,不需要其他的任何文本。
前端
IT_陈寒9 小时前
Redis雪崩把我坑惨了,这是5年经验的教训
前端·人工智能·后端
SameX9 小时前
HarmonyOS ArkUI List 的侧滑删除 用 ListItem 的 swipeAction + endIcon 的做法
前端
usdoc文档预览11 小时前
USDOC系列之PPT文件在线编辑-VUE前端实现在线浏览器在线编辑PPT文档
前端·vue.js·编辑器·office365·ppt在线编辑·office文件在线编辑·文件在线编辑
用户27050777252411 小时前
Agent 调工具卡住?3 种超时与取消策略实测对比
前端
Nerd(BUG版)12 小时前
Flutter学习day5--事件手势与命中测试
学习·flutter