Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dart 省道/颤振:应用程序在启动时崩溃_Dart_Flutter - Fatal编程技术网

Dart 省道/颤振:应用程序在启动时崩溃

Dart 省道/颤振:应用程序在启动时崩溃,dart,flutter,Dart,Flutter,我有一个非常有趣的问题,我可以在模拟器上运行我的应用程序,如果成功的话,flatter build apk,我可以在Google Play上发布新版本,或者在我的手机上安装apk(Pixel 2 XL,目前是4月份的安全补丁) 但当我在手机上启动它时,它立即崩溃。我还没有尝试安装调试apk,首先我想应用May补丁 我已经多次尝试升级颤振,但似乎也没有任何问题: C:\Android\osszefogasaszanhuzokert>flutter upgrade Upgrading Flut

我有一个非常有趣的问题,我可以在模拟器上运行我的应用程序,如果成功的话,
flatter build apk
,我可以在Google Play上发布新版本,或者在我的手机上安装
apk
(Pixel 2 XL,目前是4月份的安全补丁)

但当我在手机上启动它时,它立即崩溃。我还没有尝试安装调试apk,首先我想应用May补丁

我已经多次尝试升级颤振,但似乎也没有任何问题:

C:\Android\osszefogasaszanhuzokert>flutter upgrade
Upgrading Flutter from c:\Android\flutter...
From https://github.com/flutter/flutter
   3d3673a34..23098dde5  master     -> origin/master
Already up to date.

Upgrading engine...
Already up-to-date.

Flutter 0.3.6-pre.81 • channel beta • https://github.com/flutter/flutter.git
Framework • revision 2849bc04ff (10 days ago) • 2018-05-01 20:07:45 -0700
Engine • revision d5c1117170
Tools • Dart 2.0.0-dev.52.0.flutter-011676641a

Running "flutter packages upgrade" in osszefogasaszanhuzokert... 14.4s

Running flutter doctor...
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel beta, v0.3.6-pre.81, on Microsoft Windows [Version 10.0.15063], locale en-GB)
[√] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[√] Android Studio (version 3.1)
[√] Connected devices (1 available)

• No issues found!
我最近更换了笔记本电脑,并在这台新电脑上查看了我代码的git存储库。有一些问题,但我最终解决了。唯一的区别是,现在的项目名只是
osszefogasaszanhuzokert
,而包名是
osszefogasaszanhuzokert2
——但我认为这不会引起任何问题

我猜问题将出现在我的
AndroidManifest.xml
中:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.zgyorkei.osszefogasaszanhuzokert2">

    <!-- The INTERNET permission is required for development. Specifically,
         flutter needs it to communicate with the running application
         to allow setting breakpoints, to provide hot reload, etc.
    -->
    <uses-permission android:name="android.permission.INTERNET"/>

    <!-- io.flutter.app.FlutterApplication is an android.app.Application that
         calls FlutterMain.startInitialization(this); in its onCreate method.
         In most cases you can leave this as-is, but you if you want to provide
         additional functionality it is fine to subclass or reimplement
         FlutterApplication and put your custom class here. -->
    <application
        android:name="io.flutter.app.FlutterApplication"
        android:label="Összefogás A Szánhúzókért"
        android:icon="@mipmap/ic_launcher">
        <activity
            android:name="com.zgyorkei.osszefogasaszanhuzokert2.MainActivity"
            android:launchMode="singleTop"
            android:theme="@style/LaunchTheme"
            android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fontScale"
            android:hardwareAccelerated="true"
            android:windowSoftInputMode="adjustResize">
            <!-- This keeps the window background of the activity showing
                 until Flutter renders its first frame. It can be removed if
                 there is no splash screen (such as the default splash screen
                 defined in @style/LaunchTheme). -->
            <meta-data
                android:name="io.flutter.app.android.SplashScreenUntilFirstFrame"
                android:value="true" />
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>
</manifest>

如何将
Dart虚拟机
更改为使用
hardfp
而不是
softfp

在颤振升级后,我面临同样的问题

在我的应用程序中,
build.gradle
文件中启用了
multiDexEnabled true
,并且在升级之前工作正常。 我之前添加了它来修复另一个崩溃


同样的问题见此:

我也有同样的问题。对我来说,这是在我重命名我的应用程序并更改程序包名称后发生的。我没有正确地为android做这件事

在跟踪之后,android的工作进展顺利

