1
Solved

%app_apk_public_source_dirs() returned by the App Info action contains variable names and duplicates when Package/App Name is provided through a variable

App Info output variable %app_apk_public_source_dirs() returns the paths to split APK files belonging to an app. When App Info receives the package name through a variable, for example when in the enter task of a profile triggered by event New Package or Package Updated which passes the package name in %evtprm2, the output contains duplicates and variable names %app_apk_public_source_dirs[numbers up to 10].

For example, we install Simple Flashlight from the Play Store (so it consists of multiple APKs) and set Package/App Name in App Info to com.simplemobiletools.flashlight. %app_apk_public_source_dirs() returns:

/data/app/~~B7hw9LsIMvoKBAxtESVvqw==/com.simplemobiletools.flashlight-zfPGc_nUh-lfXyne8IYBXw==/split_config.en.apk,/data/app/~~B7hw9LsIMvoKBAxtESVvqw==/com.simplemobiletools.flashlight-zfPGc_nUh-lfXyne8IYBXw==/split_config.xxhdpi.apk

Next we first create a variable and assign it the value com.simplemobiletools.flashlight, then set Package/App Name in App Info to the variable. %app_apk_public_source_dirs() now returns:

/data/app/~~B7hw9LsIMvoKBAxtESVvqw==/com.simplemobiletools.flashlight-zfPGc_nUh-lfXyne8IYBXw==/split_config.en.apk,/data/app/~~B7hw9LsIMvoKBAxtESVvqw==/com.simplemobiletools.flashlight-zfPGc_nUh-lfXyne8IYBXw==/split_config.xxhdpi.apk,%app_apk_public_source_dirs4,%app_apk_public_source_dirs5,%app_apk_public_source_dirs6,%app_apk_public_source_dirs7,%app_apk_public_source_dirs8,%app_apk_public_source_dirs9,%app_apk_public_source_dirs10,/data/app/~~B7hw9LsIMvoKBAxtESVvqw==/com.simplemobiletools.flashlight-zfPGc_nUh-lfXyne8IYBXw==/split_config.en.apk,/data/app/~~B7hw9LsIMvoKBAxtESVvqw==/com.simplemobiletools.flashlight-zfPGc_nUh-lfXyne8IYBXw==/split_config.xxhdpi.apk

3 replies

HI

Here's another example for an app with 20 splits, the %app_apk_public_source_dirs[number] in the output go up to 109!

  1. Install nl.tpp.mobile.android
  2. Set a variable to nl.tpp.mobile.android
  3. Set the variable as the package name in App Info
  4. The output of %app_apk_public_source_dirs() is:

