я работаю с Flutter + AndroidStudio, и я в настоящее время начинаю работать с дополненной реальностью, проблема в том, что я хотел бы иметь где-нибудь QrCode, и пока я иду с включенной функцией ArCore, я могу нажать «кнопку сканирования» и открыть « Настоящая камера "с функцией сканирования.
Future _scan() async {
String barcode = await scanner.scan();
print(barcode);
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: Stack(
children: <Widget>[
ArCoreView(
onArCoreViewCreated: _onArCoreViewCreated,
enableTapRecognizer: true,
),
Align(
alignment: Alignment.topLeft,
child: RaisedButton(
onPressed: () {
_scan();
},
child: Text('Go back!'),
),
),
],
),
);
}
Если я не поставлю:
ArCoreView(
onArCoreViewCreated: _onArCoreViewCreated,
enableTapRecognizer: true,
)
Это на самом деле работает нормально. 2 плагина: import 'package: arcore_flutter_plugin / arcore_flutter_plugin.dart';
import 'package: qrscan / qrscan.dart' в качестве сканера;
Я думаю, проблема в том, что камера уже открыт или что-то в этом роде, я не знаю, как я могу это исправить, заранее спасибо!
Вот ошибка, которую я получаю:
I/com.difrancescogianmarco.arcore_flutter_plugin.ArCoreView( 9820): onActivityPaused
I/native ( 9820): session.cc:1154 Entering Session::Pause.
W/native ( 9820): calibration_convergence_detector_utils.cc:143 Failed to get calibration qualification statistics: States are empty.
I/native ( 9820): online_calibration_manager.cc:126 OnlineCalibrationManager: Discarding the new online recalibration estimates.
I/native ( 9820): cameras.cc:1309 Camera 0 changed state CAPTURING->STOPPING; Capture session stopping... i=2
E/ACameraDevice( 9820): onDeviceIdle sending state cb
I/native ( 9820): android_camera.cc:1617 [Camera=0; State=STOPPING] Camera completed repeating capture sequence 0
I/native ( 9820): logger.h:28 CameraMetrics: LastCaptureComplete: 233.815312ms
I/native ( 9820): logger.h:28 CameraMetrics: CloseCaptureSession: 206.000938ms
I/native ( 9820): cameras.cc:1309 Camera 0 changed state STOPPING->OPEN; Camera stopped. i=3
I/native ( 9820): logger.h:28 CameraMetrics: CloseCamera: 111.259687ms
I/native ( 9820): cameras.cc:1309 Camera 0 changed state OPEN->CLOSED; Camera device closed successfully. i=4
I/native ( 9820): logger.h:28 DataSourceMetrics: kStopImageSubSystem: 551.795989ms
I/native ( 9820): session.cc:1239 Session::PauseWithAnalytics returning OK.
I/Choreographer( 9820): Skipped 33 frames! The application may be doing too much work on its main thread.
W/ActivityThread( 9820): handleWindowVisibility: no activity for token android.os.BinderProxy@edfedec
D/AndroidRuntime( 9820): Shutting down VM
E/AndroidRuntime( 9820): FATAL EXCEPTION: main
E/AndroidRuntime( 9820): Process: com.example.flutterapp4, PID: 9820
E/AndroidRuntime( 9820): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.flutterapp4/com.shinow.qrscan.SecondActivity}: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter savedInstanceState
E/AndroidRuntime( 9820): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3276)
E/AndroidRuntime( 9820): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415)
E/AndroidRuntime( 9820): at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
E/AndroidRuntime( 9820): at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
E/AndroidRuntime( 9820): at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
E/AndroidRuntime( 9820): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2022)
E/AndroidRuntime( 9820): at android.os.Handler.dispatchMessage(Handler.java:107)
E/AndroidRuntime( 9820): at android.os.Looper.loop(Looper.java:359)
E/AndroidRuntime( 9820): at android.app.ActivityThread.main(ActivityThread.java:7418)
E/AndroidRuntime( 9820): at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime( 9820): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
E/AndroidRuntime( 9820): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:935)
E/AndroidRuntime( 9820): Caused by: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter savedInstanceState
E/AndroidRuntime( 9820): at com.difrancescogianmarco.arcore_flutter_plugin.ArCoreView$setupLifeCycle$1.onActivityCreated(Unknown Source:7)
E/AndroidRuntime( 9820): at android.app.Application.dispatchActivityCreated(Application.java:373)
E/AndroidRuntime( 9820): at android.app.Activity.dispatchActivityCreated(Activity.java:1202)
E/AndroidRuntime( 9820): at android.app.Activity.onCreate(Activity.java:1475)
E/AndroidRuntime( 9820): at androidx.core.app.ComponentActivity.onCreate(ComponentActivity.java:81)
E/AndroidRuntime( 9820): at androidx.activity.ComponentActivity.onCreate(ComponentActivity.java:149)
E/AndroidRuntime( 9820): at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:313)
E/AndroidRuntime( 9820): at androidx.appcompat.app.AppCompatActivity.onCreate(AppCompatActivity.java:106)
E/AndroidRuntime( 9820): at com.shinow.qrscan.SecondActivity.onCreate(SecondActivity.java:36)
E/AndroidRuntime( 9820): at android.app.Activity.performCreate(Activity.java:7802)
E/AndroidRuntime( 9820): at android.app.Activity.performCreate(Activity.java:7791)
E/AndroidRuntime( 9820): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1307)
E/AndroidRuntime( 9820): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3251)