decord/source/modules/jank_stats/native/JankSessionManager.android.tsx
github-actions 777dc50a28 chore: update source for alpha 346.3
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4790.js (118.4 MB)
2026-09-10 19:12:31 +00:00

119 lines
5.1 KiB
TypeScript

// Module ID: 17501
// Function ID: 17502
// Name: JankSessionManager
// Dependencies: [7512, 1074, 3, 7170, 17502, 1340, 7527, 2]
// Module 17501 (JankSessionManager)
import LoggerDefault from "Logger" /* 3 */;
import clientLaunchId from "clientLaunchId" /* 1340 */;
import NativeJankSessionModuleDefault from "NativeJankSessionModule" /* 17502 */;
import AnalyticsTrackingStore from "stores/AnalyticsTrackingStore" /* 7512 */;
import AutomaticLifecycleManager from "AutomaticLifecycleManager" /* 7170 */;
require = fn;
const Constants = fn(1074);
({ AnalyticEvents: closure_4, AppStates: hasOwnProperty } = Constants);
let closure_6 = new LoggerDefault("JankSessionManager");
class JankSessionManager extends tmp4 {
constructor() {
applyArgumentsResult = HermesBuiltin.applyArguments(new.target, new.target);
closure_0 = applyArgumentsResult;
applyArgumentsResult._isDelivering = false;
applyArgumentsResult._hasConnected = false;
applyArgumentsResult.actions = {
APP_STATE_UPDATE(arg0) {
applyArgumentsResult.handleAppStateUpdate(arg0);
},
CONNECTION_OPEN_SUPPLEMENTAL() {
applyArgumentsResult._hasConnected = true;
const result = applyArgumentsResult.deliverPendingSessions();
}
};
return applyArgumentsResult;
}
}
const prototype = JankSessionManager.prototype;
prototype["_initialize"] = function _initialize() {
const obj = NativeJankSessionModuleDefault;
if (obj != null) {
obj.hydrateLaunchId(clientLaunchId.clientLaunchId);
}
};
prototype["handleAppStateUpdate"] = function handleAppStateUpdate(state) {
const self = this;
if (tmp) {
const result = self.deliverPendingSessions();
}
};
prototype["deliverPendingSessions"] = function deliverPendingSessions() {
const self = this;
if (!this._isDelivering) {
let obj = self(17502);
if (null != obj) {
tmp._isDelivering = true;
const pendingReports = obj.getPendingReports();
const nextPromise = pendingReports.then((arr) => {
closure_0 = arr;
if (0 !== arr.length) {
const result = AnalyticsTrackingStore.submitEventsImmediately(arr.map((item) => {
obj = { type: constants.ANDROID_JANK_SESSION, properties: null };
const obj4 = {};
const merged = Object.assign(closure_0(closure_1_2[6]).getDeviceMetadata());
obj4.schema_version = 1;
({ sessionId: obj2.jank_session_id, appVersionCode: obj2.captured_app_version_code, releaseChannel: obj2.captured_release_channel, sessionStartMs: obj2.session_start_ms, totalFrameCount: obj2.total_frame_count, jankFrameCount: obj2.jank_frame_count } = item);
obj.properties = obj4;
return obj;
}));
return result.then(() => {
obj.ackReports(closure_0.map((sessionId) => sessionId.sessionId));
});
}
});
pendingReports.then((arr) => {
closure_0 = arr;
if (0 !== arr.length) {
const result = AnalyticsTrackingStore.submitEventsImmediately(arr.map((item) => {
obj = { type: constants.ANDROID_JANK_SESSION, properties: null };
const obj4 = {};
const merged = Object.assign(closure_0(closure_1_2[6]).getDeviceMetadata());
obj4.schema_version = 1;
({ sessionId: obj2.jank_session_id, appVersionCode: obj2.captured_app_version_code, releaseChannel: obj2.captured_release_channel, sessionStartMs: obj2.session_start_ms, totalFrameCount: obj2.total_frame_count, jankFrameCount: obj2.jank_frame_count } = item);
obj.properties = obj4;
return obj;
}));
return result.then(() => {
obj.ackReports(closure_0.map((sessionId) => sessionId.sessionId));
});
}
}).catch((error) => {
logger.error("Failed to deliver pending jank sessions", error);
}).finally(() => {
self._isDelivering = false;
});
const catchPromise = pendingReports.then((arr) => {
closure_0 = arr;
if (0 !== arr.length) {
const result = AnalyticsTrackingStore.submitEventsImmediately(arr.map((item) => {
obj = { type: constants.ANDROID_JANK_SESSION, properties: null };
const obj4 = {};
const merged = Object.assign(closure_0(closure_1_2[6]).getDeviceMetadata());
obj4.schema_version = 1;
({ sessionId: obj2.jank_session_id, appVersionCode: obj2.captured_app_version_code, releaseChannel: obj2.captured_release_channel, sessionStartMs: obj2.session_start_ms, totalFrameCount: obj2.total_frame_count, jankFrameCount: obj2.jank_frame_count } = item);
obj.properties = obj4;
return obj;
}));
return result.then(() => {
obj.ackReports(closure_0.map((sessionId) => sessionId.sessionId));
});
}
}).catch((error) => {
logger.error("Failed to deliver pending jank sessions", error);
});
}
}
};
const jankSessionManager = new JankSessionManager();
const size = fn(2);
let result = size.fileFinishedImporting("modules/jank_stats/native/JankSessionManager.android.tsx");
export default jankSessionManager;