gpt4 book ai didi

android - 依赖性搞砸了 Flutter 中的 Android 应用程序构建

转载 作者:IT王子 更新时间:2023-10-29 07:06:49 24 4
gpt4 key购买 nike

长话短说

添加后 url_launcher 到我的pubspec我无法再在 Android 中启动我的应用程序。开始时,我在 Logcat 中得到以下输出:Didn't find class "$prefix.$projectname.MainActivity" on path: DexPathList[[zip file "/data/app/... , 其中$prefix.$projectname不是正确的包,因为我将其更改为 $prefix.$name , 其中name是其他字符串。

一旦删除 url_launcher,我的应用程序就可以正常启动了再次。


全面

仅添加 url_launcher 到我的pubspec.yaml文件我的应用程序无法在 Android 上启动。我什至不必在我的代码中使用它。

经过进一步调查,我在 Logcat 中发现了一条适用于 Android 的日志消息:Didn't find class "$prefix.$projectname.MainActivity" on path: DexPathList[[zip file "/data/app/... .这就是错误的根源!

我在创建项目后更改了我的程序包名称,因为 Flutter 仍然有问题 :) 在创建向导中我输入了 $prefix.$name (这些只是变量;prefix 始终相同,另外两个也是如此;为了引用,请查看错误消息,我也将其插入。在我的第一个构建中,包名称变成了然后变成 $packagename.$projectname。我找到了解决方法:更改 Android src 目录中的代码目录名称,并更改 applicationId 中的 build.gradle 名称。

所以现在我的包名是$prefix.$name .我的 Android Studio 项目名称/文件夹仍然是 projectname尽管。没有 url_launcher在我的 pubspec一切正常,但是添加它时会创建一个目录,如下所示:

没有 url_launcher :

project/build/app:
-generated
-intermediates
-outputs
-tmp

添加 url_launcher 后另一个目录(除了 app )突然出现在 build 中目录:

project/build/app:
-generated
-intermediates
-outputs
-tmp
project/build/url_launcher:
-generated
-intermediates
-outputs
-tmp

url_launcher build 中的目录目录具有与 app 相同的子目录目录。我之所以提到这一点,是因为我不确定这是否是不受欢迎的行为。

最佳答案

我发现 through this answer我还必须更改 package <manifest 的属性AndroidManifest.xml 中的标签文件,我还需要更改 packageMainActivity.java本身。

我想知道在不使用 url_launcher 时它是如何工作的.我的猜测是工作设置在 build 中仍然很明显。文件夹,即在已经构建的 .class 中和 .dex文件。

关于android - 依赖性搞砸了 Flutter 中的 Android 应用程序构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50121319/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com