NeoApplications / Neo-Backup

backup manager for android
GNU Affero General Public License v3.0
2.37k stars 120 forks source link

[Bug] App crashing at homepage #813

Open Jammmmm opened 7 months ago

Jammmmm commented 7 months ago

Description Just installed Neo Backup. I went through the initial steps and granted all required permissions. When it gets to the homepage, it crashes immediately.

My device is rooted and OAndBackup used to work fine.

Is there a way for me to determine why it's crashing?

I have tried:

Steps To Reproduce

  1. Launch Neo Backup
  2. Crash

Expected behavior Not crashing.

Screenshots GIF of the crashing. The GIF loops but you get the idea. I launch Neo Backup and it crashes back to the desktop. neobackupcrash -

System Information(please complete the following information):

machiav3lli commented 7 months ago

Do you have patcher or such apps?

Jammmmm commented 7 months ago

No, Nothing at all.

machiav3lli commented 7 months ago

Having xposed/privacy results having an enormous amount of scenarios which may cause such crash. Any hidden apps? By "given full permissions" you mean there's no fake data feed? What xposed modules you have? What other root-level apps? …

Jammmmm commented 7 months ago

No hidden apps at all.

Correct, full permissions means there's no fake data feed. XPrivacyLua is not blocking anything at all to Neo Backup.

Xposed modules are EdXposed Manager, Scoop (which I installed after to debug Neo Backup) and XPrivacyLua.

Magisk modules are Always Trust User Certificates, Axet's Call Recorder, Riru (Riru - Core), Riru - EdXposed, SDCard R/W.

Apps that have root/superuser AdAway, Amaze, Aurora Store, DroidWall, EdXposed Manager, MatLog, Neo Backup, PCAPDroid, Scoop, Shell, Terminal Emulator, VPN Hotspot.

I'm personally not seeing anything out of the ordinary that should interfere with Neo Backup when it's scanning on the homepage.

Jammmmm commented 7 months ago

This might help. The crashing started in 8.3.0. Every version up to 8.2.5 works fine.

machiav3lli commented 7 months ago

Actually I think many of those could be the issue in one way or another. But let's follow the 8.2.5→8.3.0 thingy for this issue: To get a full log (with some noise), install LogFox, use a filter using NB's package name and then check the logcat on running NB, there should be an indicator. One guess would be Compose, having some issues on the rusty A9, another one is still, one of the modules & root-apps having some funny non-standard "qualities".

Jammmmm commented 7 months ago

This is the log:

