wonday / react-native-pdf

A <Pdf /> component for react-native
MIT License
1.6k stars 557 forks source link

Android build error on latest version react-native-pdf@6.7.5 #829

Open dgrover-spotnana opened 7 months ago

dgrover-spotnana commented 7 months ago

What react-native version are you using? 0.72.12

What react-native-pdf version are you using? 6.7.5

What react-native-blob-util version are you using? 0.19.9

What platform does your issue occur on? (android/ios/both) android

Describe your issue as precisely as possible : 1) Steps to reproduce the issue or to explain in which case you get the issue

  yarn add react-native-pdf react-native-blob-util
  yarn android

2) Interesting logs

  FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkStagingDebugAarMetadata'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
   > 2 issues were found when checking AAR metadata:

       1.  Dependency 'androidx.core:core-ktx:1.12.0' requires libraries and applications that
           depend on it to compile against version 34 or later of the
           Android APIs.

           :app is currently compiled against android-33.

           Also, the maximum recommended compile SDK version for Android Gradle
           plugin 7.4.2 is 33.

           Recommended action: Update this project's version of the Android Gradle
           plugin to one that supports 34, then update this project to use
           compileSdkVerion of at least 34.

           Note that updating a library or application's compileSdkVersion (which
           allows newer APIs to be used) can be done separately from updating
           targetSdkVersion (which opts the app in to new runtime behavior) and
           minSdkVersion (which determines which devices the app can be installed
           on).

       2.  Dependency 'androidx.core:core:1.12.0' requires libraries and applications that
           depend on it to compile against version 34 or later of the
           Android APIs.

           :app is currently compiled against android-33.

           Also, the maximum recommended compile SDK version for Android Gradle
           plugin 7.4.2 is 33.

           Recommended action: Update this project's version of the Android Gradle
           plugin to one that supports 34, then update this project to use
           compileSdkVerion of at least 34.

           Note that updating a library or application's compileSdkVersion (which
           allows newer APIs to be used) can be done separately from updating
           targetSdkVersion (which opts the app in to new runtime behavior) and
           minSdkVersion (which determines which devices the app can be installed
           on).
k-saparia commented 6 months ago

Getting same error!

tmKnight01 commented 6 months ago

I also meet the issue Do i need upgrade my compilSDK version?

prashanthkumar1993 commented 6 months ago

I am also facing the same issue. Any resolution made?

Lucasmg37 commented 6 months ago

I was getting the same error. I tried update compileSdkVersion to 34, but I had some problems with kotlin version. I prefered use a previous version and it is working fine.

Kaung-Htet-Hein commented 6 months ago

the build succeed when i change minSdk to 24, but i don't want to change

khokanuzzman commented 6 months ago

Is there any solution?

khokanuzzman commented 6 months ago

the build succeed when i change minSdk to 24, but i don't want to change

not working for me.

Kaung-Htet-Hein commented 6 months ago

the build succeed when i change minSdk to 24, but i don't want to change

not working for me.

can you try changing compileSDK and targetSDK to 34?

khokanuzzman commented 6 months ago

the build succeed when i change minSdk to 24, but i don't want to change

not working for me.

can you try changing compileSDK and targetSDK to 34?

which gradle version did you use? i am using gradle-7.5.1-all.zip

khokanuzzman commented 6 months ago

Yes, it's working. I have just changed the compile SDK to 34.

Lucasmg37 commented 6 months ago

I was getting the same error. I tried update compileSdkVersion to 34, but I had some problems with kotlin version. I prefered use a previous version and it is working fine.

which version did use im getting the same error

"react-native-pdf": "6.7.4",

k-saparia commented 6 months ago

I think, updating gradle or compileSdkVersion is not going to be solid solution and with that being said, other dependency might stop working and library itself should be compatible with new react-native releases.

cc: @wonday

mduc-dev commented 6 months ago

I read the source and saw implementation 'io.legere:pdfiumandroid:1.0.19' in that package from android is using core.ktx:1.12.0 @wonday

ganpatmalekar commented 6 months ago

Getting same error, can anyone provide exact solution for it? @wonday

Jidahan commented 6 months ago

the build succeed when i change minSdk to 24, but i don't want to change I changed it to 24, but some other functions failed. Is there any final solution @Kaung-Htet-Hein