确保
AndroidManifest.xml
android/app/build.gradle
android/app/src/../MainActivity.java
中的包名相同。同时检查ios版本的
ios/Runner/Info.plist
CFBundleName的值。

以下是解决方案:

文件build.gradle中包含以下内容:

buildTypes {
        release {
            // TODO: Add your own signing config for the release build.
            // Signing with the debug keys for now, so `flutter run --release` works.
     //       signingConfig signingConfigs.debug
            // colocado isso para release
            signingConfig signingConfigs.release

            minifyEnabled true
            useProguard true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

只需将minifyEnabled和useProguard更改为false,然后再次运行flutter build。

这并不是对这个问题的直接回答,但我遇到了类似的问题,并在这里结束。其他人也可以来

我的问题:应用程序在emulator上首次启动时崩溃


我的解决方案:通过运行
flatter clean

清除缓存在一些具有不同架构的手机上存在相同的问题。当我打开应用程序时,它开始崩溃。以下是一个对我有效的解决方案:

defaultConfig {
    ...
    multiDexEnabled true
    ndk {
        abiFilters 'x86', 'armeabi-v7a'
    }
}
必须在
android/app/build.gradle
文件中添加
ndk
,它就像一个魔咒


我希望这能帮助别人

它让我崩溃的原因是因为启动时有一个第三方库。要检查导致崩溃的库,请在Android Studio上转到
View>Tool Windows>Logcat
,使用Logcat查看日志。然后,重新启动应用程序并检查输出。对我来说,是Firebase Auth库导致了崩溃。我刚更新了那个图书馆,喜欢我的问题。我希望这对某人有帮助。如果不是,“保持冷静,继续阅读,你最终会发现它的。”

解决此错误的最简单方法

更改包名时会发生此错误

为了以正确的方式更改包名,您必须遵循以下步骤

通过以下步骤,您可以解决此错误

第1步:-

1.转到:——

project>[你的应用程序名称]>Android[你的应用程序名称]>应用程序>src

在src文件夹中,您可以找到3个文件Debug、main和profile

分别转到每个文件并更改其AndroidManifest.xml文件的包名

现在,您距离解决此错误还有一半的距离

第二步:-

现在,转到位于中的build.gradle文件

project>[你的应用程序名称]>Android[你的应用程序名称]>应用程序>build.gradle

在这里你可以找到这个代码
defaultConfig{
//TODO:指定您自己的唯一应用程序ID(https://developer.android.com/studio/build/application-id.html).
applicationId“com.example.appname”
明斯克版本16
targetSdkVersion 29
versionCode.toInteger()的版本代码
版本名
TestInstrumentRunner“androidx.test.runner.AndroidJUnitRunner”
}

只需将包名
com.example.appname
更改为合适的包名即可

第三步:-

现在去

项目>[你的应用程序名称]>Android [您的应用程序名称]>app>src>main>java>mainactivity

***注意******如果您正在使用Kotlin和颤振,那么您必须到这里:--

项目>[你的应用程序名称]>Android [你的应用程序名称]>app>src>main>kotlin>main活动

进入Mainactivity.kotlinMainactivity.java

它应该工作完美…请对此提供反馈

也不要忘记更改文件夹的包名[转到 src>main>kotlin或java>com.example.app]

我遇到了同样的行为(应用程序在启动时关闭,没有任何错误或警告等),并使用命令解决了这个问题:

flutter clean

当我有一段时间(几个月)没有在模拟器上重新启动应用程序时,这种情况就发生了。我猜这与一些颤振更新有关。

对于那些使用Kotlin进行重构/更改包名但以上都不起作用的人(我的案例),检查此项:确保在您的app/src/main目录中app/src/main/javaapp/src/main/kotlin目录中都有
MainActivity
文件。对我来说,java文件夹中没有文件,这导致了崩溃(当然,请确保您也完成了上述所有操作)。

Hi
flutter clean
  classpath 'com.android.tools.build:gradle:3.3.1'
  classpath 'com.android.tools.build:gradle:3.3.2'
<meta-data
    android:name="com.google.android.gms.ads.APPLICATION_ID"
    android:value="app-id"/>
<meta-data
    android:name="com.google.android.gms.ads.APPLICATION_ID"
    android:value="your-app-id"/>
    <key>GADApplicationIdentifier</key>
    <string>your-app-id</string>
adb logcat
keytool -exportcert -list -v -alias foldername -keystore /directory
classpath 'com.android.tools.build:gradle:3.5.0'
distributionUrl=https\://services.gradle.org/distributions/gradle-6.6-all.zip