dart Flutter应用程序在更改软件包名称时不起作用

30byixjq  于 2023-05-20  发布在  Flutter
关注(0)|答案(4)|浏览(181)

当我尝试在Kotlin中的MainActivity.kt中更改包名时,应用程序无法运行
此错误:

e: /Users/dma/development/flutter_share/android/app/src/main/kotlin/com/example/souqmubtath/MainActivity.kt: (8, 7): Redeclaration: MainActivity
e: /Users/dma/development/flutter_share/android/app/src/main/kotlin/dev/dhari/souqmubtath/MainActivity.kt: (8, 7): Redeclaration: MainActivity

FAILURE: Build failed with an exception.                                

* What went wrong:                                                      
Execution failed for task ':app:compileDebugKotlin'.                    
> Compilation error. See log for more details                           

* Try:                                                                  
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org                              

BUILD FAILED in 27s                                                     
Running Gradle task 'assembleDebug'...                                  
Running Gradle task 'assembleDebug'... Done                        27.6s
Gradle task assembleDebug failed with exit code 1
vs3odd8k

vs3odd8k1#

您没有正确更改包名称,
只需转到以下路径

android > app > src >main >Kotlin

在其中,您将找到另一个类似your_package_name的包,其中包含MainActivity文件。
在您的情况下,它就像是“com.example.souqmubtath”
因此,要正确地更改它,只需转到您的Android清单文件,从那里只需找到package=“com.example.souqmubtath”
只需选择com.example.souqmubtath并重构它。
如果需要重构,可以选择包名->右键->重构->重命名或者只需选择包名,使用重构重命名快捷键Shift+F6
您可以将其重命名为所需的软件包名称。在你的情况下,它就像“dev.达里.souqmubtath”
另外,转到android > app > build.gradle文件路径。在文件和defaultConfig{}中找到applicationId,并将其重构为与您的包名相同的名称。

44u64gxh

44u64gxh2#

Flutter遇到的问题
Package 名称:com.[companyname].[binairyname]
在我的例子中,android/app/src/main/Kotlin/com/中有两个文件夹
在这个文件夹里有:

  • example/binary/*
  • 公司名称/binary/*

因为在一个flutter create命令之后,packagename中的companyname被初始化为example,我推断example文件夹应该被删除
问题解决了

flutter --version
Flutter 2.2.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision f4abaa0735 (9 weeks ago) • 2021-07-01 12:46:11 -0700
Engine • revision 241c87ad80
Tools • Dart 2.13.4
dsekswqp

dsekswqp3#

您必须更新顶部MainActivity.kt中的软件包名称。
如果这是正确的,然后检查您的清单文件,有软件包名称更新或没有?
只有两个原因,你的应用程序不工作。

pqwbnv8z

pqwbnv8z4#

有一个有用的软件包来改变它,但它与android配合得很好,我没有尝试iOS。
首先安装包:
change_app_package_name:联系我们
然后在项目路径的终端中执行以下命令:
扑式酒吧
然后写下面一行,在com后面使用你想要的唯一名称。然后按回车键:
flutter pub运行change_app_package_name:main com.demo.flutter_app将更新文件并删除旧的软件包名称。

相关问题