1700784524.810 10467  9450  9450 E hiav3lli.backu: Not starting debugger since process cannot load the jdwp agent.
1700784524.826 10467  9450  9450 V Riru    : hook removed
1700784524.826 10467  9450  9450 V Riru    : edxp: forkAndSpecializePost
1700784524.838 10467  9450  9450 D SandHook: method <public java.lang.ClassLoader android.app.LoadedApk.getClassLoader()> hook <replacement> success!
1700784524.844 10467  9450  9450 E DisplayManagerHelper: ISmartCoverManager is null
1700784524.850 10467  9450  9450 D SandHook: method <public android.app.Application()> hook <replacement> success!
1700784524.853 10467  9450  9450 D SandHook: method <public static void java.lang.Thread.setDefaultUncaughtExceptionHandler(java.lang.Thread$UncaughtExceptionHandler)> hook <replacement> success!
1700784524.854 10467  9450  9450 D SandHook: method <public void java.lang.Thread.setUncaughtExceptionHandler(java.lang.Thread$UncaughtExceptionHandler)> hook <replacement> success!
1700784524.856 10467  9450  9450 D SandHook: method <public void java.lang.ThreadGroup.uncaughtException(java.lang.Thread,java.lang.Throwable)> hook <replacement> success!
1700784524.857 10467  9450  9450 D SandHook: method <public void com.android.internal.os.RuntimeInit$KillApplicationHandler.uncaughtException(java.lang.Thread,java.lang.Throwable)> hook <replacement> success!
1700784524.857 10467  9450  9450 D scoop   : hookUncaughtException (com.machiav3lli.backup): Hooked class com.android.internal.os.RuntimeInit$KillApplicationHandler after 0 loops
1700784524.857 10467  9450  9450 I XLua.Xposed: Loaded com.machiav3lli.backup:10467
1700784524.860 10467  9450  9450 D SandHook: method <public android.app.Application android.app.LoadedApk.makeApplication(boolean,android.app.Instrumentation)> hook <replacement> success!
1700784524.920 10467  9450  9450 D WM-WrkMgrInitializer: Initializing WorkManager with default configuration.
1700784525.100 10467  9450  9450 D AppCompatDelegate: Checking for metadata for AppLocalesMetadataHolderService : Service not found
1700784525.116 10467  9450  9450 D PhoneWindow: windowLightStatusBar : false, disable View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
1700784525.177 10467  9450  9450 W ActivityThread: handleWindowVisibility: no activity for token android.os.BinderProxy@b09457c
1700784525.186 10467  9450  9450 D PhoneWindow: windowLightStatusBar : false, disable View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
1700784525.222 10467  9450  9450 D OpenGLRenderer: Skia GL Pipeline
1700784525.229 10467  9450  9450 I TouchFilterInputStageHelper: [needTouchEventFilter] Displayid : 0
1700784525.230 10467  9450  9450 D BezellessGripSuppressionFilter: getdisplaysize, x : 1080 y : 2340
1700784525.285 10467  9450  9523 I Adreno  : QUALCOMM build                   : 66a2729, Ia5becf3da7
1700784525.285 10467  9450  9523 I Adreno  : Build Date                       : 11/14/19
1700784525.285 10467  9450  9523 I Adreno  : OpenGL ES Shader Compiler Version: EV031.25.03.07
1700784525.285 10467  9450  9523 I Adreno  : Local Branch                     :
1700784525.285 10467  9450  9523 I Adreno  : Remote Branch                    : refs/tags/AU_LINUX_ANDROID_LA.UM.7.3.R1.09.00.00.423.061
1700784525.285 10467  9450  9523 I Adreno  : Remote Branch                    : NONE
1700784525.285 10467  9450  9523 I Adreno  : Reconstruct Branch               : NOTHING
1700784525.285 10467  9450  9523 I Adreno  : Build Config                     : S P 6.0.7 AArch64
1700784525.287 10467  9450  9523 I Adreno  : PFP: 0x016ee176, ME: 0x00000000
1700784525.289 10467  9450  9523 E libc    : Access denied finding property "ro.vendor.lge.hwbinder.vm.size"
1700784525.291 10467  9450  9523 I ConfigStore: android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::hasWideColorDisplay retrieved: 0
1700784525.292 10467  9450  9523 I ConfigStore: android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::hasHDRDisplay retrieved: 0
1700784525.292 10467  9450  9523 I OpenGLRenderer: Initialized EGL, version 1.4
1700784525.292 10467  9450  9523 D OpenGLRenderer: Swap behavior 2
1700784525.773 10467  9450  9511 E hiav3lli.backu: Invalid ID 0x00000000.
... Repeated many times ...
1700784526.155 10467  9450  9512 E hiav3lli.backu: Invalid ID 0x00000000.
1700784526.156 10467  9450  9523 F libc    : Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0 in tid 9523 (RenderThread), pid 9450 (hiav3lli.backup)
1700784526.238 10467  9599  9599 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
1700784526.240 10467  9599  9599 I crash_dump64: performing dump of process 9450 (target tid = 9523)
1700784526.260 10467  9599  9599 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
1700784526.260 10467  9599  9599 F DEBUG   : Build fingerprint: 'lge/judypn_lao_com/judypn:9/PKQ1.190202.001/1936410453e44.FGN:user/release-keys'
1700784526.260 10467  9599  9599 F DEBUG   : Revision: '12'
1700784526.260 10467  9599  9599 F DEBUG   : ABI: 'arm64'
1700784526.260 10467  9599  9599 F DEBUG   : pid: 9450, tid: 9523, name: RenderThread  >>> com.machiav3lli.backup <<<
1700784526.260 10467  9599  9599 F DEBUG   : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
1700784526.260 10467  9599  9599 F DEBUG   : Cause: null pointer dereference
1700784526.260 10467  9599  9599 F DEBUG   :     x0  0000007671033e20  x1  0000000000000002  x2  0000000000000000  x3  0000000000000100
1700784526.260 10467  9599  9599 F DEBUG   :     x4  0000000000000000  x5  0000000000000000  x6  00000077301dc000  x7  000000000021d53c
1700784526.260 10467  9599  9599 F DEBUG   :     x8  0000000000000000  x9  0000000000000002  x10 0000000000000000  x11 0000000000000000
1700784526.260 10467  9599  9599 F DEBUG   :     x12 0000000000000100  x13 0000000000000000  x14 ae9d540db2b6b27c  x15 0000000000000100
1700784526.260 10467  9599  9599 F DEBUG   :     x16 000000772baa95b8  x17 000000772b5eeac4  x18 ae9d540db2b6b27c  x19 0000007684a49240
1700784526.260 10467  9599  9599 F DEBUG   :     x20 0000000000000000  x21 000000772b5f4e38  x22 0000007684a49588  x23 0000000000000001
1700784526.260 10467  9599  9599 F DEBUG   :     x24 0000000000000001  x25 000000768494c000  x26 00000077301ee5b8  x27 0000000000000000
1700784526.260 10467  9599  9599 F DEBUG   :     x28 0000000076212f00  x29 0000007684a49220
1700784526.260 10467  9599  9599 F DEBUG   :     sp  0000007684a49170  lr  000000772b5bcc18  pc  000000772b5bcc7c
1700784526.285 10467  9599  9599 F DEBUG   : backtrace:
1700784526.285 10467  9599  9599 F DEBUG   :     #00 pc 0000000000315c7c  /system/lib64/libhwui.so (android::Bitmap::makeImage(sk_sp<SkColorFilter>*)+296)
1700784526.285 10467  9599  9599 F DEBUG   :     #01 pc 00000000000eeff8  /system/lib64/libhwui.so (android::uirenderer::skiapipeline::SkiaPipeline::prepareToDraw(android::uirenderer::renderthread::RenderThread const&, android::Bitmap*)+112)
1700784526.285 10467  9599  9599 F DEBUG   :     #02 pc 00000000000f44e4  /system/lib64/libhwui.so (android::uirenderer::renderthread::CanvasContext::prepareToDraw(android::uirenderer::renderthread::RenderThread const&, android::Bitmap*)+56)
1700784526.285 10467  9599  9599 F DEBUG   :     #03 pc 000000000036fd64  /system/lib64/libhwui.so (_ZNSt3__110__function6__funcIZN7android10uirenderer12renderthread11RenderProxy13prepareToDrawERNS2_6BitmapEE4$_40NS_9allocatorIS8_EEFvvEEclEv$d1b19a60f4b1bb5f6a5927e3e6deb93d+20)
1700784526.285 10467  9599  9599 F DEBUG   :     #04 pc 00000000003494b0  /system/lib64/libhwui.so
1700784526.285 10467  9599  9599 F DEBUG   :     #05 pc 0000000000370a70  /system/lib64/libhwui.so (android::uirenderer::renderthread::RenderThread::threadLoop()+420)
1700784526.285 10467  9599  9599 F DEBUG   :     #06 pc 00000000000100dc  /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+284)
1700784526.285 10467  9599  9599 F DEBUG   :     #07 pc 0000000000092f8c  /system/lib64/libc.so (__pthread_start(void*)+36)
1700784526.285 10467  9599  9599 F DEBUG   :     #08 pc 0000000000023c78  /system/lib64/libc.so (__start_thread+68)
1700784526.299 10467  9450  9571 E hiav3lli.backu: Invalid ID 0x00000000.
... Repeated many times ...

