TL; DR
После добавления 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
в каталоге build
неожиданно появляется другой каталог (кроме app
):
project/build/app:
-generated
-intermediates
-outputs
-tmp
project/build/url_launcher:
-generated
-intermediates
-outputs
-tmp
Каталог url_launcher
в каталоге build
имеет те же подкаталоги, что и каталог app
. Я просто упоминаю об этом, потому что я не уверен, является ли это нежелательным поведением или нет.