| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- import { AbilityConstant, ConfigurationConstant, UIAbility, Want } from '@kit.AbilityKit';
- import { hilog } from '@kit.PerformanceAnalysisKit';
- import { window } from '@kit.ArkUI';
- import { WindowHelper } from '../utils/WindowHelper';
- import { IBestInit } from '@ibestservices/ibest-ui';
- import { AppStorageKeyCollect } from '../constants';
- import { WechatUtil } from '../utils/wechat/WechatUtil';
- import { YTLog } from '../utils/YTLog';
- import { wechatEventHandler } from '../utils/wechat/WXApiEventHandlerImpl';
- const TAG: string = '[EntryAbility]';
- const DOMAIN = 0x0000;
- export default class EntryAbility extends UIAbility {
- onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
- try {
- this.context.getApplicationContext().setColorMode(ConfigurationConstant.ColorMode.COLOR_MODE_NOT_SET);
- WechatUtil.init()
- } catch (err) {
- hilog.error(DOMAIN, 'testTag', 'Failed to set colorMode. Cause: %{public}s', JSON.stringify(err));
- }
- hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onCreate');
- }
- onDestroy(): void {
- hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onDestroy');
- }
- onWindowStageCreate(windowStage: window.WindowStage): void {
- // Main window is created, set main page for this ability
- hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onWindowStageCreate');
- windowStage.loadContent('/pages/EntryPage'.slice(1), (err) => {
- if (err.code) {
- hilog.error(DOMAIN, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err));
- return;
- }
- WindowHelper.init(windowStage)
- IBestInit(windowStage, this.context)
- PersistentStorage.persistProp(AppStorageKeyCollect.FIRST_ENTER_APP, false)
- let isFirst = AppStorage.get<boolean>(AppStorageKeyCollect.FIRST_ENTER_APP)
- if (isFirst) {
- windowStage.loadContent('/pages/Index'.slice(1))
- }
- hilog.info(DOMAIN, 'testTag', 'Succeeded in loading the content.');
- });
- }
- onWindowStageDestroy(): void {
- // Main window is destroyed, release UI related resources
- hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onWindowStageDestroy');
- }
- onForeground(): void {
- // Ability has brought to foreground
- hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onForeground');
- }
- onBackground(): void {
- // Ability has back to background
- hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onBackground');
- }
- onNewWant(want: Want, launchParam: AbilityConstant.LaunchParam): void {
- hilog.info(0x0000, 'testTag', '', 'Ability onNewWant');
- console.log('PushManager noNewWant===', JSON.stringify(want.parameters?.data));
- YTLog.info(TAG, 'EntryAbility onNewWant');
- YTLog.info(TAG, `onNewWant parameters: ${JSON.stringify(want.parameters)}`);
- YTLog.info(TAG, `onNewWant full Want: ${JSON.stringify(want)}`);
- this.handleWeChatCallIfNeed(want);
- }
- private handleWeChatCallIfNeed(want: Want) {
- YTLog.info(TAG, `Handling WeChat callback: ${JSON.stringify(want)}`);
- const handled = WechatUtil.getWechatApi().handleWant(want, wechatEventHandler);
- YTLog.info(TAG, `WXApi.handleWant result: ${handled}, eventHandler: ${wechatEventHandler ? 'exists' : 'null'}`);
- }
- }
|