ReVanced / revanced-manager

💊 Application to use ReVanced on Android
https://revanced.app
GNU General Public License v3.0
18.21k stars 748 forks source link

bug: Error while patching YouTube apk (exit code = 135) #480

Closed nach0 closed 2 years ago

nach0 commented 2 years ago

Type

Error while running the manager

Bug description

I followed the instructions from this Reddit post. I downloaded Revanced Manager, MicroG and the YouTube 17.43.36 apk (not the bundle, I triple checked). I selected all patches except "Enable Debugging" (as I have read that it is recommended to just install all patches and then disable in the patched app what you don't need).

Vanced Manager starts the patching process and gets to the step "Compiling resources" then it gets an error message (with exit code = 135) and status changes to Aborting…

Steps to reproduce

  1. Download ReVanced Manager from https://github.com/revanced/revanced-manager/releases/tag/v0.0.39
  2. Download MicroG from https://github.com/inotia00/VancedMicroG/releases
  3. Download the YouTube apk from https://www.apkmirror.com/apk/google-inc/youtube/youtube-17-43-36-release/#downloads
  4. Install ReVanced Manager and MicroG.
  5. In ReVanced Manager go to the Patcher section, press on "Select application" and select the downloaded YouTube apk from step 3
  6. Press on "Select patches" and selected all patches, then de-select "Enable Debugging". Then press "Done"
  7. Press on "Patch" button.
  8. After working for some time, the status on top changes to Aborting… and I get the error described above.

Android version

9

Manager version

0.0.39

Target package name

com.google.android.youtube_17.43.36-1532487104_minAPI26(arm64-v8a,armeabi-v7a,x86,x86_64)(nodpi)_apkmirror.com.apk

Target package version.

17.43.36

Installation type

Non-root

Patches selected.

All except "Enable Debugging"

Device logs (exported using Manager settings).

--------- beginning of system
11-04 10:43:19.882 13301 13301 W PackageParser: Unknown element under <manifest>: queries at /data/user/0/app.revanced.manager.flutter/cache/file_picker/com.google.android.youtube_17.41.37-1532227008_minAPI26(arm64-v8a,armeabi-v7a,x86,x86_64)(nodpi)_apkmirror.com.apk Binary XML file line #41
11-04 10:46:40.307 13301 13301 W PackageParser: Unknown element under <manifest>: queries at /data/user/0/app.revanced.manager.flutter/cache/file_picker/com.google.android.youtube_17.41.37-1532227008_minAPI26(arm64-v8a,armeabi-v7a,x86,x86_64)(nodpi)_apkmirror.com.apk Binary XML file line #41
11-04 12:34:05.014 13301 13301 W PackageParser: Unknown element under <manifest>: queries at /data/user/0/app.revanced.manager.flutter/cache/file_picker/com.google.android.youtube_17.43.36-1532487104_minAPI26(arm64-v8a,armeabi-v7a,x86,x86_64)(nodpi)_apkmirror.com (1).apk Binary XML file line #41
11-04 12:34:34.926 13301 13301 W PackageParser: Unknown element under <manifest>: queries at /data/user/0/app.revanced.manager.flutter/cache/file_picker/com.google.android.youtube_17.43.36-1532487104_minAPI26(arm64-v8a,armeabi-v7a,x86,x86_64)(nodpi)_apkmirror.com (1).apk Binary XML file line #41
--------- beginning of main
11-04 13:22:24.331 13301 13337 D mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
11-04 13:22:24.336 13301 13320 D mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
11-04 13:22:31.253 13301 13301 D FilePickerUtils: Allowed file extensions mimes: [application/vnd.android.package-archive]
11-04 13:22:31.259 13301 13301 D FilePickerDelegate: Selected type */*
11-04 13:22:31.895 13301 13320 W libEGL  : EGLNativeWindowType 0xc7117008 disconnect failed
11-04 13:22:31.898 13301 13337 W libEGL  : EGLNativeWindowType 0xdf18f008 disconnect failed
11-04 13:22:34.423 13301 19617 I FilePickerUtils: Caching from URI: content://com.android.providers.downloads.documents/document/raw%3A%2Fstorage%2Femulated%2F0%2FDownload%2FReVanced%2Fcom.google.android.youtube_17.43.36-1532487104_minAPI26(arm64-v8a%2Carmeabi-v7a%2Cx86%2Cx86_64)(nodpi)_apkmirror.com%20(1).apk
11-04 13:22:34.431 13301 19617 D FilePickerUtils: File loaded and cached at:/data/user/0/app.revanced.manager.flutter/cache/file_picker/com.google.android.youtube_17.43.36-1532487104_minAPI26(arm64-v8a,armeabi-v7a,x86,x86_64)(nodpi)_apkmirror.com (1).apk
11-04 13:22:34.432 13301 19617 D FilePickerDelegate: File path:[com.mr.flutter.plugin.filepicker.FileInfo@f62bf25]
11-04 13:22:34.436 13301 13337 D mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
11-04 13:22:34.438 13301 13320 D mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
11-04 13:22:34.533 13301 13301 W PackageParser: Unknown element under <manifest>: queries at /data/user/0/app.revanced.manager.flutter/cache/file_picker/com.google.android.youtube_17.43.36-1532487104_minAPI26(arm64-v8a,armeabi-v7a,x86,x86_64)(nodpi)_apkmirror.com (1).apk Binary XML file line #41
11-04 13:24:01.977 13301 13301 W IInputConnectionWrapper: requestCursorAnchorInfo on inactive InputConnection
11-04 13:24:01.979 13301 13301 W IInputConnectionWrapper: requestCursorAnchorInfo on inactive InputConnection
11-04 13:24:02.576 13301 13320 W libEGL  : EGLNativeWindowType 0xc6863808 disconnect failed
11-04 13:24:04.503 13301 13320 D mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
11-04 13:24:04.619 13301 13337 I ConfigStore: android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::vsyncEventPhaseOffsetNs retrieved: 1000000 (default)
11-04 13:24:04.619 13301 13337 I ConfigStore: android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::vsyncSfEventPhaseOffsetNs retrieved: 1000000 (default)
11-04 13:25:04.399 13301 13301 W IInputConnectionWrapper: requestCursorAnchorInfo on inactive InputConnection
11-04 13:25:04.401 13301 13301 W IInputConnectionWrapper: requestCursorAnchorInfo on inactive InputConnection
11-04 13:25:04.943 13301 13320 W libEGL  : EGLNativeWindowType 0xb9a69008 disconnect failed
11-04 13:25:10.475 13301 13337 W libEGL  : EGLNativeWindowType 0xdf18f008 disconnect failed
11-04 13:25:29.284 13301 13337 D mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
11-04 13:25:29.289 13301 13320 D mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
11-04 13:26:39.768 13301 13301 W IInputConnectionWrapper: requestCursorAnchorInfo on inactive InputConnection
11-04 13:26:39.771 13301 13301 W IInputConnectionWrapper: requestCursorAnchorInfo on inactive InputConnection
11-04 13:26:40.317 13301 13320 W libEGL  : EGLNativeWindowType 0xc6863808 disconnect failed
11-04 13:26:46.463 13301 13337 W libEGL  : EGLNativeWindowType 0xdf18f008 disconnect failed
11-04 13:28:36.033 13301 13337 D mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000
11-04 13:28:36.039 13301 13320 D mali_winsys: EGLint new_window_surface(egl_winsys_display *, void *, EGLSurface, EGLConfig, egl_winsys_surface **, EGLBoolean) returns 0x3000

Installer logs (exported using Installer menu option) [unneeded if issue is not during patching].

Initializing installer
Creating working directory
Copying original apk
Unpacking input apk
Reading dex files
Decoding AndroidManifest.xml only, because resources are not needed
Merging integrations
Deleting existing resource cache directory
Decoding resources
Executing all patches
Executing 'resource-mapping' of type: resource
Executing 'integrations' of type: bytecode
Skipping 'integrations' because it has already been applied
Executing 'locale-config-fix' of type: resource
Skipping 'resource-mapping' because it has already been applied
Executing 'settings-resource-patch' of type: resource
Executing 'settings' of type: bytecode
Skipping 'locale-config-fix' because it has already been applied
Executing 'general-resource-ads' of type: resource
Executing 'general-ads' of type: bytecode
Applied general-ads
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'hide-infocard-suggestions' of type: bytecode
Applied hide-infocard-suggestions
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Skipping 'integrations' because it has already been applied
Skipping 'integrations' because it has already been applied
Executing 'player-controller-hook' of type: bytecode
Skipping 'settings' because it has already been applied
Skipping 'integrations' because it has already been applied
Executing 'video-id-hook' of type: bytecode
Executing 'fix-playback' of type: resource
Executing 'video-ads' of type: bytecode
Applied video-ads
Skipping 'locale-config-fix' because it has already been applied
Executing 'bottom-controls-resource-patch' of type: resource
Skipping 'locale-config-fix' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'downloads-resource-patch' of type: resource
Skipping 'resource-mapping' because it has already been applied
Executing 'player-controls-bytecode-patch' of type: bytecode
Skipping 'video-id-hook' because it has already been applied
Executing 'downloads' of type: bytecode
Applied downloads
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'seekbar-tapping' of type: bytecode
Applied seekbar-tapping
Skipping 'integrations' because it has already been applied
Skipping 'integrations' because it has already been applied
Executing 'player-type-hook' of type: bytecode
Skipping 'settings' because it has already been applied
Executing 'swipe-controls-resource-patch' of type: resource
Executing 'swipe-controls' of type: bytecode
Applied swipe-controls
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'disable-auto-captions' of type: bytecode
Applied disable-auto-captions
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Skipping 'resource-mapping' because it has already been applied
Executing 'hide-autoplay-button' of type: bytecode
Applied hide-autoplay-button
Skipping 'locale-config-fix' because it has already been applied
Executing 'premium-heading' of type: resource
Applied premium-heading
Skipping 'locale-config-fix' because it has already been applied
Executing 'custom-branding' of type: resource
Applied custom-branding
Skipping 'resource-mapping' because it has already been applied
Skipping 'general-ads' because it has already been applied
Executing 'hide-video-buttons' of type: resource
Applied hide-video-buttons
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'hide-cast-button' of type: bytecode
Applied hide-cast-button
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Skipping 'resource-mapping' because it has already been applied
Executing 'comments-resource-patch' of type: resource
Executing 'comments' of type: bytecode
Applied comments
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'disable-fullscreen-panels' of type: bytecode
Applied disable-fullscreen-panels
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Skipping 'resource-mapping' because it has already been applied
Executing 'hide-album-cards-resource-patch' of type: resource
Executing 'hide-album-cards' of type: bytecode
Applied hide-album-cards
Skipping 'resource-mapping' because it has already been applied
Skipping 'general-ads' because it has already been applied
Executing 'hide-artist-card' of type: resource
Applied hide-artist-card
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'hide-captions-button' of type: bytecode
Applied hide-captions-button
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Skipping 'resource-mapping' because it has already been applied
Executing 'crowdfunding-box-resource-patch' of type: resource
Executing 'hide-crowdfunding-box' of type: bytecode
Applied hide-crowdfunding-box
Skipping 'integrations' because it has already been applied
Executing 'hide-my-mix' of type: bytecode
Applied hide-my-mix
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'hide-time-and-seekbar' of type: bytecode
Applied hide-time-and-seekbar
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'old-quality-layout' of type: bytecode
Applied old-quality-layout
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Skipping 'resource-mapping' because it has already been applied
Executing 'hide-email-address-resource-patch' of type: resource
Executing 'hide-email-address' of type: bytecode
Applied hide-email-address
Skipping 'integrations' because it has already been applied
Skipping 'resource-mapping' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'hide-create-button' of type: bytecode
Applied hide-create-button
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'hide-shorts-button' of type: bytecode
Applied hide-shorts-button
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'disable-auto-player-popup-panels' of type: bytecode
Applied disable-auto-player-popup-panels
Skipping 'integrations' because it has already been applied
Skipping 'video-id-hook' because it has already been applied
Skipping 'locale-config-fix' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'return-youtube-dislike-resource-patch' of type: resource
Executing 'return-youtube-dislike' of type: bytecode
Applied return-youtube-dislike
Skipping 'player-controller-hook' because it has already been applied
Skipping 'player-controls-bytecode-patch' because it has already been applied
Skipping 'integrations' because it has already been applied
Skipping 'locale-config-fix' because it has already been applied
Skipping 'settings' because it has already been applied
Skipping 'resource-mapping' because it has already been applied
Executing 'sponsorblock-resource-patch' of type: resource
Skipping 'video-id-hook' because it has already been applied
Executing 'sponsorblock' of type: bytecode
Applied sponsorblock
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'disable-startup-shorts-player' of type: bytecode
Applied disable-startup-shorts-player
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'tablet-mini-player' of type: bytecode
Applied tablet-mini-player
Executing 'litho-components-theme' of type: bytecode
Skipping 'locale-config-fix' because it has already been applied
Executing 'theme' of type: resource
Applied theme
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'hide-watch-in-vr' of type: bytecode
Applied hide-watch-in-vr
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'hide-watermark' of type: bytecode
Applied hide-watermark
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'enable-wide-searchbar' of type: bytecode
Applied enable-wide-searchbar
Skipping 'integrations' because it has already been applied
Executing 'always-autorepeat' of type: bytecode
Applied always-autorepeat
Executing 'client-spoof' of type: bytecode
Applied client-spoof
Skipping 'integrations' because it has already been applied
Skipping 'resource-mapping' because it has already been applied
Executing 'custom-playback-speed' of type: bytecode
Applied custom-playback-speed
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'hdr-auto-brightness' of type: bytecode
Applied hdr-auto-brightness
Skipping 'locale-config-fix' because it has already been applied
Skipping 'settings-resource-patch' because it has already been applied
Executing 'microg-resource-patch' of type: resource
Skipping 'hide-cast-button' because it has already been applied
Skipping 'client-spoof' because it has already been applied
Executing 'microg-support' of type: bytecode
Applied microg-support
Skipping 'integrations' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'minimized-playback' of type: bytecode
Applied minimized-playback
Skipping 'integrations' because it has already been applied
Skipping 'video-id-hook' because it has already been applied
Skipping 'settings' because it has already been applied
Executing 'remember-video-quality' of type: bytecode
Applied remember-video-quality
Skipping 'settings' because it has already been applied
Applied settings
Skipping 'settings' because it has already been applied
Executing 'custom-video-buffer' of type: bytecode
Applied custom-video-buffer
Repacking patched apk
Compiling resources
An error occurred! Aborting
Error:
brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = 135): [/data/app/app.revanced.manager.flutter-Ha8it7elPjOnkt3ZY-98-A==/lib/arm/libaapt2.so, link, -o, /data/user/0/app.revanced.manager.flutter/cache/patcher/tmp-WCQICQ/cache/aapt_temp_file, --min-sdk-version, 26, --target-sdk-version, 33, --version-code, 1532487104, --version-name, 17.43.36, --no-auto-version, --no-version-vectors, --no-version-transitions, --no-resource-deduping, --allow-reserved-package-id, -e, /data/user/0/app.revanced.manager.flutter/cache/APKTOOL8695238207022987995.tmp, -0, arsc, -I, /data/user/0/app.revanced.manager.flutter/cache/patcher/tmp-WCQICQ/cache/1.apk, --manifest, /data/user/0/app.revanced.manager.flutter/cache/patcher/tmp-WCQICQ/cache/AndroidManifest.xml, /data/user/0/app.revanced.manager.flutter/cache/patcher/tmp-WCQICQ/cache/build/resources.zip]
    at brut.androlib.res.AndrolibResources.aapt2Package(AndrolibResources.java:494)
    at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.java:629)
    at app.revanced.patcher.Patcher.save(Patcher.kt:149)
    at app.revanced.manager.flutter.MainActivity.runPatcher$lambda$19(MainActivity.kt:215)
    at app.revanced.manager.flutter.MainActivity.$r8$lambda$E2jhTFrLKJQp09EHxMNmoL-t4AE(Unknown Source:0)
    at app.revanced.manager.flutter.MainActivity$$ExternalSyntheticLambda4.run(Unknown Source:24)
    at java.lang.Thread.run(Thread.java:764)
Caused by: brut.common.BrutException: could not exec (exit code = 135): [/data/app/app.revanced.manager.flutter-Ha8it7elPjOnkt3ZY-98-A==/lib/arm/libaapt2.so, link, -o, /data/user/0/app.revanced.manager.flutter/cache/patcher/tmp-WCQICQ/cache/aapt_temp_file, --min-sdk-version, 26, --target-sdk-version, 33, --version-code, 1532487104, --version-name, 17.43.36, --no-auto-version, --no-version-vectors, --no-version-transitions, --no-resource-deduping, --allow-reserved-package-id, -e, /data/user/0/app.revanced.manager.flutter/cache/APKTOOL8695238207022987995.tmp, -0, arsc, -I, /data/user/0/app.revanced.manager.flutter/cache/patcher/tmp-WCQICQ/cache/1.apk, --manifest, /data/user/0/app.revanced.manager.flutter/cache/patcher/tmp-WCQICQ/cache/AndroidManifest.xml, /data/user/0/app.revanced.manager.flutter/cache/patcher/tmp-WCQICQ/cache/build/resources.zip]
    at brut.util.OS.exec(OS.java:99)
    at brut.androlib.res.AndrolibResources.aapt2Package(AndrolibResources.java:490)
    ... 6 more

Screenshots or videos

No response

Solution

No response

Additional context

Using a tablet Amazon Fire HD8 10th generation (2020) running FireOs 7.3.1.7, which is based on Android Pie 9

Acknowledgements

ghost commented 2 years ago

ARMv7 is not supported by ReVanced Manager currently. Please use a different device to patch.

nach0 commented 2 years ago

Thanks for the quick response. I will try that. Just a comment (I don't really understand about microchip architectures), according to Amazon's website this tablet carries an ARM Cortex-A53 (2.0 GHZ) CPU, which ARM says is Armv8-A. But funny enough ReVanced manager's About section says "Arch: armeabi-v7a".

ghost commented 2 years ago

Android seems to report v7, not ReVanced Manager.

Zule77 commented 1 year ago

Hey, I'm sorry for reviving old post, and I'm kinda stupid for this stuff. Let's say I patch it on my gf phone which is not using armv7. Can I then somehow transfer the app from my gf phone to my phone and make it work that way?

oSumAtrIX commented 1 year ago

@Zule77 Please check the docs here.

Zule77 commented 1 year ago

@Zule77 Please check the docs here.

Thanks! Yea I can see arm64 and android 8+ is required. But I was wondering if it would work if installed on arm64 android 8+ device and then somehow transfered to my phone 😆

oSumAtrIX commented 1 year ago

Yes it is possible.

Zule77 commented 1 year ago

Yes it is possible.

Thank you. So basically I follow the instructions you sent me in the proper device, and then after it's done I somehow transfer the app to my phone? Maybe any tips how would I go about transferring the app after its installed on proper device?

Ushie commented 1 year ago

After a successful patch, a 3 dot menu is shown on the top right, there will be an option to "Export APK" in it

Zule77 commented 1 year ago

After a successful patch, a 3 dot menu is shown on the top right, there will be an option to "Export APK" in it

Awesome thank you