/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_addressrequest.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_addressrequest.config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_analytics.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_analytics.config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_config.nl.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_deeplink.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_deeplink.config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_dynamicui.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_dynamicui.config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_addressrequest.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_addressrequest.config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_analytics.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_analytics.config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_config.nl.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_deeplink.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_deeplink.config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_dynamicui.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_tracking_services.config.xxhdpi.apk,%app_apk_public_source_dirs21,%app_apk_public_source_dirs22,%app_apk_public_source_dirs23,%app_apk_public_source_dirs24,%app_apk_public_source_dirs25,%app_apk_public_source_dirs26,%app_apk_public_source_dirs27,%app_apk_public_source_dirs28,%app_apk_public_source_dirs29,%app_apk_public_source_dirs30,%app_apk_public_source_dirs31,%app_apk_public_source_dirs32,%app_apk_public_source_dirs33,%app_apk_public_source_dirs34,%app_apk_public_source_dirs35,%app_apk_public_source_dirs36,%app_apk_public_source_dirs37,%app_apk_public_source_dirs38,%app_apk_public_source_dirs39,%app_apk_public_source_dirs40,%app_apk_public_source_dirs41,%app_apk_public_source_dirs42,%app_apk_public_source_dirs43,%app_apk_public_source_dirs44,%app_apk_public_source_dirs45,%app_apk_public_source_dirs46,%app_apk_public_source_dirs47,%app_apk_public_source_dirs48,%app_apk_public_source_dirs49,%app_apk_public_source_dirs50,%app_apk_public_source_dirs51,%app_apk_public_source_dirs52,%app_apk_public_source_dirs53,%app_apk_public_source_dirs54,%app_apk_public_source_dirs55,%app_apk_public_source_dirs56,%app_apk_public_source_dirs57,%app_apk_public_source_dirs58,%app_apk_public_source_dirs59,%app_apk_public_source_dirs60,%app_apk_public_source_dirs61,%app_apk_public_source_dirs62,%app_apk_public_source_dirs63,%app_apk_public_source_dirs64,%app_apk_public_source_dirs65,%app_apk_public_source_dirs66,%app_apk_public_source_dirs67,%app_apk_public_source_dirs68,%app_apk_public_source_dirs69,%app_apk_public_source_dirs70,%app_apk_public_source_dirs71,%app_apk_public_source_dirs72,%app_apk_public_source_dirs73,%app_apk_public_source_dirs74,%app_apk_public_source_dirs75,%app_apk_public_source_dirs76,%app_apk_public_source_dirs77,%app_apk_public_source_dirs78,%app_apk_public_source_dirs79,%app_apk_public_source_dirs80,%app_apk_public_source_dirs81,%app_apk_public_source_dirs82,%app_apk_public_source_dirs83,%app_apk_public_source_dirs84,%app_apk_public_source_dirs85,%app_apk_public_source_dirs86,%app_apk_public_source_dirs87,%app_apk_public_source_dirs88,%app_apk_public_source_dirs89,%app_apk_public_source_dirs90,%app_apk_public_source_dirs91,%app_apk_public_source_dirs92,%app_apk_public_source_dirs93,%app_apk_public_source_dirs94,%app_apk_public_source_dirs95,%app_apk_public_source_dirs96,%app_apk_public_source_dirs97,%app_apk_public_source_dirs98,%app_apk_public_source_dirs99,%app_apk_public_source_dirs100,%app_apk_public_source_dirs101,%app_apk_public_source_dirs102,%app_apk_public_source_dirs103,%app_apk_public_source_dirs104,%app_apk_public_source_dirs105,%app_apk_public_source_dirs106,%app_apk_public_source_dirs107,%app_apk_public_source_dirs108,%app_apk_public_source_dirs109,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_dynamicui.config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_features.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_features.config.nl.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_features.config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_scanner.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_scanner.config.arm64_v8a.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_scanner.config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_tracking.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_tracking.config.xxhdpi.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_tracking_services.apk,/data/app/~~0B_tYLQsZ0aX_67yMEJozA==/nl.tpp.mobile.android-eHwSJAKdH0eC9QeitzQKwA==/split_tracking_services.config.xxhdpi.apk

HI

Hello João Dias, may I ask how reported issues are handled? I have a few more that I keep running into and I'm motivated to report them so Tasker can improve, but if nothing is done with them I would just be wasting my time. Since I haven't received any reaction on this bug report and I've seen other reports on here that are much, much older and never got any interaction, I'd like to know before I proceed filing more. Thank you.

O, and here's a workaround for people also running into this issue: use the Run Shell action with the command pm path %package|sed 's/^package://g' where %package is the variable that holds the package name. Store the output in a variable, it has the path to every split on a separate line.

Hi there, thanks for the report! Can you please try this version? https://drive.google.com/file/d/1YGuMAWRfyYlUKMdgb4xyVEUfddWz_zzI/view

Thanks in advance!

HI

Here's a copy of my answer at https://www.reddit.com/r/tasker/comments/1cu98ib/comment/l5azxix/:

Hey, thanks for getting on it so quickly! I installed the version you linked to yesterday and finished testing it just now. Tested it with both the apps I reported on in my bug report and it seems fixed indeed, so that's awesome!

Awesome :) Glad it's fixed now!

Topic is closed for comments