@@ -45,20 +45,7 @@ export class PushyTurboModule extends TurboModule {
4545 '' ,
4646 ) as string ;
4747 const currentVersionInfo = this . context . getKv ( `hash_${ currentVersion } ` ) ;
48- let buildTime = preferencesManager . getSync ( 'buildTime' , '' ) as string ;
49- if ( ! buildTime ) {
50- try {
51- const resourceManager = this . mUiCtx . resourceManager ;
52- const content = resourceManager . getRawFileContentSync ( 'meta.json' ) ;
53- const metaData = JSON . parse (
54- new util . TextDecoder ( ) . decodeToString ( content ) ,
55- ) ;
56- if ( metaData . pushy_build_time ) {
57- buildTime = String ( metaData . pushy_build_time ) ;
58- preferencesManager . putSync ( 'buildTime' , buildTime ) ;
59- }
60- } catch { }
61- }
48+
6249 const isUsingBundleUrl = this . context . getIsUsingBundleUrl ( ) ;
6350 let bundleFlags =
6451 bundleManager . BundleFlag . GET_BUNDLE_INFO_WITH_REQUESTED_PERMISSION ;
@@ -69,6 +56,35 @@ export class PushyTurboModule extends TurboModule {
6956 } catch ( error ) {
7057 console . error ( 'Failed to get bundle info:' , error ) ;
7158 }
59+ const storedPackageVersion = preferencesManager . getSync (
60+ 'packageVersion' ,
61+ '' ,
62+ ) as string ;
63+ const storedBuildTime = preferencesManager . getSync (
64+ 'buildTime' ,
65+ '' ,
66+ ) as string ;
67+ let buildTime = '' ;
68+ try {
69+ const resourceManager = this . mUiCtx . resourceManager ;
70+ const content = resourceManager . getRawFileContentSync ( 'meta.json' ) ;
71+ const metaData = JSON . parse (
72+ new util . TextDecoder ( ) . decodeToString ( content ) ,
73+ ) ;
74+ if ( metaData . pushy_build_time ) {
75+ buildTime = String ( metaData . pushy_build_time ) ;
76+ }
77+ } catch { }
78+
79+ const packageVersionChanged =
80+ ! storedPackageVersion || packageVersion !== storedPackageVersion ;
81+ const buildTimeChanged = ! storedBuildTime || buildTime !== storedBuildTime ;
82+
83+ if ( packageVersionChanged || buildTimeChanged ) {
84+ this . context . cleanUp ( ) ;
85+ preferencesManager . putSync ( 'packageVersion' , packageVersion ) ;
86+ preferencesManager . putSync ( 'buildTime' , buildTime ) ;
87+ }
7288
7389 if ( isFirstTime ) {
7490 preferencesManager . deleteSync ( 'isFirstTime' ) ;
0 commit comments