@@ -136,14 +136,15 @@ export class PackageCreator {
136136return await bubbleWrapper . generateAppPackage ( ) ;
137137} catch ( error ) {
138138const errorMessage = ( error as Error ) ?. message || `${ error } ` ;
139- this . dispatchProgressEvent ( "Unable to generate app package due to error. Checking if error is 403 Forbidden. " + errorMessage , "warn" ) ;
139+ this . dispatchProgressEvent ( "Unable to generate app package due to error. Checking if error is 403 Forbidden or timeout . " + errorMessage , "warn" ) ;
140140const is403Error =
141141( error as any ) ?. status === 403 ||
142142( error as any ) ?. response ?. status === 403 ||
143143errorMessage . includes ( '403' ) ||
144144errorMessage . includes ( 'ECONNREFUSED' ) ||
145145errorMessage . includes ( 'ENOTFOUND' ) ;
146- if ( is403Error ) {
146+ const isTimeout = errorMessage . includes ( 'ETIMEDOUT' ) || errorMessage . includes ( 'ESOCKETTIMEDOUT' ) ;
147+ if ( is403Error || isTimeout ) {
147148const optionsWithSafeUrl = this . getAndroidOptionsWithProxiedUrls ( options ) ;
148149// See if it's Cloudflare. Check the Server response header for "cloudflare".
149150const isCloudflare = await this . TryCheckCloudflare ( options . iconUrl ) ;