TobiasBuchholz / Plugin.Firebase

Wrapper around the native Android and iOS Firebase Xamarin SDKs
MIT License
211 stars 49 forks source link

Bitcode is deprecated in iOS. facing issue while implementing this plugin. #146

Closed faheem-riaz closed 1 year ago

faheem-riaz commented 1 year ago

I am using the latest version of plugin.firebase 1.3.0. Apple has deprecated the bitcode. So I am able to created a build but cannot be able to publish the app. I am getting errors that are shown in image below. Firebase packages are upgraded I believe. Please update your package so that we can release our app on iOS 16 and above. Screenshot 2023-03-09 at 6 58 36 AM

hattmann commented 1 year ago

Same issue here!

Using plugin.firebase.temp fixes this issues for me.

image

Are there plans for a new release without bitcode in the near future?

stoff99 commented 1 year ago

Hello,

i have the same issue right now with my newest release. Posteingang

@hattmann what do you mean with Using plugin.firebase.temp fixes this issues for me. ?

hattmann commented 1 year ago

Yes, give it a try

Stefan Habacher @.***> schrieb am Do., 9. März 2023, 12:21:

Hello,

i have the same issue right now with my newest release. [image: Posteingang] https://user-images.githubusercontent.com/892820/224008290-30a8201e-789b-4289-86dd-c53a841f3ad8.png

@hattmann https://github.com/hattmann what do you mean with Using plugin.firebase.temp fixes this issues for me. ?

— Reply to this email directly, view it on GitHub https://github.com/TobiasBuchholz/Plugin.Firebase/issues/146#issuecomment-1461838843, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABCD6JKEM3CA3CZ4FT3LOUTW3G4J5ANCNFSM6AAAAAAVUPNSVM . You are receiving this because you were mentioned.Message ID: @.***>

stoff99 commented 1 year ago

@hattmann i will, but i don't know what you mean with plugin.firebase.temp. Can you explain what you did?

faheem-riaz commented 1 year ago

@hattmann Yeah give some idea how to use plugin.firebase.temp

hattmann commented 1 year ago

Here ist the nuget and the information:

https://www.nuget.org/packages/Plugin.Firebase.Tmp

For me just adding this nuget and after that removing the original nuget helped. I just need the Firebase Push function without the Facebook and authorisation libs.

stoff99 commented 1 year ago

Hi @hattmann, thx for that. I can confirm its working with .net7 maui ios aswell. For me its the same, i only need the push notification service.

But still, is this the final solution to avoid this problem @TobiasBuchholz ?

faheem-riaz commented 1 year ago

@hattmann Plugin.Firebase.temp does not contain crashlytics. Any suggestions what should I use now? @TobiasBuchholz @stoff99

mw6201 commented 1 year ago

When adding Plugin.FireBase.Tmp package instead of Plugin.FireBase the Plugin.FireBase.Auth Namespace is missing. Any suggestions?

hattmann commented 1 year ago

I think you have to wait until the author provides a new release that adresses this issue.

TobiasBuchholz commented 1 year ago

Hi! Please take a look at https://github.com/TobiasBuchholz/Plugin.Firebase/issues/95#issuecomment-1347248607 to understand the problem with bitcode on iOS. I'm currently working on a version of the firebase plugin, that splits all features into single nuget packages as suggested by vhugogarcia in https://github.com/TobiasBuchholz/Plugin.Firebase/issues/115#issuecomment-1405163230, so you won't have to include auth or facebook related packages which are causing the bitcode issue. Until then you'll need to follow nebular2s advice: https://github.com/TobiasBuchholz/Plugin.Firebase/issues/95#issuecomment-1348602401

TobiasBuchholz commented 1 year ago

I'll close this issue since it's a duplication of https://github.com/TobiasBuchholz/Plugin.Firebase/issues/95.

tranb3r commented 1 year ago

Hi! Please take a look at #95 (comment) to understand the problem with bitcode on iOS. I'm currently working on a version of the firebase plugin, that splits all features into single nuget packages as suggested by vhugogarcia in #115 (comment), so you won't have to include auth or facebook related packages which are causing the bitcode issue. Until then you'll need to follow nebular2s advice: #95 (comment)

@TobiasBuchholz Is the split of all features really necessary? As I said here the trimmer is taking good care of removing the code that is not used. Except for the Facebook SDK ; and maybe a few things that should be tested again as I mentioned here. What do you think?

hattmann commented 1 year ago

@tranb3r TrimMode=Full is the default in. NET7, the bitcode is include despite it. Please see the ITunes Connect Failures I posted before

stoff99 commented 1 year ago

@faheem-riaz i just can tell you a workaround till you wait for a fix and working with the temp package. You could use MS App Center crashlytics meanwhile... https://appcenter.ms/ Its super simple to implement, just create a project in AppCenter and follow the instructions.

tranb3r commented 1 year ago

@tranb3r TrimMode=Full is the default in. NET7, the bitcode is include despite it. Please see the ITunes Connect Failures I posted before

TrimMode=Full is the default in net7, but not for maui. You have to opt-in to full mode. At least for android, but I guess it's the same for iOS. https://learn.microsoft.com/en-us/dotnet/maui/migration/android-projects?view=net-maui-7.0#linker

Also, the bitcode comes from the Facebook SDK. This one is not completely trimmed (even in full mode). This is why it was suggested to remove this SDK from this plugin.

TobiasBuchholz commented 1 year ago

@TobiasBuchholz Is the split of all features really necessary? As I said https://github.com/TobiasBuchholz/Plugin.Firebase/issues/115#issuecomment-1452498136 the trimmer is taking good care of removing the code that is not used. Except for the Facebook SDK ; and maybe a few things that should be tested again as I mentioned https://github.com/TobiasBuchholz/Plugin.Firebase/issues/144#issue-1608344577. What do you think?

I'm almost finished splitting up all the features into single nuget packages and it looks good so far. There will be a package that bundles all the separated nuget packages into a single one so the plugin can be used like before. On the other hand people who don't trust the trimmer or who are encountering something like build issues not related to the feature they would actually like to use can just install the separated nuget package and might get better results.