I also tried disabling all Xposed and Magisk modules and rebooting. I also removed superuser/root access for everything except for Neo Backup. It still crashes.

I'm not sure what to look for in the dump. I see a null pointer dereference and "libc : Access denied finding property "ro.vendor.lge.hwbinder.vm.size"" but other than those, nothing really stands out to me personally.

whitedavidp commented 3 months ago

FYI I am seeing exactly the same behavior on my LG V40 with stock, but rooted with Magisk, and having LsPosed installed, Android 9 immediately after installing the 8.3.6 version. I have no logs or other information except to say it looks exactly like the animated gif above. Had to go back to last night's TWRP backup in order to recover without having to uninstall and re-install the previous version I was using (8.2.5).

Jammmmm commented 3 months ago

Interesting! Your setup is basically the same as mine. I wonder if it's an LG v40 issue, or an Android 9 issue. I'm leaning towards the latter because issue #827 also mentions crashing on Android 9 but on a different device (S905X3 TV box).

whitedavidp commented 3 months ago

It certainly could be. I have been just fine with 8.2.5 but when recently suggesting a feature for Neo and stating that I was on 8.2.5 I was questioned why I was not on 8.3.6? At the time, I had no good reason save that I was not aware of it (if it ain't broke, I don't often try to fix it). But now I do :-(

whitedavidp commented 3 months ago

To be clear, I was on 8.2.5 and tried to move directly to 8.3.6 of Neo. In another thread - but on this topic - the dev said "I never planned for such jumps (I can imagine that these crashes are either caused by backup properties or databases)". I see there are at least 5 releases between 8.2.5 and 8.3.6 so perhaps the "fix" is to install them one at a time in strict order?

machiav3lli commented 3 months ago

Ok, there's no external crash logs rather all is hsppening intern, or maybe the XPLUA is catching logs out of privavacy incentive?... If it's not a ROM issue, I can imagine that it's Magisk or Lsposed related (sans modules too). Can you please try removing lsposed fully, then try using scoop to catch the crash logs?

machiav3lli commented 3 months ago

@whitedavidp Jammmmm have alreadydone through testing and the issue starts at 8.3.0 already. I can't say more than this seems setup bound.

The provided logcat from @Jammmmm doesn't provide any clear pointers, but there's some hints at XPLUA

whitedavidp commented 3 months ago

@whitedavidp Jammmmm have alreadydone through testing and the issue starts at 8.3.0 already. I can't say more than this seems setup bound.

Thanks, I had not noticed that yet. This is good as I cannot seem to find how to get at older versions of the APK on Fdroid anyhow... I am likely just a dumb-ass :-)

The provided logcat from @Jammmmm doesn't provide any clear pointers, but there's some hints at XPLUA