[ad_1]
नमस्ते,
मैं फायरबेस नोटिफिकेशन टैब इवेंट पर विशेष पेज पर नेविगेट करने का प्रयास कर रहा हूं, विशिष्ट पेज पर नेविगेट करने के अलावा हर चीज ठीक चल रही है, इवेंट ट्रिगर हो रहा है लेकिन नेविगेट नहीं हो रहा है, मैं इसे कैसे ठीक कर सकता हूं। गहराई से सराहना करेंगे.
सम्मान,
मैंने क्या प्रयास किया है:
using Microsoft.Maui.LifecycleEvents; using Plugin.Firebase.Auth; using Plugin.Firebase.Bundled.Shared; using Plugin.Firebase.Crashlytics; using CommunityToolkit.Maui; using CommunityToolkit.Maui.Storage; using Plugin.Firebase.CloudMessaging; #if IOS using Plugin.Firebase.Bundled.Platforms.iOS; #else using Plugin.Firebase.Bundled.Platforms.Android; #endif using Microsoft.Extensions.Logging; //using Plugin.MauiMTAdmob; namespace LatestMobilePrices; public static class MauiProgram { public static MauiApp CreateMauiApp() { var builder = MauiApp.CreateBuilder(); builder .UseMauiApp<App>() .UseMauiCommunityToolkit() .RegisterFirebaseServices() //.UseMauiMTAdmob() .ConfigureFonts(fonts => { fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular"); fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold"); }); #if DEBUG builder.Logging.AddDebug(); #endif builder.Services.AddSingleton<IFileSaver>(FileSaver.Default); builder.Services.AddTransient<savepage>(); return builder.Build(); } private static MauiAppBuilder RegisterFirebaseServices(this MauiAppBuilder builder) { builder.ConfigureLifecycleEvents(events => { #if IOS events.AddiOS(iOS => iOS.FinishedLaunching((app, launchOptions) => { CrossFirebase.Initialize(CreateCrossFirebaseSettings()); CrossFirebaseCrashlytics.Current.SetCrashlyticsCollectionEnabled(true); return false; })); #else events.AddAndroid(android => android.OnCreate((activity, _) => CrossFirebase.Initialize(activity, CreateCrossFirebaseSettings()))); CrossFirebaseCrashlytics.Current.SetCrashlyticsCollectionEnabled(true); CrossFirebaseCloudMessaging.Current.NotificationTapped+=(sender,e)=> { System.Diagnostics.Debug.WriteLine("tabbed"); Shell.Current.GoToAsync(nameof(savepage)); }; #endif }); builder.Services.AddSingleton(_ => CrossFirebaseAuth.Current); return builder; } private static CrossFirebaseSettings CreateCrossFirebaseSettings() { return new CrossFirebaseSettings( isAuthEnabled: true, isCloudMessagingEnabled: true, isAnalyticsEnabled: true); } }
समाधान 1
हे मित्र!
अपनी फ़ाइल App.xaml.cs में, InitializeComponent() के बाद क्रिया सेट करें:
क्रॉसफायरबेसक्लाउडमैसेजिंग.करंट.नोटिफिकेशनटैप्ड += करंट_नोटिफिकेशनटैप्ड;
और बाद में फ़ंक्शन बनाएं:
निजी शून्य करंट_नोटिफिकेशनटैप्ड (ऑब्जेक्ट प्रेषक, FCMNotificationTappedEventArgs e)
{
कोशिश
{
var डेटा = ई.नोटिफिकेशन.डेटा;
मुख्य पृष्ठ = नया विवरण पृष्ठ();
}
पकड़ो (अपवाद पूर्व)
{
System.Diagnostics.Debug.WriteLine(‘अपवाद:>>’ + पूर्व);
}
}
[ad_2]
コメント