chanakanaveen commented 6 months ago

I am also facing the same issue. Any resolution made?

chanakanaveen commented 6 months ago

I am also facing the same issue. Any resolution made?

after removingreact-native-pdf and react-native-blob-util from package.json and run npm i after app build successful without errors

ibovegar commented 6 months ago

Same issue here as well.

ils-anwarshah commented 5 months ago

I had the same issues, downgrading the version working fine for me

yarn add react-native-pdf@6.6.2

and added android/app/build.gradle android{ packagingOptions { pickFirst 'lib/x86/libc++_shared.so' pickFirst 'lib/x86_64/libjsc.so' pickFirst 'lib/arm64-v8a/libjsc.so' pickFirst 'lib/arm64-v8a/libc++_shared.so' pickFirst 'lib/x86_64/libc++_shared.so' pickFirst 'lib/armeabi-v7a/libc++_shared.so' } }

saisrinivas-nineleaps commented 5 months ago

I changed my minSdk to 24 and the compileSdk,targetSdk to 34 in android/build.gradle file and it builds fine even when the react-native-pdf version is 6.7.5

NewDawnFades21 commented 5 months ago

I had the same issues, downgrading the version working fine for me

yarn add react-native-pdf@6.6.2

and added android/app/build.gradle android{ packagingOptions { pickFirst 'lib/x86/libc++_shared.so' pickFirst 'lib/x86_64/libjsc.so' pickFirst 'lib/arm64-v8a/libjsc.so' pickFirst 'lib/arm64-v8a/libc++_shared.so' pickFirst 'lib/x86_64/libc++_shared.so' pickFirst 'lib/armeabi-v7a/libc++_shared.so' } }

it worked!! ty so much

migtarx commented 4 months ago

Can you guys confirm what version of react-native-blob-util are you using?? Downgrading to 6.6.2 seams to fix part of the problem for me, but then got Execution failed for task ':react-native-blob-util:processDebugManifest'.

ils-anwarshah commented 4 months ago

Can you guys confirm what version of react-native-blob-util are you using?? Downgrading to 6.6.2 seams to fix part of the problem for me, but then got Execution failed for task ':react-native-blob-util:processDebugManifest'.

"react-native-blob-util": "^0.19.9", "react-native": "0.72.0",

sunilksamanta commented 4 months ago
image

Try this in your app.json / app.config.js

[
       "expo-build-properties",
        {
          "android": {
            "compileSdkVersion": 34,
            "targetSdkVersion": 34,
            "buildToolsVersion": "34.0.0"
          }
        }
]
migtarx commented 4 months ago

Maybe not the best solution, but downgraded to the first compatible version of RN 0.62 of both react-native-blob-util (0.13.7) and react-native-pdf (6.4.0) due to my project is in version 0.68 of RN and currently cant upgrade to more recent versions and cant even touch the compileSdkVersion because it breaks my project. With react-native-blob-util (0.13.7) and react-native-pdf (6.4.0) i'm working perfectly fine. Maybe some of you can try with more recent versions.

rahul7007 commented 4 months ago

I had the same issues, downgrading the version working fine for me

yarn add react-native-pdf@6.6.2

and added android/app/build.gradle android{ packagingOptions { pickFirst 'lib/x86/libc++_shared.so' pickFirst 'lib/x86_64/libjsc.so' pickFirst 'lib/arm64-v8a/libjsc.so' pickFirst 'lib/arm64-v8a/libc++_shared.so' pickFirst 'lib/x86_64/libc++_shared.so' pickFirst 'lib/armeabi-v7a/libc++_shared.so' } }

This works for me which changing amy other config. my RN ver is: 0.72.7

MarioSilvaPrada commented 4 months ago

For me the fix was removing the package name in node_modules/react-native-pdf/android/src/main/AndroidManifest.xml and adding that same namespace in node_modules/react-native-pdf/android/build.gradle like this:

android {
    namespace "org.wonday.pdf"
...
}
ar-jamal commented 3 months ago

I changed my minSdk to 24 and the compileSdk,targetSdk to 34 in android/build.gradle file and it builds fine even when the react-native-pdf version is 6.7.5

this is the best and full proof solution in my opinion. every one must try this one. and thanx @saisrinivas-nineleaps