我正在使用Firebase云消息传递API创建应用程序...我能够从服务器向我的客户端应用程序发送通知和数据.但问题是当应用程序打开时,通知不会在数据出现时触发(我的意思是我记录了它)这不是问题.但是当应用程序关闭时,会收到通知,而我点击通知时会打开活动,而我无法看到日志数据.我需要将数据更新为TextView ..
我的MyFirebaseMessagingService:
public void onMessageReceived(RemoteMessage remoteMessage) {
// TODO: Handle FCM messages here.
// If the application is in the foreground handle both data and notification messages here.
// Also if you intend on generating your own notifications as a result of a received FCM
// message, here is where that should be initiated.
Log.d(TAG, "From: " + remoteMessage.getFrom());
Log.d(TAG, "Notification Message Body: " + remoteMessage.getNotification().getBody());
Log.e("FROM", "From: " + remoteMessage.getFrom());
String data = remoteMessage.getData().get("message");
Log.e("KOIII", "Notification Message Body: …
Run Code Online (Sandbox Code Playgroud) 我是 StackOverflow 社区的新手!
\n我需要有关 Xamarin Forms 中 Android 的一个问题的帮助。准确地说......我尝试与一些朋友一起构建我们的第一个应用程序。我们选择(在我们大学教授的帮助下)Xamarin 来使用 Xamarin Forms 为两个系统进行 Android 和 iOS 的跨平台开发。我创建了应用程序的界面部分,现在我被困在一座有大墙的堡垒里。当我尝试添加选项卡式页面功能栏的图标时,应用程序崩溃(Android),但在 iOS 中,问题不会出现......
我会尝试一些解决方案...例如:
\n\n-NameApp.Droid 中的渲染仅针对 android 部分添加了不同的渲染器,但没有结果...\n-尝试另一种方法直接在 .xaml 文件中插入图标,但没有结果...\n-尝试遵循另一个方法修改“主题”部分的 .axam 文件的方法\n但没有结果...
\n\n我只想按时将所有内容集成到“主项目”中。我现在不想触摸“nameProject.Droid”或“nameProject.iOS”部分,但尝试一次拍摄两者(Andriod 和 iOS)。我在 Android 中发现了一个不同的错误(\xc3\xa8.\xc3\xa9),但是为此,我要疯了......\n但是我需要修改“.Droid”,没问题我接受挑战!
\n\n这是我渴望创建的结果。\n" https://storage.googleapis.com/material-design/publish/material_v_12/assets/0B6Okdz75tqQsbHJuWi04N0ZIc0E/components-tabs-usage-mobile7.png "
\n\n这是我在选项卡式页面中添加图标的方式。假设我将所有内容添加到“.Droid”和“.iOS”的“资源”中:
\n\n var MainPageTabbed = new MPageTabbed();\n\n var Profile = new Profile();\n\n var ListChat = new ListChat();\n\n if (Device.RuntimePlatform == Device.Android)\n {\n MainPageTabbed.Icon = "ldpi.png";\n Profile.Icon = "ldpi2.png";\n Chat.Icon = "ldpi1.png";\n\n }\n\n if (Device.RuntimePlatform == Device.iOS)\n {\n MainPageTabbed.Icon …
Run Code Online (Sandbox Code Playgroud) 当用户处于前台和后台时,使用 Xamarin Android 在 firebase 中处理通知消息和数据消息的最佳方法是什么?
另外,如何获取通知数据,例如特定通知的文本?
PS:我访问过以下线程,但没有一个真正有帮助:
我最近开始使用 Xamarin Essentials,我个人很喜欢该团队在该包上所做的工作。
我刚刚浏览了同一个 ie 的文档,我得到了 Across the Preferences API,它看起来很光滑并且工作也很好。
但我个人想知道首选项 API 和 Xamarin Forms 应用程序属性之间的实际区别是什么。
根据我的研究,到目前为止, Preferences 是Properties
一个IDictionary<string,object>
使用本机SharedPreferences
并NSUserDefaults
存储数据的类。现在它们都提供了保留持久属性的能力。
但文档似乎没有为我提供任何关于何时应该使用其中哪一个的想法。
Xamarin Essentials 还强调了一个限制:
存储字符串时,此 API 旨在存储少量文本。如果您尝试使用它来存储大量文本,性能可能会较差。
而应用程序属性没有任何内容,您可以在此处找到 https://learn.microsoft.com/en-us/dotnet/api/xamarin.forms.application.properties?view=xamarin-forms
我还缺少什么吗?
在我的 MainActivity 中,我像这样覆盖了 OnBackPressed() 方法
public override void OnBackPressed()
{
Toast toast = Toast.MakeText(this, "Press again to exit", ToastLength.Short);
toast.SetMargin(0,0.20f);
toast.Show();
}
Run Code Online (Sandbox Code Playgroud)
当用户在 MainActivity 中并单击一次后退按钮时,屏幕上会出现消息“再次按下退出”,该消息在几秒钟后消失。如果用户在屏幕上显示此消息时再次单击后退按钮,我希望应用程序退出,但是当消息消失并且用户单击后退按钮时,我希望该消息再次出现。我已经看到一些在 Java 中这样做的示例,但我发现很难调整这些示例以在 Xamarin.Android 上工作。
我安装了 Visual Studio for Mac 和周围来构建适用于 Android 的应用程序,它给了我这个错误。我安装了 NDK,现在这个错误出现在我面前。
你知道如何解决这个问题吗?
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(2873,3):错误 XA5101:未找到目标 Arm 的 C 编译器。尝试过的路径:“/Users/UserName/Library/Developer/Xamarin/android-sdk-macosx/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-gcc ; /Users/UserName/Library/Developer/Xamarin/android-sdk-macosx/ndk-bundle/prebuilt/darwin-x86_64/bin/gcc" [/Users/UserName/Projetos/ProjectName/app/src/android/ProjectNameApp. Droid/ProjectName.Droid.csproj]
执行任务“Release-Android”时出错。Teardown 正在执行自定义拆卸操作... 环境:QA 配置:发布目标:发布-Android 错误:发生了一个或多个错误。(MSBuild:进程返回错误(退出代码 1)。) MSBuild:进程返回错误(退出代码 1)。
我已经看到了几个解决方案,但我无法解决它,我已经安装了 NDK,我已经验证了安装它的文件夹,我已经在 Droid.csproj 中插入了 AndroidNdkDirectory 并且到目前为止没有任何结果。
我有一个使用 Xamarin.FireBase.Messaging 的应用程序,它适用于所有 <12 android 版本。
当我尝试在 Android 12 中构建我的应用程序时,出现以下错误:
“*严重性代码描述项目文件行抑制状态错误ADB0010:Mono.AndroidTools.InstallFailedException:意外的安装输出:失败[INSTALL_PARSE_FAILED_MANIFEST_MALFORMED:installPackageLI期间解析失败:/data/app/vmdl254956208.tmp/base.apk(在二进制XML文件行#40): crc64bb777672d9471d38.CustomFirebaseMessagingService: 定位 S+ (版本 31 及以上) 需要在存在意图过滤器时定义 android:exported 的显式值] 在 Mono.AndroidTools.Internal.AdbOutputParsing.CheckInstallSuccess(String output, String packageName)在/Users/builder/azdo/_work/1/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Mono.AndroidTools/Internal/AdbOutputParsing.cs中:System.Threading.Tasks.Task第357行.Execute() --- 从先前抛出异常的位置开始的堆栈跟踪结束 --- 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 AndroidDeviceExtensions 处。 /Users/builder/azdo/_work/1/s/xamarin-android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/Devices/AndroidDeviceExtensions.cs 中的 d__12.MoveNext():第 206 行 ---从先前抛出异常的位置开始的堆栈跟踪结束 --- 在 /Users/builder/azdo/_work/1/s/xamarin- 中的 AndroidDeviceExtensions.d__12.MoveNext() 处的 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 处android/external/monodroid/tools/msbuild/external/androidtools/Xamarin.AndroidTools/Devices/AndroidDeviceExtensions.cs:line 223 --- 抛出异常的上一个位置的堆栈跟踪结束 --- 在 System.Runtime.ExceptionServices 处。 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)处的 ExceptionDispatchInfo.Throw() 位于 /Users/builder/azdo/_work/1/s/xamarin-android 中的 Xamarin.Android.Tasks.FastDeploy.d__105.MoveNext() /external/monodroid/tools/msbuild/Tasks/FastDeploy.cs:line 339 --- 抛出异常的上一个位置的堆栈跟踪结束 --- 在 Xamarin.Android 的 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 处/Users/builder/azdo/_work/1/s/xamarin-android/external/monodroid/tools/msbuild/Tasks/FastDeploy.cs 中的.Tasks.FastDeploy.d__105.MoveNext():第 356 行 --- 堆栈结束从先前引发异常的位置跟踪 --- 在 …