diff --git a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/Camera.ets b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/Camera.ets index 62d35d6f0c46b2d35318c1d9fec3716ee2aee2c0..098fbc86254fcee69d4aa361296f28b06f8dfb5e 100644 --- a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/Camera.ets +++ b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/Camera.ets @@ -12,11 +12,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +import { common } from '@kit.AbilityKit'; import { media } from '@kit.MediaKit'; import fs from '@ohos.file.fs'; -import Ability from '@ohos.app.ability.Ability'; -import UIAbility from '@ohos.app.ability.UIAbility'; import camera from '@ohos.multimedia.camera'; import image from '@ohos.multimedia.image'; import { HashMap, List } from '@kit.ArkTS'; @@ -38,7 +36,6 @@ import { ImageStreamReader } from './media/ImageStreamReader'; import { BusinessError } from '@kit.BasicServicesKit'; import { CameraState } from './CameraState'; import { AutoFocusFeature } from './features/autofocus/AutoFocusFeature'; -import fileIO from '@ohos.fileio'; import { DeviceOrientationManager } from './features/sensororientation/DeviceOrientationManager'; import { Point } from './features/Point'; import { FlashFeature } from './features/flash/FlashFeature'; @@ -53,7 +50,6 @@ import { ExposureMode } from './features/exposurelock/ExposureMode'; import PhotoAccessHelper from '@ohos.file.photoAccessHelper'; import systemDateTime from '@ohos.systemDateTime'; import photoAccessHelper from '@ohos.file.photoAccessHelper'; -import { picker } from '@kit.CoreFileKit'; import { DeviceOrientation } from '@ohos/flutter_ohos/src/main/ets/embedding/engine/systemchannels/PlatformChannel'; const TAG = "Camera"; @@ -75,11 +71,10 @@ export class Camera implements CameraCaptureStateListener { private flutterTexture: SurfaceTextureEntry; private resolutionPreset: ResolutionPreset; private enableAudio: boolean; - private applicationContext: Context; dartMessenger: DartMessenger; private cameraProperties: CameraProperties; private cameraFeatureFactory: CameraFeatureFactory; - private ability: Ability; + private context: common.UIAbilityContext; private cameraCaptureCallback: CameraCaptureCallback; // backgroundHandler: Function; // private backgroundHandlerThread: Function; @@ -127,7 +122,7 @@ export class Camera implements CameraCaptureStateListener { private videoId: string | undefined = undefined; constructor( - ability: UIAbility, + context: common.UIAbilityContext, flutterTexture: SurfaceTextureEntry, cameraFeatureFactory: CameraFeatureFactory, dartMessenger: DartMessenger, @@ -135,23 +130,22 @@ export class Camera implements CameraCaptureStateListener { resolutionPreset: ResolutionPreset, enableAudio: boolean ) { - if (ability == null) { + if (context == null) { throw new Error('No Ability available!'); } - this.ability = ability; + this.context = context; this.enableAudio = enableAudio; this.flutterTexture = flutterTexture; this.dartMessenger = dartMessenger; - this.applicationContext = ability.context; this.cameraProperties = cameraProperties; this.cameraFeatureFactory = cameraFeatureFactory; this.resolutionPreset = resolutionPreset; this.cameraFeatures = CameraFeatures.init( - cameraFeatureFactory, cameraProperties, ability, dartMessenger, resolutionPreset); + cameraFeatureFactory, cameraProperties, context, dartMessenger, resolutionPreset); - this.cameraManager = CameraUtils.getCameraManager(this.applicationContext); + this.cameraManager = CameraUtils.getCameraManager(this.context); // Create capture callback. this.captureTimeouts = new CaptureTimeoutsWrapper(3000, 3000); this.captureProps = new CameraCaptureProperties(); @@ -909,7 +903,7 @@ export class Camera implements CameraCaptureStateListener { this.cameraProperties = properties; this.cameraFeatures = CameraFeatures.init( - this.cameraFeatureFactory, this.cameraProperties, this.ability, this.dartMessenger, this.resolutionPreset); + this.cameraFeatureFactory, this.cameraProperties, this.context, this.dartMessenger, this.resolutionPreset); this.cameraFeatures.setAutoFocus( this.cameraFeatureFactory.createAutoFocusFeature(this.cameraProperties, true)); diff --git a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/CameraPlugin.ets b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/CameraPlugin.ets index f8db0e395da774480ded10477cd0935eafba0cce..6303474be2ccd93bc0bed2c1000cdcdfea748dc8 100644 --- a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/CameraPlugin.ets +++ b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/CameraPlugin.ets @@ -59,7 +59,7 @@ export default class CameraPlugin implements FlutterPlugin, AbilityAware { onAttachedToAbility(binding: AbilityPluginBinding): void { if (this.flutterPluginBinding != null) { - this.methodCallHandler = new MethodCallHandlerImpl(binding.getAbility(), + this.methodCallHandler = new MethodCallHandlerImpl(binding.getAbilityContext(), this.flutterPluginBinding.getBinaryMessenger(), new CameraPermissions(), this.flutterPluginBinding.getTextureRegistry()); } } diff --git a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/MethodCallHandlerImpl.ets b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/MethodCallHandlerImpl.ets index 0ffb8758cc67a8f4adec79f0b8e88360d4a7f847..193aad0174714b3edbd6d0f69ad5d39ff2d2058b 100644 --- a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/MethodCallHandlerImpl.ets +++ b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/MethodCallHandlerImpl.ets @@ -12,9 +12,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +import { common } from '@kit.AbilityKit'; import camera from '@ohos.multimedia.camera'; -import UIAbility from '@ohos.app.ability.UIAbility'; import { HashMap } from '@kit.ArkTS'; import { BusinessError } from '@kit.BasicServicesKit'; import { BinaryMessenger, EventChannel, MethodCall, TextureRegistry } from '@ohos/flutter_ohos'; @@ -46,8 +45,7 @@ const enum STATUS { } export class MethodCallHandlerImpl implements MethodCallHandler { - private ability: UIAbility; - private context: Context; + private context: common.UIAbilityContext; private messenger: BinaryMessenger; private cameraPermissions: CameraPermissions; private textureRegistry: TextureRegistry; @@ -59,12 +57,11 @@ export class MethodCallHandlerImpl implements MethodCallHandler { private curStatus: STATUS = STATUS.DEFAULT; constructor( - ability: UIAbility, + context: common.UIAbilityContext, messenger: BinaryMessenger, cameraPermissions: CameraPermissions, textureRegistry: TextureRegistry) { - this.ability = ability; - this.context = ability.context; + this.context = context; this.messenger = messenger this.cameraPermissions = cameraPermissions; this.textureRegistry = textureRegistry; @@ -415,7 +412,7 @@ export class MethodCallHandlerImpl implements MethodCallHandler { this.camera = new Camera( - this.ability, + this.context, this.flutterTexture!, new CameraFeatureFactoryImpl(), dartMessenger, diff --git a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeature.ets b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeature.ets index d62dba27ae587a170ce0d8988bde934e312e336a..612111a6a7c0eb268d06db6f2605680f194d317a 100644 --- a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeature.ets +++ b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeature.ets @@ -13,8 +13,8 @@ * limitations under the License. */ -import { CameraProperties } from '../CameraProperties' import camera from '@ohos.multimedia.camera'; +import { CameraProperties } from '../CameraProperties' export abstract class CameraFeature { protected cameraProperties: CameraProperties; diff --git a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatureFactory.ets b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatureFactory.ets index 418a8865a7c4dcbdddbce0cb572b13e9fda1d7fb..5f2bd5a13071b8cb15ed084333326ff1d0d1999f 100644 --- a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatureFactory.ets +++ b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatureFactory.ets @@ -12,8 +12,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - -import Ability from '@ohos.app.ability.Ability'; +import { common } from '@kit.AbilityKit'; import { CameraProperties } from '../CameraProperties'; import { AutoFocusFeature } from './autofocus/AutoFocusFeature'; import { ExposureLockFeature } from './exposurelock/ExposureLockFeature'; @@ -28,7 +27,6 @@ import { DartMessenger } from '../DartMessenger'; import { ZoomLevelFeature } from './zoomlevel/ZoomLevelFeature'; import { ExposurePointFeature } from './exposurepoint/ExposurePointFeature'; import { NoiseReductionFeature } from './noisereduction/NoiseReductionFeature'; -import camera from '@ohos.multimedia.camera'; export interface CameraFeatureFactory { @@ -120,7 +118,7 @@ export interface CameraFeatureFactory { createSensorOrientationFeature( cameraProperties: CameraProperties, - ability: Ability, + context: common.UIAbilityContext, dartMessenger: DartMessenger): SensorOrientationFeature; /** diff --git a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatureFactoryImpl.ets b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatureFactoryImpl.ets index fc341733c5eb3539b74740c3072c7eb58073bb79..54ec1434f44012599c9eab1b1474bcd4323cc4a1 100644 --- a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatureFactoryImpl.ets +++ b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatureFactoryImpl.ets @@ -12,8 +12,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - -import Ability from '@ohos.app.ability.Ability'; +import { common } from '@kit.AbilityKit'; import { CameraProperties } from '../CameraProperties'; import { AutoFocusFeature } from './autofocus/AutoFocusFeature'; import { CameraFeatureFactory } from './CameraFeatureFactory'; @@ -29,7 +28,6 @@ import { DartMessenger } from '../DartMessenger'; import { ZoomLevelFeature } from './zoomlevel/ZoomLevelFeature'; import { ExposurePointFeature } from './exposurepoint/ExposurePointFeature'; import { NoiseReductionFeature } from './noisereduction/NoiseReductionFeature'; -import camera from '@ohos.multimedia.camera'; export class CameraFeatureFactoryImpl implements CameraFeatureFactory { createAutoFocusFeature( @@ -69,9 +67,9 @@ export class CameraFeatureFactoryImpl implements CameraFeatureFactory { public createSensorOrientationFeature( cameraProperties: CameraProperties, - ability: Ability, + context: common.UIAbilityContext, dartMessenger: DartMessenger): SensorOrientationFeature { - return new SensorOrientationFeature(cameraProperties, ability, dartMessenger); + return new SensorOrientationFeature(cameraProperties, context, dartMessenger); } public createZoomLevelFeature(cameraProperties: CameraProperties): ZoomLevelFeature { diff --git a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatures.ets b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatures.ets index 3db2075c3dced4c9390e2cfb7b73a70dd47ce1c5..640097f43dc4875519c2858caeba66ce444035bc 100644 --- a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatures.ets +++ b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/CameraFeatures.ets @@ -12,14 +12,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +import { HashMap } from '@kit.ArkTS'; +import { common } from '@kit.AbilityKit'; import { CameraProperties } from '../CameraProperties'; import { CameraFeatureFactory } from './CameraFeatureFactory'; -import Ability from '@ohos.app.ability.Ability'; import { DartMessenger } from '../DartMessenger'; import { ResolutionPreset } from './resolution/ResolutionPreset'; -import { HashMap } from '@kit.ArkTS'; -import { CameraFeature } from './CameraFeature'; import { ResolutionFeature } from './resolution/ResolutionFeature'; import { AutoFocusFeature } from './autofocus/AutoFocusFeature'; import { SensorOrientationFeature } from './sensororientation/SensorOrientationFeature'; @@ -32,7 +30,6 @@ import { ExposurePointFeature } from './exposurepoint/ExposurePointFeature'; import { ExposureOffsetFeature } from './exposureoffset/ExposureOffsetFeature'; import { ExposureLockFeature } from './exposurelock/ExposureLockFeature'; - const AUTO_FOCUS: string = "AUTO_FOCUS"; const EXPOSURE_LOCK: string = "EXPOSURE_LOCK"; const EXPOSURE_OFFSET: string = "EXPOSURE_OFFSET"; @@ -50,7 +47,7 @@ export class CameraFeatures { static init( cameraFeatureFactory: CameraFeatureFactory, cameraProperties: CameraProperties, - ability: Ability, + context: common.UIAbilityContext, dartMessenger: DartMessenger, resolutionPreset: ResolutionPreset ): CameraFeatures { @@ -63,7 +60,7 @@ export class CameraFeatures { cameraFeatureFactory.createExposureOffsetFeature(cameraProperties)); let sensorOrientationFeature: SensorOrientationFeature = cameraFeatureFactory.createSensorOrientationFeature( - cameraProperties, ability, dartMessenger); + cameraProperties, context, dartMessenger); cameraFeatures.setSensorOrientation(sensorOrientationFeature); cameraFeatures.setExposurePoint( cameraFeatureFactory.createExposurePointFeature( diff --git a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/sensororientation/DeviceOrientationManager.ets b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/sensororientation/DeviceOrientationManager.ets index b4cf2938ee43194c7e8d8840af70987870ba4120..3a6c0e45cf0a056388c17bcb314befa1699ff8f7 100644 --- a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/sensororientation/DeviceOrientationManager.ets +++ b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/sensororientation/DeviceOrientationManager.ets @@ -12,13 +12,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - -import Ability from '@ohos.app.ability.Ability'; -import { DartMessenger } from '../../DartMessenger'; +import { common } from '@kit.AbilityKit'; import display from '@ohos.display'; - -import { BusinessError, Callback } from '@ohos.base'; - +import { Callback } from '@ohos.base'; +import { DartMessenger } from '../../DartMessenger'; import { DeviceOrientation } from '@ohos/flutter_ohos/src/main/ets/embedding/engine/systemchannels/PlatformChannel'; const handleOrientationChange = ( @@ -30,11 +27,8 @@ const handleOrientationChange = ( } } - export class DeviceOrientationManager { - // private static readonly orientationIntentFilter: IntentFilter = - // new IntentFilter(Intent.ACTION_CONFIGURATION_CHANGED); - private readonly ability: Ability; + private readonly context: common.UIAbilityContext; private readonly messenger: DartMessenger; private readonly isFrontFacing: boolean; private readonly sensorOrientation: number; @@ -43,20 +37,20 @@ export class DeviceOrientationManager { public static create( - ability: Ability, + context: common.UIAbilityContext, messenger: DartMessenger, isFrontFacing: boolean, sensorOrientation: number ): DeviceOrientationManager { - return new DeviceOrientationManager(ability, messenger, isFrontFacing, sensorOrientation); + return new DeviceOrientationManager(context, messenger, isFrontFacing, sensorOrientation); } constructor( - ability: Ability, + context: common.UIAbilityContext, messenger: DartMessenger, isFrontFacing: boolean, sensorOrientation: number) { - this.ability = ability; + this.context = context; this.messenger = messenger; this.isFrontFacing = isFrontFacing; this.sensorOrientation = sensorOrientation; diff --git a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/sensororientation/SensorOrientationFeature.ets b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/sensororientation/SensorOrientationFeature.ets index e2990a7680fa5cc19ca88c2a84a26222fd66917b..87ba0eb8429a1ec8df0b895db8af25161ef0649b 100644 --- a/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/sensororientation/SensorOrientationFeature.ets +++ b/packages/camera/camera_ohos/ohos/src/main/ets/io/flutter/plugins/camera/features/sensororientation/SensorOrientationFeature.ets @@ -12,13 +12,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - +import { common } from '@kit.AbilityKit'; import camera from '@ohos.multimedia.camera'; -import Ability from '@ohos.app.ability.Ability'; import { CameraFeature } from '../CameraFeature'; import { DartMessenger } from '../../DartMessenger'; import { CameraProperties } from '../../CameraProperties'; -import { DeviceOrientationManager } from './DeviceOrientationManager'; +import { DeviceOrientationManager } from './DeviceOrientationManager'; import { DeviceOrientation } from '@ohos/flutter_ohos/src/main/ets/embedding/engine/systemchannels/PlatformChannel'; export class SensorOrientationFeature extends CameraFeature { @@ -28,14 +27,14 @@ export class SensorOrientationFeature extends CameraFeature { constructor( cameraProperties: CameraProperties, - ability: Ability, + context: common.UIAbilityContext, dartMessenger: DartMessenger) { super(cameraProperties); this.setValue(cameraProperties.getSensorOrientation()); let isFrontFacing: boolean = cameraProperties.getLensFacing() == camera.CameraPosition.CAMERA_POSITION_FRONT; this.deviceOrientationListener = - DeviceOrientationManager.create(ability, dartMessenger, isFrontFacing, this.currentSetting); + DeviceOrientationManager.create(context, dartMessenger, isFrontFacing, this.currentSetting); this.deviceOrientationListener.start(); } diff --git a/packages/file_selector/file_selector_ohos/example/lib/open_text_page.dart b/packages/file_selector/file_selector_ohos/example/lib/open_text_page.dart index d4e4c4d2f26596893a2e5df3977c85d2182ffe49..b0b40cab4e38de637c14533477becf3349fc08db 100644 --- a/packages/file_selector/file_selector_ohos/example/lib/open_text_page.dart +++ b/packages/file_selector/file_selector_ohos/example/lib/open_text_page.dart @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +import 'dart:convert'; import 'package:file_selector_platform_interface/file_selector_platform_interface.dart'; import 'package:flutter/material.dart'; diff --git a/packages/file_selector/file_selector_ohos/ohos/src/main/ets/file_selector/FileSelectorApiImpl.ets b/packages/file_selector/file_selector_ohos/ohos/src/main/ets/file_selector/FileSelectorApiImpl.ets index ea2f17bbcbed841916b0e0449ad2990d42881919..5e697276e3d29e80063a120e23931d4785e2e5e4 100644 --- a/packages/file_selector/file_selector_ohos/ohos/src/main/ets/file_selector/FileSelectorApiImpl.ets +++ b/packages/file_selector/file_selector_ohos/ohos/src/main/ets/file_selector/FileSelectorApiImpl.ets @@ -146,7 +146,7 @@ export class FileSelectorApiImpl { } getContext(): common.UIAbilityContext { - return this.binding.getAbility().context; + return this.binding.getAbilityContext(); } openFiles(initialDirectory: string, allowedTypes: FileTypes, result: Result>): void { diff --git a/packages/image_picker/image_picker_ohos/ohos/src/main/ets/image_picker/ImagePickerDelegate.ets b/packages/image_picker/image_picker_ohos/ohos/src/main/ets/image_picker/ImagePickerDelegate.ets index cb1d31ed123f16a6339038d2bbc094fead72f7b5..fe563450e02935031ff25403e43f77a446919ff9 100644 --- a/packages/image_picker/image_picker_ohos/ohos/src/main/ets/image_picker/ImagePickerDelegate.ets +++ b/packages/image_picker/image_picker_ohos/ohos/src/main/ets/image_picker/ImagePickerDelegate.ets @@ -34,7 +34,6 @@ import { } from './Messages' import ImageResizer from './ImageResizer'; import HashMap from '@ohos.util.HashMap'; -import UIAbility from '@ohos.app.ability.UIAbility'; import abilityAccessCtrl from '@ohos.abilityAccessCtrl'; import { BusinessError } from '@ohos.base'; @@ -54,7 +53,7 @@ export default class ImagePickerDelegate { private pendingCallState: PendingCallState | null = null; private context: common.UIAbilityContext | null = null; - constructor(ability: UIAbility, imageResizer: ImageResizer, cache: ImagePickerCache, context?: common.UIAbilityContext, + constructor(context: common.UIAbilityContext, imageResizer: ImageResizer, cache: ImagePickerCache, pendingImageOptions?: ImageSelectionOptions, pendingVideoOptions?: VideoSelectionOptions, result?: Result>, fileUtils?: FileUtils) { this.imageResizer = imageResizer; @@ -62,7 +61,7 @@ export default class ImagePickerDelegate { this.pendingCallState = new PendingCallState(pendingImageOptions as ESObject, pendingVideoOptions, result); } this.cache = cache; - this.context = ability.context; + this.context = context; } /* 当前默认调用仅支持后置摄像头 */ diff --git a/packages/image_picker/image_picker_ohos/ohos/src/main/ets/image_picker/ImagePickerPlugin.ets b/packages/image_picker/image_picker_ohos/ohos/src/main/ets/image_picker/ImagePickerPlugin.ets index f51a6716f604c8ffcc8a54a8d820a87506449cf7..f1ad2ef88b1e1d5a892ab1bb4a1db09221fcba15 100644 --- a/packages/image_picker/image_picker_ohos/ohos/src/main/ets/image_picker/ImagePickerPlugin.ets +++ b/packages/image_picker/image_picker_ohos/ohos/src/main/ets/image_picker/ImagePickerPlugin.ets @@ -12,20 +12,16 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import AbilityLifecycleCallback from '@ohos.app.ability.AbilityLifecycleCallback'; - -import AbilityAware from '@ohos/flutter_ohos/src/main/ets/embedding/engine/plugins/ability/AbilityAware'; - -import { - AbilityPluginBinding -} from '@ohos/flutter_ohos/src/main/ets/embedding/engine/plugins/ability/AbilityPluginBinding'; +import { AbilityLifecycleCallback, common } from '@kit.AbilityKit'; import { + AbilityAware, + AbilityPluginBinding, + BinaryMessenger, FlutterPlugin, - FlutterPluginBinding -} from '@ohos/flutter_ohos/src/main/ets/embedding/engine/plugins/FlutterPlugin'; -import common from '@ohos.app.ability.common'; -import Ability from '@ohos.app.ability.Ability'; -import { BinaryMessenger } from '@ohos/flutter_ohos/src/main/ets/plugin/common/BinaryMessenger'; + FlutterPluginBinding, + Log +} from '@ohos/flutter_ohos'; + import ImagePickerDelegate, { CameraDevice } from './ImagePickerDelegate'; import { GeneralOptions, @@ -43,9 +39,7 @@ import { import ImagePickerCache from './ImagePickerCache'; import ExifDataCopier from './ExifDataCopier'; import ImageResizer from './ImageResizer'; -import UIAbility from '@ohos.app.ability.UIAbility'; import ArrayList from '@ohos.util.ArrayList'; -import Log from '@ohos/flutter_ohos/src/main/ets/util/Log'; const TAG: string = "ImagePickerPlugin"; @@ -72,8 +66,7 @@ export default class ImagePickerPlugin implements FlutterPlugin, AbilityAware { if (!this.pluginBinding) { return } - this.setup(this.pluginBinding.getBinaryMessenger(), this.pluginBinding.getApplicationContext(), - binding.getAbility(), binding); + this.setup(this.pluginBinding.getBinaryMessenger(), binding.getAbilityContext(), binding); } onDetachedFromAbility(): void { @@ -83,13 +76,13 @@ export default class ImagePickerPlugin implements FlutterPlugin, AbilityAware { } } - setup(messenger: BinaryMessenger, context: common.Context, ability: UIAbility, binding: AbilityPluginBinding): void { - this.state = new AbilityState(ability, null, messenger, this as ESObject, binding, context); + setup(messenger: BinaryMessenger, context: common.UIAbilityContext, binding: AbilityPluginBinding): void { + this.state = new AbilityState(context, null, messenger, this as ESObject, binding); } - constructor(delegate?: ImagePickerDelegate, ability?: UIAbility) { - if (delegate != null && ability != null) { - this.state = new AbilityState(ability, delegate); + constructor(delegate?: ImagePickerDelegate, context?: common.UIAbilityContext) { + if (delegate != null && context != null) { + this.state = new AbilityState(context, delegate); } } @@ -163,15 +156,15 @@ export default class ImagePickerPlugin implements FlutterPlugin, AbilityAware { return this.state; } - static constructorDelegate(setupAbility: UIAbility): ImagePickerDelegate { - let cache: ImagePickerCache = new ImagePickerCache(setupAbility.context); + static constructorDelegate(context: common.UIAbilityContext): ImagePickerDelegate { + let cache: ImagePickerCache = new ImagePickerCache(context); let exifDataCopier: ExifDataCopier = new ExifDataCopier(); - let imageResizer: ImageResizer = new ImageResizer(setupAbility.context, exifDataCopier); - return new ImagePickerDelegate(setupAbility, imageResizer, cache); + let imageResizer: ImageResizer = new ImageResizer(context, exifDataCopier); + return new ImagePickerDelegate(context, imageResizer, cache); } getImagePickerDelegate(): ImagePickerDelegate | null { - if (this.state == null || this.state.getAbility() == null) { + if (this.state == null || this.state.getAbilityContext() == null) { return null; } return this.state.getDelegate(); @@ -197,27 +190,17 @@ export default class ImagePickerPlugin implements FlutterPlugin, AbilityAware { } class AbilityState { - private ability: UIAbility | null; - private context: common.Context | null = null; + private context: common.UIAbilityContext | null = null; private abilityBinding: AbilityPluginBinding | null = null; private messenger: BinaryMessenger | null = null; private delegate: ImagePickerDelegate | null = null; private abilityLifecycleCallback: AbilityLifecycleCallback; - constructor(ability: UIAbility, delegate?: ImagePickerDelegate | null, messenger?: BinaryMessenger, handler?: ImagePickerApi, abilityBinding?: AbilityPluginBinding, context?: common.Context) { - this.ability = ability; - if (context) { - this.context = context; - } - if (abilityBinding) { - this.abilityBinding = abilityBinding; - } - if (messenger) { - this.messenger = messenger; - } - if (delegate) { - this.delegate = delegate; - } + constructor(context: common.UIAbilityContext, delegate?: ImagePickerDelegate | null, messenger?: BinaryMessenger, handler?: ImagePickerApi, abilityBinding?: AbilityPluginBinding) { + this.context = context; + this.abilityBinding = abilityBinding ?? null; + this.messenger = messenger ?? null; + this.delegate = delegate ?? null; this.abilityLifecycleCallback = { onAbilityCreate(ability) { @@ -249,7 +232,7 @@ class AbilityState { } }; - this.delegate = ImagePickerPlugin.constructorDelegate(this.ability); + this.delegate = ImagePickerPlugin.constructorDelegate(this.context); ImagePickerApi.setup(messenger as BinaryMessenger, handler); } @@ -260,12 +243,12 @@ class AbilityState { ImagePickerApi.setup(null, null); - this.ability = null; + this.context = null; this.delegate = null; } - getAbility(): Ability | null { - return this.ability; + getAbilityContext(): common.UIAbilityContext | null { + return this.context; } getDelegate(): ImagePickerDelegate | null { diff --git a/packages/local_auth/local_auth_ohos/ohos/src/main/ets/io/flutter/plugins/localauth/AuthenticationHelper.ets b/packages/local_auth/local_auth_ohos/ohos/src/main/ets/io/flutter/plugins/localauth/AuthenticationHelper.ets index a91e55a30f338464883001ee724a287429abf642..e5acf419b3f18e865802d579fa11d85fa4d75f87 100644 --- a/packages/local_auth/local_auth_ohos/ohos/src/main/ets/io/flutter/plugins/localauth/AuthenticationHelper.ets +++ b/packages/local_auth/local_auth_ohos/ohos/src/main/ets/io/flutter/plugins/localauth/AuthenticationHelper.ets @@ -72,7 +72,7 @@ export class AuthenticationHelper { } getContext(): common.UIAbilityContext | undefined { - return this.binding?.getAbility().context; + return this.binding?.getAbilityContext(); } /** Start the biometric listener. */ diff --git a/packages/local_auth/local_auth_ohos/ohos/src/main/ets/io/flutter/plugins/localauth/LocalAuthPlugin.ets b/packages/local_auth/local_auth_ohos/ohos/src/main/ets/io/flutter/plugins/localauth/LocalAuthPlugin.ets index a6cdeceaa6afc4fcb9ff1b36d3fc5895226a5110..8517c007ffa059bd528bcd716f761c866e083269 100644 --- a/packages/local_auth/local_auth_ohos/ohos/src/main/ets/io/flutter/plugins/localauth/LocalAuthPlugin.ets +++ b/packages/local_auth/local_auth_ohos/ohos/src/main/ets/io/flutter/plugins/localauth/LocalAuthPlugin.ets @@ -190,7 +190,7 @@ export default class LocalAuthPlugin implements FlutterPlugin, AbilityAware, Met return; } - if (this.abilityPluginBinding?.getAbility() == null) { + if (this.abilityPluginBinding?.getAbilityContext() == null) { result.error("no_ability", "local_auth plugin requires a foreground ability", null); return; } diff --git a/packages/url_launcher/url_launcher_ohos/ohos/src/main/ets/components/plugin/UrlLauncherPlugin.ets b/packages/url_launcher/url_launcher_ohos/ohos/src/main/ets/components/plugin/UrlLauncherPlugin.ets index f4163876e20e74cb6d16a173992393702fcecfaf..8851a86d6be4ad523ae70ffe939f56fabfa49d2a 100644 --- a/packages/url_launcher/url_launcher_ohos/ohos/src/main/ets/components/plugin/UrlLauncherPlugin.ets +++ b/packages/url_launcher/url_launcher_ohos/ohos/src/main/ets/components/plugin/UrlLauncherPlugin.ets @@ -36,7 +36,7 @@ export default class UrlLauncherPlugin implements FlutterPlugin, AbilityAware { onAttachedToAbility(binding: AbilityPluginBinding): void { console.debug(TAG, 'onAttachedToAbility ') - this.urlLauncherApi = new UrlLauncher(binding.getAbility().context); + this.urlLauncherApi = new UrlLauncher(binding.getAbilityContext()); this.urlLauncherApi.setup( this.pluginBinding?.getBinaryMessenger() ?? null, this.urlLauncherApi); } diff --git a/packages/video_player/video_player_ohos/ohos/src/main/ets/components/videoplayer/VideoPlayerApiImpl.ets b/packages/video_player/video_player_ohos/ohos/src/main/ets/components/videoplayer/VideoPlayerApiImpl.ets index 69437d5cec69c8fa460561f25e5000049a82af12..d5d9c5112859709e4f81558658ce6a20ac9546bc 100644 --- a/packages/video_player/video_player_ohos/ohos/src/main/ets/components/videoplayer/VideoPlayerApiImpl.ets +++ b/packages/video_player/video_player_ohos/ohos/src/main/ets/components/videoplayer/VideoPlayerApiImpl.ets @@ -63,7 +63,7 @@ export class VideoPlayerApiImpl { if (this.binding == null) { throw Error("Illegal binding or context state."); } - return this.binding.getAbility().context; + return this.binding.getAbilityContext(); } async create(arg: CreateMessage): Promise {