Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: iOS Rich Media (Images) not working #360

Open
2 of 3 tasks
bnoffer opened this issue Jan 24, 2023 · 2 comments
Open
2 of 3 tasks

[Bug]: iOS Rich Media (Images) not working #360

bnoffer opened this issue Jan 24, 2023 · 2 comments
Assignees

Comments

@bnoffer
Copy link

bnoffer commented Jan 24, 2023

What happened?

We are planning on switching from our custom Push Backend to OneSignal and one of the most important features for us is the possibility to send Images with our notifications. Sadly using SDKs 4.3.0 and 4.3.1 we are unable to do so for iOS, Android is working perfect. I triple checked the Setup Guide and iOS Troubleshooting steps and can not find any errors. I even cross-checked with my previous NotificationExtension, which is working fine. The images used work with our custom solution, but not with OneSignal.

Steps to reproduce?

1. Followed the Xamarin Quick Setup Steps
2. Created a Push Notification for Test Subscription inkl. Media Image Url
3. Check if image is shown on device

What did you expect to happen?

Image should be shown on iOS and Android.

OneSignal Xamarin SDK version

Release 4.3.1

Which platform(s) are affected?

  • iOS
  • Android

Relevant log output

Visual Studio Debug information

Visual Studio Community 2022 for Mac Version 17.4.3 (build 21) Installation UUID: 2ece858b-8a39-46e3-8809-fb0e7a130ade

Runtime
.NET 6.0.12 (64-bit)
Architecture: Arm64

Roslyn (Language Service)
4.4.0-6.22578.12+3c6ab8e1715e5b080fb7bb77070810ab71e09387

NuGet
Version: 6.3.1.1

.NET SDK (Arm64)
SDK: /usr/local/share/dotnet/sdk/7.0.102/Sdks
SDK Versions:
7.0.102
7.0.101
7.0.100
6.0.405
6.0.404
6.0.403
6.0.402
6.0.401
6.0.400
6.0.302
MSBuild SDKs: /Applications/Visual Studio.app/Contents/MonoBundle/MSBuild/Current/bin/Sdks

.NET SDK (x64)
SDK Versions:
3.1.426
3.1.425
3.1.424
3.1.423
3.1.422
3.1.421

.NET Runtime (Arm64)
Runtime: /usr/local/share/dotnet/dotnet
Runtime Versions:
7.0.2
7.0.1
7.0.0
6.0.13
6.0.12
6.0.11
6.0.10
6.0.9
6.0.8
6.0.7

.NET Runtime (x64)
Runtime: /usr/local/share/dotnet/x64/dotnet
Runtime Versions:
3.1.32
3.1.31
3.1.30
3.1.29
3.1.28
3.1.27

Xamarin.Profiler
Version: 1.8.0.19
Location: /Applications/Xamarin Profiler.app/Contents/MacOS/Xamarin Profiler

Updater
Version: 11

Apple Developer Tools
Xcode 14.1 (21534.1)
Build 14B47b

Xamarin.Mac
Version: 9.0.0.27 (Visual Studio Community)
Hash: 933c6c2c9
Branch: xcode14.1
Build date: 2022-11-22 02:00:36-0500

Xamarin.iOS
Version: 16.1.1.27 (Visual Studio Community)
Hash: 933c6c2c9
Branch: xcode14.1
Build date: 2022-11-22 02:00:37-0500

Xamarin Designer
Version: 17.4.0.136
Hash: d49c9ff6d3
Branch: remotes/origin/d17-4
Build date: 2023-01-12 17:32:30 UTC

Xamarin.Android
Version: 13.1.0.1 (Visual Studio Community)
Commit: xamarin-android/d17-4/13ba222
Android SDK: /Users/ban/Library/Developer/Xamarin/android-sdk-macosx
Supported Android versions:
12.1 (API level 32)
12.0 (API level 31)
11.0 (API level 30)
9.0 (API level 28)
13.0 (API level 33)

SDK Command-line Tools Version: 7.0
SDK Platform Tools Version: 33.0.3
SDK Build Tools Version: 33.0.0

Build Information:
Mono: a96bde9
Java.Interop: xamarin/java.interop@fcc33ce2
SQLite: xamarin/sqlite@23e1ae7
Xamarin.Android Tools: xamarin/xamarin-android-tools@0be567a

Microsoft Build of OpenJDK
Java SDK: /Library/Java/JavaVirtualMachines/microsoft-11.jdk
11.0.16.1
Android Designer EPL code available here:
https://github.com/xamarin/AndroidDesigner.EPL

