Ionic Class not found android.permission.INTERNET离子/安卓

oiopk7p5  于 2023-09-28  发布在  Ionic
关注(0)|答案(2)|浏览(139)

当我尝试在构建后在智能手机(Samsung Galaxy J5)上启动应用程序时,我的应用程序立即崩溃并出现以下错误:

java.lang.RuntimeException: Unable to instantiate application android.permission.INTERNET: java.lang.ClassNotFoundException: Didn't find class "android.permission.INTERNET" on path: DexPathList[[zip file "/data/app/fr.hardis.VBNantes-1/base.apk"],nativeLibraryDirectories=[/data/app/fr.hardis.VBNantes-1/lib/arm, /data/app/fr.hardis.VBNantes-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]

我使用的是Ionic 5.2和Angular。
但是我尝试将此添加到我的myconfig.xml中:

<edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest">
        <uses-permission android:name="android.permission.INTERNET" /> 
    </edit-config>

谢谢你的帮助!

vngu2lb8

vngu2lb81#

在Android中,权限将添加到Android平台文件夹内的AndroidMenifest.xml文件中。
如果您希望您的应用程序使用internet,请转到您的
YourProject\platforms\android\app\src\main\AndroidManifest.xml
存档并添加吹扫代码:
<uses-permission android:name="android.permission.INTERNET" />

2g32fytz

2g32fytz2#

我今天解决了类似的问题。
问题似乎是生成系统中的缓存错误。你曾经有一个需要android.permission.INTERNET权限的插件,然后以某种方式删除了该插件,这是由构建系统错误处理的。它没有清除任何内部缓存来跟踪包含的类。然后,当你后来添加一个需要相同权限的插件时,构建系统认为它已经包含了所需的类,所以它没有添加它。
在我的情况下解决这个问题;清除所有构建工件(在我的情况下是cordova clean),删除所有插件,删除平台本身(在我的情况下是cordova platform remove android),然后重建...添加插件和平台,最后重新编译。

相关问题