saj*_*aha 5 android samsung-mobile flutter
尝试在三星 Note 8 手机上构建以前可以运行的应用程序,这是错误Permission Denial: Broadcast from android requests to run as user -1 but is Calling from user 0
\n现在我明白只有访问系统功能的系统应用程序才需要 INTERACT_ACROSS_USERS_FULL 权限。我的这个应用之前运行正常,升级了flutter和dart版本,也升级了Mobile OS。
\n即使在所有清单文件中添加这些权限,仍然不起作用,
\n<uses-permission android:name="android.permission.INTERACT_ACROSS_USERS"/>\n<uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"/>\n
Run Code Online (Sandbox Code Playgroud)\n也尝试过这个,甚至通过调整手机上的开发人员选项来工作一次,因为我在这里给出了一个答案,调整开发人员选项,但现在也不起作用。
\n这是我的颤医生出来了,
\n[\xe2\x9c\x93] Flutter (Channel master, 2.6.0-1.0.pre.153, on macOS 11.5.1 20G80 darwin-x64, locale en-IN)\n[\xe2\x9c\x93] Android toolchain - develop for Android devices (Android SDK version 30.0.3)\n[\xe2\x9c\x93] Xcode - develop for iOS and macOS (Xcode 12.4)\n[\xe2\x9c\x93] Chrome - develop for the web\n[\xe2\x9c\x93] Android Studio (version 2020.3)\n[\xe2\x9c\x93] Connected device (2 available)\n
Run Code Online (Sandbox Code Playgroud)\n完整的错误是这样的,
\nD/vndksupport( 5675): Loading /vendor/lib64/hw/android.hardware.graphics.mapper@2.0-impl.so from current namespace instead of sphal namespace.\nE/flutter ( 5675): [ERROR:flutter/fml/platform/android/jni_util.cc(182)] java.lang.SecurityException: Permission Denial: broadcast from android asks to run as user -1 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL or android.permission.INTERACT_ACROSS_USERS\nE/flutter ( 5675): at android.os.Parcel.createException(Parcel.java:1966)\nE/flutter ( 5675): at android.os.Parcel.readException(Parcel.java:1934)\nE/flutter ( 5675): at android.os.Parcel.readException(Parcel.java:1884)\nE/flutter ( 5675): at android.app.IActivityManager$Stub$Proxy.reportActivityFullyDrawn(IActivityManager.java:7312)\nE/flutter ( 5675): at android.app.Activity.reportFullyDrawn(Activity.java:2092)\nE/flutter ( 5675): at io.flutter.embedding.android.FlutterActivity.onFlutterUiDisplayed(FlutterActivity.java:1100)\nE/flutter ( 5675): at io.flutter.embedding.android.FlutterActivityAndFragmentDelegate$1.onFlutterUiDisplayed(FlutterActivityAndFragmentDelegate.java:88)\nE/flutter ( 5675): at io.flutter.embedding.android.FlutterView$2.onFlutterUiDisplayed(FlutterView.java:133)\nE/flutter ( 5675): at io.flutter.embedding.engine.FlutterJNI.onFirstFrame(FlutterJNI.java:462)\nE/flutter ( 5675): at android.os.MessageQueue.nativePollOnce(Native Method)\nE/flutter ( 5675): at android.os.MessageQueue.next(MessageQueue.java:326)\nE/flutter ( 5675): at android.os.Looper.loop(Looper.java:181)\nE/flutter ( 5675): at android.app.ActivityThread.main(ActivityThread.java:7073)\nE/flutter ( 5675): at java.lang.reflect.Method.invoke(Native Method)\nE/flutter ( 5675): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)\nE/flutter ( 5675): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:965)\nE/flutter ( 5675): Caused by: android.os.RemoteException: Remote stack trace:\nE/flutter ( 5675): at com.android.server.am.UserController.handleIncomingUser(UserController.java:1818)\nE/flutter ( 5675): at com.android.server.am.ActivityManagerService.broadcastIntentLocked(ActivityManagerService.java:25789)\nE/flutter ( 5675): at com.android.server.am.ActivityManagerService.broadcastIntentLocked(ActivityManagerService.java:25720)\nE/flutter ( 5675): at com.android.server.am.ActivityManagerService.broadcastIntent(ActivityManagerService.java:26590)\nE/flutter ( 5675): at android.app.ContextImpl.sendBroadcastAsUser(ContextImpl.java:1264)\nE/flutter ( 5675): \nE/flutter ( 5675): \nF/flutter ( 5675): [FATAL:flutter/shell/platform/android/platform_view_android_jni_impl.cc(1220)] Check failed: fml::jni::CheckException(env). \nF/libc ( 5675): Fatal signal 6 (SIGABRT), code -6 (SI_TKILL) in tid 5675 (bro.neighbroapp), pid 5675 (bro.neighbroapp)\n
Run Code Online (Sandbox Code Playgroud)\n
这是最新 Flutter 版本的问题,我用下面的 eidt 修复了它,
这是一个解决方法,它对我有用。
MainActivity.kt
import android.os.Build
override fun onFlutterUiDisplayed() {
if (Build.VERSION.SDK_INT >= 100) { //I gave 100 just to confirm , it shoud be android ver 10
reportFullyDrawn();
}
}
Run Code Online (Sandbox Code Playgroud)
flutter clean
flutter run
归档时间: |
|
查看次数: |
1528 次 |
最近记录: |