Eclipse Temurin JDK
Java SDK: /Library/Java/JavaVirtualMachines/temurin-8.jdk
1.8.0.302
Android Designer EPL code available here:
https://github.com/xamarin/AndroidDesigner.EPL

Android SDK Manager
Version: 17.4.0.54
Hash: 6eabb9e
Branch: remotes/origin/d17-4
Build date: 2023-01-12 17:32:35 UTC

Android Device Manager
Version: 0.0.0.1206
Hash: 886af39
Branch: 886af39
Build date: 2023-01-12 17:32:35 UTC

Build Information
Release ID: 1704030021
Git revision: 26eac6764d85f12fe50ee0d45a7cd0b266be7b23
Build date: 2023-01-12 17:30:14+00
Build branch: release-17.4
Build lane: release-17.4

Operating System
Mac OS X 13.1.0
Darwin 22.2.0 Darwin Kernel Version 22.2.0
Fri Nov 11 02:03:51 PST 2022
root:xnu-8792.61.2~4/RELEASE_ARM64_T6000 arm64

Debug Log

2023-01-24 11:43:45.196324+0100 App.iOS[88687:5124015] VERBOSE: setLaunchOptions() called with launchOptions: (null)! 2023-01-24 11:43:45.196468+0100 App.iOS[88687:5124015] VERBOSE: setLaunchOptions(id) finished, checking if appId has been set before proceeding...! 2023-01-24 11:43:45.196547+0100 App.iOS[88687:5124015] INFO: launchOptions set, initializing OneSignal with cached appId: '<--APPID->>'. 2023-01-24 11:43:45.196727+0100 App.iOS[88687:5124015] VERBOSE: setAppId(id) called with appId: <--APPID->>! 2023-01-24 11:43:45.196802+0100 App.iOS[88687:5124015] VERBOSE: setAppId(id) finished, checking if launchOptions has been set before proceeding...! 2023-01-24 11:43:45.196880+0100 App.iOS[88687:5124015] VERBOSE: setAppId(id) successful and launchOptions are set, initializing OneSignal... 2023-01-24 11:43:45.197549+0100 App.iOS[88687:5124015] DEBUG: OneSignal SessionManager initSessionFromCache 2023-01-24 11:43:45.197871+0100 App.iOS[88687:5124015] DEBUG: InAppMessageTracker initInfluencedTypeFromCache: OSChannelTracker tag: iam_id influenceType: UNATTRIBUTED indirectIds: (null) directIds: (null) 2023-01-24 11:43:45.198081+0100 App.iOS[88687:5124015] DEBUG: NotificationTracker initInfluencedTypeFromCache: OSChannelTracker tag: notification_id influenceType: UNATTRIBUTED indirectIds: (null) directIds: (null) 2023-01-24 11:43:45.198606+0100 App.iOS[88687:5124015] DEBUG: SessionManager restored from cache with influences: ( "OSInfluence channel: IN_APP_MESSAGE influenceType: DISABLED ids:(null)", "OSInfluence channel: NOTIFICATION influenceType: DISABLED ids:(null)" ) 2023-01-24 11:43:45.199245+0100 App.iOS[88687:5124015] DEBUG: Downloading iOS parameters for this application 2023-01-24 11:43:45.201848+0100 App.iOS[88687:5124015] VERBOSE: HTTP Request (OSRequestGetIosParams) with URL: https://api.onesignal.com/apps/<--APPID->>/ios_params.js?player_id=<--PLAYERID-->, with parameters: { "player_id" : "<--PLAYERID-->" } 2023-01-24 11:43:45.215046+0100 App.iOS[88687:5124015] VERBOSE: registerForPushNotifications Called:waitingForApnsResponse: 0 2023-01-24 11:43:45.215898+0100 App.iOS[88687:5124015] VERBOSE: Firing registerForRemoteNotifications 2023-01-24 11:43:45.216289+0100 App.iOS[88687:5124015] VERBOSE: registerUser:waitingForApnsResponse: 1 2023-01-24 11:43:45.216372+0100 App.iOS[88687:5124015] VERBOSE: registerUser:initializationTime: (null) 2023-01-24 11:43:45.216520+0100 App.iOS[88687:5124015] VERBOSE: registerUserAfterDelay 2023-01-24 11:43:45.274865+0100 App.iOS[88687:5124015] VERBOSE: registering for Application Lifecycle notifications 2023-01-24 11:43:45.275501+0100 App.iOS[88687:5124015] VERBOSE: setAppId(id) called with appId: <--APPID->>! 2023-01-24 11:43:45.275583+0100 App.iOS[88687:5124015] VERBOSE: setAppId(id) finished, checking if launchOptions has been set before proceeding...! 2023-01-24 11:43:45.275660+0100 App.iOS[88687:5124015] VERBOSE: setAppId(id) successful and launchOptions are set, initializing OneSignal... 2023-01-24 11:43:45.276236+0100 App.iOS[88687:5124015] VERBOSE: registerForPushNotifications Called:waitingForApnsResponse: 1 2023-01-24 11:43:45.276429+0100 App.iOS[88687:5124015] VERBOSE: registerUser:waitingForApnsResponse: 1 2023-01-24 11:43:45.281376+0100 App.iOS[88687:5124015] VERBOSE: registerUser:initializationTime: 2023-01-24 10:43:45 +0000 2023-01-24 11:43:45.281500+0100 App.iOS[88687:5124015] VERBOSE: registerUserAfterDelay 2023-01-24 11:43:45.282634+0100 App.iOS[88687:5124015] VERBOSE: startLocationSharedWithFlag called with status: 0 2023-01-24 11:43:45.282793+0100 App.iOS[88687:5124015] VERBOSE: startLocationSharedWithFlag set false, clearing last location! 2023-01-24 11:43:45.796539+0100 App.iOS[88687:5124121] VERBOSE: network response (OSRequestGetIosParams): { outcomes = { direct = { enabled = 0; }; indirect = { enabled = 0; "notification_attribution" = { limit = 10; "minutes_since_displayed" = 60; }; }; unattributed = { enabled = 0; }; }; "receive_receipts_enable" = 0; "uses_provisional_auth" = 0; } 2023-01-24 11:43:46.779266+0100 App.iOS[88687:5124015] VERBOSE: updateNotificationTypes called: 15 2023-01-24 11:43:46.779440+0100 App.iOS[88687:5124015] VERBOSE: startedRegister: 1 2023-01-24 11:43:46.779681+0100 App.iOS[88687:5124015] VERBOSE: getNotificationTypes:mSubscriptionStatus: -1 2023-01-24 11:43:46.782952+0100 App.iOS[88687:5124015] VERBOSE: getNotificationTypes:mSubscriptionStatus: -1 2023-01-24 11:43:46.784565+0100 App.iOS[88687:5124015] VERBOSE: updateNotificationTypes called: 15 2023-01-24 11:43:46.784651+0100 App.iOS[88687:5124015] VERBOSE: startedRegister: 1 2023-01-24 11:43:46.784763+0100 App.iOS[88687:5124015] VERBOSE: getNotificationTypes:mSubscriptionStatus: -1 2023-01-24 11:43:46.786232+0100 App.iOS[88687:5124015] VERBOSE: getNotificationTypes:mSubscriptionStatus: -1

