Skip to content

fix Android canary and beta 3 support#326

Merged
JingMatrix merged 1 commit intoJingMatrix:masterfrom
frknkrc44:fix-canary
Jul 18, 2025
Merged

fix Android canary and beta 3 support#326
JingMatrix merged 1 commit intoJingMatrix:masterfrom
frknkrc44:fix-canary

Conversation

@frknkrc44
Copy link
Copy Markdown
Contributor

@frknkrc44 frknkrc44 commented Jul 11, 2025

They changed getUsers(ZZZ)Ljava/util/List; to getUsers(Z)Ljava/util/List; on first canary, so the current if block cannot respond to this change. I removed the if block and used the rest code to fix it.

@bocchi810 bocchi810 requested a review from JingMatrix July 12, 2025 01:29
@JingMatrix JingMatrix force-pushed the master branch 2 times, most recently from cfbd5c5 to d625e00 Compare July 12, 2025 06:07
@JingMatrix
Copy link
Copy Markdown
Owner

The original syntax seems correct, I didn't see changes of the source file since this commit:

https://cs.android.com/android/_/android/platform/frameworks/base/+/09a7f2df68192b9aa77577de14a6a7018e992caf

@frknkrc44
Copy link
Copy Markdown
Contributor Author

frknkrc44 commented Jul 12, 2025

@JingMatrix maybe they didn't pushed its source yet, I can send the smali file to confirm my code.

The smali code I mentioned: IUserManager.smali.txt

And it was the error message:
java.lang.NoSuchMethodError: No interface method getUsers(ZZZ)Ljava/util/List; in class Landroid/os/IUserManager; or its super classes (declaration of 'android.os.IUserManager' appears in /system/framework/framework.jar!classes3.dex)

@JingMatrix
Copy link
Copy Markdown
Owner

Google has decided to hide their current commits before releasing, so it is the possible that this code is not uploaded yet;

Could you please tell me your device model and Android version?
I am on Android 16 QPR beta 2, but I don't have the issue you encountered.

@frknkrc44
Copy link
Copy Markdown
Contributor Author

frknkrc44 commented Jul 13, 2025

@JingMatrix It is the "Android canary" version as I described in the PR title, and the getprop output confirms it:

~ $ getprop | grep ro.build
[ro.build.ab_update]: [true]
[ro.build.backported_fixes.alias_bitset.long_list]: [18]
[ro.build.characteristics]: [nosdcard]
[ro.build.date]: [Thu Jul  3 22:43:58 UTC 2025]
[ro.build.date.utc]: [1751582638]
[ro.build.description]: [husky_beta-user CANARY ZP11.250606.010.A1 13734781 release-keys]
[ro.build.display.id]: [ZP11.250606.010.A1]
[ro.build.expect.baseband]: [g5300i-250522-250522-B-13537190]
[ro.build.expect.bootloader]: [ripcurrent-16.3-13546432]
[ro.build.fingerprint]: [google/husky_beta/husky:CANARY/ZP11.250606.010.A1/13734781:user/release-keys]
[ro.build.flavor]: [husky_beta-user]
[ro.build.host]: [7484813c19ce]
[ro.build.id]: [ZP11.250606.010.A1]
[ro.build.product]: [husky]
[ro.build.tags]: [release-keys]
[ro.build.type]: [user]
[ro.build.user]: [android-build]
[ro.build.version.all_codenames]: [CANARY]
[ro.build.version.base_os]: []
[ro.build.version.codename]: [CANARY]
[ro.build.version.incremental]: [13734781]
[ro.build.version.known_codenames]: [Base,Base11,Cupcake,Donut,Eclair,Eclair01,EclairMr1,Froyo,Gingerbread,GingerbreadMr1,Honeycomb,HoneycombMr1,HoneycombMr2,IceCreamSandwich,IceCreamSandwichMr1,JellyBean,JellyBeanMr1,JellyBeanMr2,Kitkat,KitkatWatch,Lollipop,LollipopMr1,M,N,NMr1,O,OMr1,P,Q,R,S,Sv2,Tiramisu,UpsideDownCake,VanillaIceCream,Baklava,CANARY]
[ro.build.version.min_supported_target_sdk]: [28]
[ro.build.version.preview_sdk]: [1]
[ro.build.version.preview_sdk_fingerprint]: [6eeb284e9d698806bc67fb2df278834c]
[ro.build.version.release]: [16]
[ro.build.version.release_or_codename]: [CANARY]
[ro.build.version.release_or_preview_display]: [CANARY]
[ro.build.version.sdk]: [36]
[ro.build.version.sdk_full]: [36.0]
[ro.build.version.security_patch]: [2025-05-05]

