FacebookComponents icon indicating copy to clipboard operation
FacebookComponents copied to clipboard

Does anyone have a clue how to update these bindings to latest versions?

Open czmirek opened this issue 7 months ago • 9 comments

I've browsed existing forks but it doesn't seem anyone has been successful.

I found some other NuGets but neither are open-source and I'm nervous of including some DLL that is potentially mining bitcoin in background or some other nasty stuff.

I just need an updated facebook-login library because this repo is pretty far behind already. So I created a new solution and I'm attempting to include all dependencies for facebook login. Is this the right approach? Can someone please just help me with the issues I have with trying to do the bindings myself?

  • facebook login 16.3.0 - Android Binding Library from AAR
    • appcompat 1.1.0.2 - from NuGet. There is first thing I don't understand, there are NuGet versions 1.1.0, 1.1.0.1, 1.1.0.2 but the .1 and .2 versions don't exist in Maven so I guess this is just some kind of dependency update? I guess the last version should be used so I'm using 1.1.0.2
    • facebook-core 16.3.0 - referenced Android Binding Library AAR
      • ... (omitted for brevity)
      • facebook-bolts 16.3.0 - Android Binding Library from AAR
        • annotation 1.1.0
        • core-ktx --- the version in Maven is 1.3.2 but there is no NuGet with this version, only 1.1.0 or 1.5.0 so I guess this has to be Android Binding Library from AAR as well
          • dependencies of this are all in NuGet
          • So I try to build this. I'm getting warnings
            • The Java type '$' could not be found (are you missing a Java reference jar/aar or a Java binding library NuGet?)
            • warning BG8606: Some types or members could not be bound because referenced Java types could not be found. See the 'java-resolution-report.log' file for details.
          • So I look at java-resolution-report.log and I see the first line.
The method '[Method] android.animation.Animator.AnimatorListener addListener$default(android.animation.Animator obj, kotlin.jvm.functions.Function1 onEnd, kotlin.jvm.functions.Function1 onStart, kotlin.jvm.functions.Function1 onCancel, kotlin.jvm.functions.Function1 onRepeat, int p5, java.lang.Object p6)' was removed because its name contains a dollar sign.

So I open the decompiler for Java JD-GUI and open the AAR ... but I cannot find any method called addListener$default. I know that in this step I should write the XML transformation somehow... but I'm completely failing even on identifying what I am supposed to write the transformation for.

So for any binding gurus, I'd appreciate any advice or hint to go the right direction.

image

czmirek avatar Jan 12 '24 23:01 czmirek