0

我构建了一个颤振应用程序。我使用 url_launcher 包来导航社交链接和其他外部浏览器链接。它在安卓模拟器上完美运行。但是当我构建 apk 并将其安装在手机上时,URL 没有启动。甚至网络图像也没有显示出来。

简单地说,我的意思是颤振应用程序根本没有互联网访问权限。我的问题是为什么相同的代码可以完美地在模拟器上运行而不能在真实设备上运行?

我还检查了android清单文件。也没有问题。这是android清单代码

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.sri_lanka">
    <!-- 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"/>
</manifest>

这是在真实手机上无法打开的图标按钮 [1]:https ://i.stack.imgur.com/TYTmU.png

4

2 回答 2

0

这看起来像调试版本的 AndroindManifest.xml。尝试将同一行添加 <uses-permission android:name="android.permission.INTERNET"/> 到主文件夹中的 AndroidManifest.xml

在此处输入图像描述

于 2022-02-19T13:38:47.703 回答
0

我找到了一个解决方案:您需要在您的 android 清单中添加一些额外的编码才能在真实设备上启动 URL。也可以参考 url_launcher 文档https://pub.dev/packages/url_launcher

请参阅此链接以获取详细信息https://developer.android.com/training/package-visibility/use-cases#kotlin

示例图像

您需要在清单文件中添加另一行代码才能在 android mobile 上访问互联网。

就是这个=>

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

这是您需要添加到 android 清单中的代码:清单文件路径 => android\app\src\main\AndroidManifest.xml

<queries>
  <!-- If your app opens https URLs -->
  <intent>
    <action android:name="android.intent.action.VIEW" />
    <data android:scheme="https" />
  </intent>
  <!-- If your app makes calls -->
  <intent>
    <action android:name="android.intent.action.DIAL" />
    <data android:scheme="tel" />
  </intent>
  <!-- If your sends SMS messages -->
  <intent>
    <action android:name="android.intent.action.SENDTO" />
    <data android:scheme="smsto" />
  </intent>
  <!-- If your app sends emails -->
  <intent>
    <action android:name="android.intent.action.SEND" />
    <data android:mimeType="*/*" />
  </intent>
</queries>
于 2022-02-19T15:23:04.473 回答