customerio / customerio-reactnative

MIT License
23 stars 11 forks source link

Value of type 'MessagingInApp' has no member 'dismissMessage' #141

Closed beqramo closed 1 year ago

beqramo commented 1 year ago
image

Guys please, I can't even build the app now.

version: 2.4.0

mrehan27 commented 1 year ago

Hi @beqramo. Sorry for the inconvenience. 2.4.0 release requires a method from iOS SDK that was added in 2.6.0. Running the following command in project root directory should fix this for you.

pod update --repo-update --project-directory=ios

Please let us know if the issue still exists or if you have more questions.

OtamNitram commented 1 year ago

Hello @mrehan27,

I'm currently facing a similar issue with the 'MessagingInApp' having no member 'dismissMessage' for version 2.4.0 of your SDK.

In response to your advice on the thread, I've attempted to resolve the problem by running the 'pod update --repo-update --project-directory=ios' command in the root directory. Unfortunately, the issue still persists.

Can you offer any further suggestions or alternative troubleshooting methods we might try to fix this issue? Your assistance would be greatly appreciated.

Thank you in advance for your continued support.

mrehan27 commented 1 year ago

Hi @OtamNitram. Sorry to hear that. Can you please confirm if your ios/Podfile.lock was updated after running pod update? It should look something like follows:

  - customerio-reactnative (2.4.0):
    - CustomerIO/MessagingInApp (~> 2)
    - CustomerIO/Tracking (~> 2)
    - React-Core
- CustomerIO/MessagingInApp (2.6.1):
    - CustomerIOMessagingInApp (= 2.6.1)
  - CustomerIO/MessagingPushAPN (2.6.1):
    - CustomerIOMessagingPushAPN (= 2.6.1)
  - CustomerIO/Tracking (2.6.1):
    - CustomerIOTracking (= 2.6.1)
  - CustomerIOCommon (2.6.1)
  - CustomerIOMessagingInApp (2.6.1):
    - CustomerIOTracking (= 2.6.1)
    - Gist (= 3.2.2)
  - CustomerIOMessagingPush (2.6.1):
    - CustomerIOTracking (= 2.6.1)
  - CustomerIOMessagingPushAPN (2.6.1):
    - CustomerIOMessagingPush (= 2.6.1)
  - CustomerIOTracking (2.6.1):
    - CustomerIOCommon (= 2.6.1)

If your lock file doesn't look like above, please make sure to update ios/Podfile as suggested in our docs

For APNS

 pod 'CustomerIO/MessagingPushAPN', '~> 2'

For FCM

 pod 'CustomerIO/MessagingPushFCM', '~> 2'
 pod 'Firebase'
 pod 'FirebaseMessaging'

After updating, please re-run the the command in your project root and let us know if this doesn't fix the problem for you.

pod update --repo-update --project-directory=ios
beqramo commented 1 year ago

Hi, I had this: pod 'CustomerIO/MessagingPushAPN', '~> 2.1.2'

If you are changing such an important thing please add it to a changelog. It isn't a correct thing to check your docs for installation every time you update the package.

I will change it and will post it here, Please keep in mind the above statement. Thanks

beqramo commented 1 year ago

I will select 2.6.1 version as I don't want automatic updates to affect the app in the future

beqramo commented 1 year ago
image

I can't install 2.6.1, only 2.6.0 is available for me

beqramo commented 1 year ago

it builds now Thanks

OtamNitram commented 1 year ago

Works for me too. Thanks!!

mrehan27 commented 1 year ago

@beqramo Great to know your issue is resolved now. I would suggest keep messaging dependency as mentioned in the docs

APNS

pod 'CustomerIO/MessagingPushAPN', '~> 2'

The reason I suggest that is, next time, if there is a newer react native release which targets a later version of the native SDK. If you install that release, and your CustomerIO/MessagingPushAPN is on older version, you may start getting a version mismatch error.

But if you have the ~ 2 format, just running pod update --repo-update would update your CustomerIO/MessagingPushAPN as well and all versions would be synced.

I hope this clarifies your query. I will go ahead and close this issue as this is fixed for you.

beqramo commented 1 year ago

Yes, What I mean is that during the installation of your package, in the docs it was saying exactly how I had that version. And after that, it looks like it was changed but it wasn't described in the changelog.

I want to do it like that yes but we have a big user base so I want to be super careful about what updates I'm releasing.

Thanks

mrehan27 commented 1 year ago

Thank you for sharing your concerns, @beqramo. We understand the importance of clear documentation and transparent updates, and I apologize if there was any confusion in this case.

We're definitely mindful of this, and I want to ensure we are discussing this internally to improve the experience. We appreciate your understanding and patience as we work to address your concerns.

vikrant-kukadiya commented 1 year ago

Hi, @mrehan27 I'm using this "customerio-reactnative": "^2.2.0" in my app. I tried all the above solutions but not getting success. So is there any other option to solve this issue with the same version or do I need to update my customerio-reactnative?

mrehan27 commented 1 year ago

Hi @vikrant-k-simformsolutions. We sincerely apologize for the inconvenience caused due to this. We have released a fix in 2.4.2 that should resolve the problem for you. Please update your SDK to the latest version and run pod update as suggested above, and you should no longer encounter this issue.

Thank you for bringing this to our attention, and we appreciate your patience.