If you don't have Android canary build and want to try, you can try it by flashing from flash.android.com.

@frknkrc44
Copy link
Copy Markdown
Contributor Author

Android Canary is also available on Android Virtual Device (AVD) through Android Studio.

But how you can test the LSPosed on it easily? Nvm, it is not the PR's main focus. I made the required fix in this PR and testing it for days. No problems detected by me.

@frknkrc44
Copy link
Copy Markdown
Contributor Author

Update: @JingMatrix this bug also affects QPR1 Beta 3 and gets fixed after my build installed, reported by a few testers.

@frknkrc44 frknkrc44 changed the title fix Android canary support fix Android canary and beta 3 support Jul 17, 2025
@JingMatrix
Copy link
Copy Markdown
Owner

@frknkrc44 Thanks for noting this, now I have chance to test your commit.

@JingMatrix
Copy link
Copy Markdown
Owner

The error message I get on Android 16 QPR beta 3 is

java.lang.NoSuchMethodError: No interface method getUsers(ZZZ)Ljava/util/List; in class Landroid/os/IUserManager; or its super classes (declaration of 'android.os.IUserManager' appears in /system/framework/framework.jar!classes3.dex)
	at org.lsposed.lspd.service.UserService.getUsers(UserService.java:75)
	at org.lsposed.lspd.service.PackageService.getPackageInfoFromAllUsers(PackageService.java:124)
	at org.lsposed.lspd.service.ConfigManager.lambda$cacheModules$17(ConfigManager.java:593)
	at org.lsposed.lspd.service.ConfigManager.$r8$lambda$DjMKAKuo4SxqfalQ-EptiEebELE(Unknown Source:0)
	at org.lsposed.lspd.service.ConfigManager$$ExternalSyntheticLambda12.test(D8$$SyntheticClass:0)
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:190)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1725)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:513)
	at java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:291)
	at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:754)
	at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:391)
	at java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:671)
	at java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:160)
	at java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:133)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:235)
	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:619)
	at org.lsposed.lspd.service.ConfigManager.cacheModules(ConfigManager.java:629)
	at org.lsposed.lspd.service.ConfigManager.updateCaches(ConfigManager.java:197)
	at org.lsposed.lspd.service.ConfigManager.getInstance(ConfigManager.java:341)
	at org.lsposed.lspd.service.LSPosedService.dispatchSystemServerContext(LSPosedService.java:472)
	at org.lsposed.lspd.service.ILSPosedService$Stub.onTransact(ILSPosedService.java:98)
	at android.os.Binder.execTransactInternal(Binder.java:1446)
	at android.os.Binder.execTransact(Binder.java:1385)

@frknkrc44
Copy link
Copy Markdown
Contributor Author

@JingMatrix this log was from your builds without my patch right? I assume it from approved changes.

@JingMatrix
Copy link
Copy Markdown
Owner

Yeah, I note down the error log, without applying this pull-requet, for further reference.
Moreover, there is already #365, providing other logs.

@JingMatrix JingMatrix linked an issue Jul 18, 2025 that may be closed by this pull request
1 task
@JingMatrix JingMatrix merged commit 2293acb into JingMatrix:master Jul 18, 2025
1 check passed
@JingMatrix
Copy link
Copy Markdown
Owner

Thanks for contributing to LSPosed. Please keep your passion on and engage in further discussions !

@chuppito
Copy link
Copy Markdown

Hello I can't download the update for the latest Android 16 beta. How to do?

@ziddey
Copy link
Copy Markdown

ziddey commented Jul 20, 2025

Hello I can't download the update for the latest Android 16 beta. How to do?

https://github.com/JingMatrix/LSPosed/actions/runs/16360896145

https://github.com/JingMatrix/LSPosed/actions/runs/16360896145/artifacts/3560204862

@chuppito
Copy link
Copy Markdown

chuppito commented Aug 2, 2025

Hello, I lost lsposed again today. I am however putting the version for android 16 beta but it does not work

@JingMatrix
Copy link
Copy Markdown
Owner

@chuppito Did you install LSPosed from GitHub Actions CI?

@chuppito
Copy link
Copy Markdown

chuppito commented Aug 2, 2025

Yes and I used it until today. Since nothing
And I also use it on my second phone under Android 16 beta and it works. This morning I installed vbmeta fixer and my phone as crashed

Edit :
It's my fault I didn't put Zygisk next back

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

a16 qpr1 beta 3 breaks lsposed 1.10.2

4 participants