Flutter 应用程序在 android studio 模拟器上完美运行,但不会超过物理设备上的加载屏幕

Posted

技术标签:

【中文标题】Flutter 应用程序在 android studio 模拟器上完美运行,但不会超过物理设备上的加载屏幕【英文标题】:Fluttter app runs perfectly on android studio emulator but doesn't go past the loading screen on physical device 【发布时间】:2020-08-08 12:23:43 【问题描述】:

我创建了一个简单的颤振应用程序,使用天气 api 和 http 包告诉我当前天气。该应用程序在我的模拟设备上按预期运行,为了在物理设备上进行测试,我使用flutter build apk 构建了一个胖 apk。不幸的是,该应用无法通过物理设备上的加载屏幕(我已经在多个设备上进行了测试)。

安卓清单

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="co.appbrewery.clima">

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>

载入画面

import 'package:clima/services/weather.dart';
import 'package:flutter/material.dart';
import 'location_screen.dart';
import 'package:flutter_spinkit/flutter_spinkit.dart';

class LoadingScreen extends StatefulWidget 
  @override
  _LoadingScreenState createState() => _LoadingScreenState();


class _LoadingScreenState extends State<LoadingScreen> 
  @override
  void initState() 
    super.initState();
    getlocationdata();
  

  void getlocationdata() async 
    WeatherModel weatherModel = WeatherModel();
    var weatherdata = await weatherModel.getlocationweather();
    Navigator.push(context, MaterialPageRoute(builder: (context) 
      return LocationScreen(
        locationweather: weatherdata,
      );
    ));
  

  @override
  Widget build(BuildContext context) 
    return Scaffold(
      body: Center(
        child: SpinKitChasingDots(
          color: Colors.white,
          size: 50,
        ),
      ),
    );
  

怎么了?我被困住了。任何帮助将不胜感激!

【问题讨论】:

你在物理设备上以调试模式运行它吗? 是的,我做到了,它在那里工作。当我在设备上安装 apk 时不起作用。 @YoavGenish ... 可能只是权限问题 尝试删除设备上的apk abd完全重新安装 【参考方案1】:

你可以这样处理:

getlocationdata();评论该行 然后用flutter run运行

如果有效,请在调试模式下查看为什么无效。 如果还是不行,那就试试把SpinKitChasingDots换成Text("test")吧。

祝你好运

【讨论】:

以上是关于Flutter 应用程序在 android studio 模拟器上完美运行,但不会超过物理设备上的加载屏幕的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Flutter 应用程序中显示原生 Android 视图?

Flutter:在 web 、android 和 ios 中使用相同的应用程序

Flutter 应用程序(android)卡在启动画面

Flutter - 在移动应用程序上运行 MATLAB 函数(主要 Android)

Flutter 构建在 iOS 上失败,但在 android 上工作

无法在 Android 12.0 中退出 Flutter 应用