Closed camelcamro closed 5 months ago
here maybe some hints for others ...
adb shell pm list packages -f # (full) adb shell pm list packages -3 # (list third party package names)
adb shell dumpsys package | grep -i -E 'ionitech'
adb_response: 84661e2 com.ionitech.airscreen/.cast.render.MirrorActivity a2b1bc4 com.ionitech.airscreen/.ui.activity.welcome.StreamAssistantIndexActivity 185e106 com.ionitech.airscreen/androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryNotLowProxy 92dd548 com.ionitech.airscreen/androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryChargingProxy 4ecba2e com.ionitech.airscreen/com.amazon.device.drm.ResponseReceiver eeefdf4 com.ionitech.airscreen/androidx.work.impl.background.systemalarm.ConstraintProxy$StorageNotLowProxy 4a03030 com.ionitech.airscreen/.service.BootBroadcastReceiver 50f0792 com.ionitech.airscreen/androidx.work.impl.background.systemalarm.ConstraintProxy$NetworkStateProxy b8e4b3a com.ionitech.airscreen/.service.admmessenger.AmazonMessageReceiver eeefdf4 com.ionitech.airscreen/androidx.work.impl.background.systemalarm.ConstraintProxy$StorageNotLowProxy 4a03030 com.ionitech.airscreen/.service.BootBroadcastReceiver e101f5c com.ionitech.airscreen/com.amazon.device.iap.ResponseReceiver 185e106 com.ionitech.airscreen/androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryNotLowProxy ff80560 com.ionitech.airscreen/androidx.work.impl.background.systemalarm.RescheduleReceiver ff80560 com.ionitech.airscreen/androidx.work.impl.background.systemalarm.RescheduleReceiver 4a03030 com.ionitech.airscreen/.service.BootBroadcastReceiver ff80560 com.ionitech.airscreen/androidx.work.impl.background.systemalarm.RescheduleReceiver 92dd548 com.ionitech.airscreen/androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryChargingProxy b8e4b3a com.ionitech.airscreen/.service.admmessenger.AmazonMessageReceiver c8178c com.ionitech.airscreen/androidx.work.impl.diagnostics.DiagnosticsReceiver a920ade com.ionitech.airscreen/androidx.work.impl.background.systemalarm.ConstraintProxyUpdateReceiver ca52078 com.ionitech.airscreen/.cast.render.ReceiverService 2aff6ea com.ionitech.airscreen/com.google.android.libraries.cast.tv.warg.service.WargService com.ionitech.airscreen.messenger: b47cc24 com.ionitech.airscreen/com.blankj.utilcode.util.MessengerUtils$ServerService 50e97b6 com.ionitech.airscreen/com.google.android.apps.mediashell.ClientAuthProviderService Permission [com.ionitech.airscreen.permission.CAST_AUTH] (8beeb77): sourcePackage=com.ionitech.airscreen perm=Permission{a12b3e4 com.ionitech.airscreen.permission.CAST_AUTH} Permission [com.ionitech.airscreen.permission.CAST_RENDER] (525c668): sourcePackage=com.ionitech.airscreen perm=Permission{ff95a81 com.ionitech.airscreen.permission.CAST_RENDER} Permission [com.ionitech.airscreen.permission.SANDBOX] (ab904b4): sourcePackage=com.ionitech.airscreen perm=Permission{76e08dd com.ionitech.airscreen.permission.SANDBOX} Permission [com.ionitech.airscreen.permission.RECEIVE_ADM_MESSAGE] (625617): sourcePackage=com.ionitech.airscreen perm=Permission{ce3da04 com.ionitech.airscreen.permission.RECEIVE_ADM_MESSAGE} com.ionitech.airscreen com.ionitech.airscreen/com.google.firebase.provider.FirebaseInitProvider: Provider{6229785 com.ionitech.airscreen/com.google.firebase.provider.FirebaseInitProvider} com.ionitech.airscreen/androidx.startup.InitializationProvider: Provider{3197d8d com.ionitech.airscreen/androidx.startup.InitializationProvider} com.ionitech.airscreen/com.blankj.utilcode.util.UtilsFileProvider: Provider{674adab com.ionitech.airscreen/com.blankj.utilcode.util.UtilsFileProvider} com.ionitech.airscreen/androidx.lifecycle.ProcessLifecycleOwnerInitializer: Provider{4ea9174 com.ionitech.airscreen/androidx.lifecycle.ProcessLifecycleOwnerInitializer} com.ionitech.airscreen/com.google.android.gms.ads.MobileAdsInitProvider: Provider{351be1a com.ionitech.airscreen/com.google.android.gms.ads.MobileAdsInitProvider} com.ionitech.airscreen/androidx.core.content.FileProvider: Provider{3d60d4b com.ionitech.airscreen/androidx.core.content.FileProvider} [com.ionitech.airscreen.mobileadsinitprovider]: Provider{351be1a com.ionitech.airscreen/com.google.android.gms.ads.MobileAdsInitProvider} applicationInfo=ApplicationInfo{195fe7e com.ionitech.airscreen} [com.ionitech.airscreen.androidx-startup]: Provider{3197d8d com.ionitech.airscreen/androidx.startup.InitializationProvider} applicationInfo=ApplicationInfo{d0398cb com.ionitech.airscreen} [com.ionitech.airscreen.lifecycle-process]: Provider{4ea9174 com.ionitech.airscreen/androidx.lifecycle.ProcessLifecycleOwnerInitializer} applicationInfo=ApplicationInfo{5757102 com.ionitech.airscreen} [com.ionitech.airscreen.utilcode.provider]: Provider{674adab com.ionitech.airscreen/com.blankj.utilcode.util.UtilsFileProvider} applicationInfo=ApplicationInfo{8b3c180 com.ionitech.airscreen} [com.ionitech.airscreen.firebaseinitprovider]: Provider{6229785 com.ionitech.airscreen/com.google.firebase.provider.FirebaseInitProvider} applicationInfo=ApplicationInfo{d4b7796 com.ionitech.airscreen} [com.ionitech.airscreen.provider]: Provider{3d60d4b com.ionitech.airscreen/androidx.core.content.FileProvider} applicationInfo=ApplicationInfo{28e8a9c com.ionitech.airscreen} [com.ionitech.airscreen] Package [com.ionitech.airscreen] (9b89d74): pkg=Package{f4c929d com.ionitech.airscreen} codePath=/data/app/~~1JOV8rjOYMAji9chPSR6Hw==/com.ionitech.airscreen-pQW_sRosY_ErPIA0fRxZrQ== resourcePath=/data/app/~~1JOV8rjOYMAji9chPSR6Hw==/com.ionitech.airscreen-pQW_sRosY_ErPIA0fRxZrQ== legacyNativeLibraryDir=/data/app/~~1JOV8rjOYMAji9chPSR6Hw==/com.ionitech.airscreen-pQW_sRosY_ErPIA0fRxZrQ==/lib applicationInfo=ApplicationInfo{f4c929d com.ionitech.airscreen} dataDir=/data/user/0/com.ionitech.airscreen com.ionitech.airscreen.permission.RECEIVE_ADM_MESSAGE: prot=signature, INSTALLED com.ionitech.airscreen.permission.SANDBOX: prot=signature, INSTALLED com.ionitech.airscreen.permission.CAST_AUTH: prot=signature, INSTALLED com.ionitech.airscreen.permission.CAST_RENDER: prot=signature, INSTALLED com.ionitech.airscreen.permission.RECEIVE_ADM_MESSAGE: granted=true com.ionitech.airscreen.service.BootBroadcastReceiver com.ionitech.airscreen: com.ionitech.airscreen com.ionitech.airscreen: com.ionitech.airscreen com.ionitech.airscreen com.ionitech.airscreen com.ionitech.airscreen com.ionitech.airscreen com.ionitech.airscreen: com.ionitech.airscreen/com.google.android.apps.mediashell.ClientAuthProviderService: com.ionitech.airscreen.permission.CAST_AUTH com.ionitech.airscreen/.cast.render.ReceiverService: com.ionitech.airscreen.permission.CAST_RENDER [com.ionitech.airscreen] path: /data/app/~~1JOV8rjOYMAji9chPSR6Hw==/com.ionitech.airscreen-pQW_sRosY_ErPIA0fRxZrQ==/base.apk used by other apps: [com.ionitech.airscreen, com.idom.dostream, com.amazon.imdb.tv.android.app, com.spotify.tv.android, com.esaba.downloader, com.analiti.fastest.android, com.nousguide.android.tvthek.fire, com.apktime.apktime, com.mautilus.servus.amazonfiretv, de.swr.ard.avp.mobile.android.amazon, de.twokit.screen.mirror, com.redbull.rbtv, com.amazon.bueller.music] [com.ionitech.airscreen]
after a long search .... i found a solution for now how to start ...
adb shell am start com.ionitech.airscreen/.ui.activity.welcome.StreamAssistantIndexActivity
this pages were helping me https://stackoverflow.com/questions/4567904/how-to-start-an-application-using-android-adb-tools/4567928?newreg=57e86f4ba757484299b00b03c6d84525 https://stackoverflow.com/questions/33441138/how-to-find-out-activity-names-in-a-package-android-adb-shell/37959688#37959688
Isn't learning great? :smile:
I have just published Firemote version v3.3.1 which contains this new app shortcut. Enjoy!
-Doug
you are amazing ..... pff, so fast, thx a lot bro
@camelcamro ~
Sorry this is late, but I meant to reply again to give you this tip as well - If you run this command:
adb shell pm dump com.ionitech.airscreen
It outputs a very descriptive layout of activities as well as actions and categories. Sometimes you need to add an activity behind the -a flag and/or a category behind the -c flag to get around security permissions issues. Thankfully, this is not extremely common, but it does happen!
The beginning of the dump from the command issued above shows this:
DUMP OF SERVICE package:
Activity Resolver Table:
Schemes:
cast:
d30ae7 com.ionitech.airscreen/.cast.render.MirrorActivity filter f717aaa
Action: "com.google.cast.action.START"
Category: "android.intent.category.DEFAULT"
Scheme: "cast"
Non-Data Actions:
android.intent.action.MAIN:
cd83694 com.ionitech.airscreen/.ui.activity.welcome.StreamAssistantIndexActivity filter b11995
Action: "android.intent.action.MAIN"
Category: "android.intent.category.LEANBACK_LAUNCHER"
Category: "android.intent.category.LAUNCHER"
--- edited for brevity ---
This is what I normally do. After getting this info, it's simply a matter of trying commands and seeing what works.
-Doug
App Name
AirScreen
Device Platform
Amazon Fire
App Store Link and/or URL to .apk file if sideloaded
https://www.amazon.de/AirScreen-AirPlay-Google-Cast-Miracast/dp/B07CPZ698R
Application Details
adb_response: mSurface=Surface(name=com.ionitech.airscreen/com.ionitech.airscreen.ui.activity.ScreenMirrorActivity)/@0x373c820 mInputMethodTarget in display# 0 Window{2f5b6f9 u0 com.ionitech.airscreen/com.ionitech.airscreen.ui.activity.ScreenMirrorActivity} hdmi_input: null device_class: tv entity_picture: /api/media_player_proxy/media_player.fire_tv_172_20_1_100? token=X friendly_name: Fire TV 172.20.1.100 supported_features: 22961
Optional Comments
this calls i already tried, but didn't work, maybe you have more ideas howto ...
adb shell am start com.ionitech.airscreen adb shell am start com.ionitech.airscreen/com.ionitech.airscreen.ui.browse.BrowseActivity adb shell am start com.ionitech.airscreen/com.ionitech.airscreen.ui.main.SplashActivity adb shell am start com.ionitech.airscreen/com.ionitech.airscreen.ui.activity.MainActivity
then also made:
`adb shell dumpsys window windows | grep -E 'ionitech'
adb_response: Window #3 Window{a708a95 u0 com.ionitech.airscreen/com.ionitech.airscreen.ui.activity.MainActivity}: mOwnerUid=10249 showForAllUsers=false package=com.ionitech.airscreen appop=NONE mBaseLayer=21000 mSubLayer=0 mToken=ActivityRecord{683895c u0 com.ionitech.airscreen/.ui.activity.MainActivity t522} mActivityRecord=ActivityRecord{683895c u0 com.ionitech.airscreen/.ui.activity.MainActivity t522} WindowStateAnimator{7564a73 com.ionitech.airscreen/com.ionitech.airscreen.ui.activity.MainActivity}: mSurface=Surface(name=com.ionitech.airscreen/com.ionitech.airscreen.ui.activity.MainActivity)/@0x25eed30 mInputMethodTarget in display# 0 Window{a708a95 u0 com.ionitech.airscreen/com.ionitech.airscreen.ui.activity.MainActivity} mInputMethodInputTarget in display# 0 Window{a708a95 u0 com.ionitech.airscreen/com.ionitech.airscreen.ui.activity.MainActivity} inputMethodControlTarget in display# 0 Window{a708a95 u0 com.ionitech.airscreen/com.ionitech.airscreen.ui.activity.MainActivity} mLastWakeLockHoldingWindow=Window{dde9015 u0 Splash Screen com.ionitech.airscreen} mLastWakeLockObscuringWindow=null mHoldScreenWindow=Window{a708a95 u0 com.ionitech.airscreen/com.ionitech.airscreen.ui.activity.MainActivity} mObscuringWindow=Window{a708a95 u0 com.ionitech.airscreen/com.ionitech.airscreen.ui.activity.MainActivity} hdmi_input: null device_class: tv entity_picture: /api/media_player_proxy/media_player.fire_tv_172_20_1_100?token=x friendly_name: Fire TV 172.20.1.100 supported_features: 22961 `