UPDATE
I continued testing and on the device console you can see that the Extension is triggered and fails with this event:

error: Failed to load AOT module 'OneSignal.iOS.Binding' while running in aot-only mode: compiled against GC , while the current runtime uses GC sgen.
.

Code of Conduct

  • I agree to follow this project's Code of Conduct
@bnoffer
Copy link
Author

bnoffer commented Jan 26, 2023

I found a temporary solution:

I had the issue that Debugging on Device did not work for me for a while now and I basically fully cleared the Project and removed the App from my device and then I got a deployment failure:

DuplicateIdentifier: Found bundle at /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.VJI4gJ/extracted/App.iOS.app/Frameworks/Xamarin.framework with the same identifier (xamarin.ios.xamarin-framework) as bundle at /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.VJI4gJ/extracted/App.iOS.app/Frameworks/Xamarin-debug.framework

I googled for this and found xamarin/xamarin-macios#6920

Using the workaround mentioned in the following comment solved the issue for me: xamarin/xamarin-macios#6920 (comment) for Debugging on Device and in Release mode.

Since this is only a workaround, and I don't know yet if it is a Xamarin.iOS issue or caused by the Nuget, I will leave this issue open.

@brismithers
Copy link
Contributor

thanks @bnoffer for the update. I will continue trying to reproduce what you are seeing and will let you know what I come up with!

@brismithers brismithers self-assigned this Jan 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants