@@ -371,4 +371,73 @@ export default {
371371 "open-log-file" ( ) {
372372 openFile ( Url . join ( DATA_STORAGE , constants . LOG_FILE_NAME ) ) ;
373373 } ,
374+ "copy-device-info" ( ) {
375+ let webviewInfo = { } ;
376+ let appInfo = { } ;
377+ const getWebviewInfo = new Promise ( ( resolve , reject ) => {
378+ system . getWebviewInfo (
379+ ( res ) => {
380+ webviewInfo = res ;
381+ resolve ( ) ;
382+ } ,
383+ ( error ) => {
384+ console . error ( "Error getting WebView info:" , error ) ;
385+ reject ( error ) ;
386+ } ,
387+ ) ;
388+ } ) ;
389+ const getAppInfo = new Promise ( ( resolve , reject ) => {
390+ system . getAppInfo (
391+ ( res ) => {
392+ appInfo = res ;
393+ resolve ( ) ;
394+ } ,
395+ ( error ) => {
396+ console . error ( "Error getting app info:" , error ) ;
397+ reject ( error ) ;
398+ } ,
399+ ) ;
400+ } ) ;
401+
402+ Promise . all ( [ getWebviewInfo , getAppInfo ] )
403+ . then ( ( ) => {
404+ let info = `Device Information:
405+ WebView Info:
406+ Package Name: ${ webviewInfo ?. packageName || "N/A" }
407+ Version: ${ webviewInfo ?. versionName || "N/A" }
408+
409+ App Info:
410+ Name: ${ appInfo ?. label || "N/A" }
411+ Package Name: ${ appInfo ?. packageName || "N/A" }
412+ Version: ${ appInfo ?. versionName || "N/A" }
413+ Version Code: ${ appInfo ?. versionCode || "N/A" }
414+
415+ Device Info:
416+ Android Version: ${ device ?. version || "N/A" }
417+ Manufacturer: ${ device ?. manufacturer || "N/A" }
418+ Model: ${ device ?. model || "N/A" }
419+ Platform: ${ device ?. platform || "N/A" }
420+ Cordova Version: ${ device ?. cordova || "N/A" }
421+
422+ Screen Info:
423+ Width: ${ screen ?. width || "N/A" }
424+ Height: ${ screen ?. height || "N/A" }
425+ Color Depth: ${ screen ?. colorDepth || "N/A" }
426+
427+ Additional Info:
428+ Language: ${ navigator ?. language || "N/A" }
429+ User Agent: ${ navigator ?. userAgent || "N/A" }
430+ ` ;
431+
432+ // Copy the info to clipboard
433+ if ( cordova . plugins . clipboard ) {
434+ cordova . plugins . clipboard . copy ( info ) ;
435+ toast ( strings [ "copied to clipboard" ] ) ;
436+ }
437+ } )
438+ . catch ( ( error ) => {
439+ console . error ( "Error getting device info:" , error ) ;
440+ toast ( "Failed to get device info" ) ;
441+ } ) ;
442+ } ,
374443} ;
0 commit comments