You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iOS自定义Auth0登录弹窗:将程序集名称替换为应用显示名

iOS中自定义Auth0登录弹窗的应用显示名称

在基于.NET Maui开发的iOS应用中,使用Auth0作为身份验证提供商时,跳转至Auth0登录页面会触发iOS系统弹窗,内容为「{AssemblyName} Wants to Use {auth0Domain} to Sign In」。已按照Auth0指引在Info.plist中配置了CFBundleURLTypes(指定CFBundleURLName为友好名称),同时设置了CFBundleDisplayName,但弹窗仍显示程序集名称而非自定义的友好名称。

解决方案步骤

1. 同时设置CFBundleName字段

iOS系统的权限弹窗有时会优先读取CFBundleName而非CFBundleDisplayName,因此需要在Platforms/iOS/Info.plist中添加或修改该字段:

<key>CFBundleName</key>
<string>你的友好应用名称</string>

2. 验证Maui项目配置优先级

在.NET Maui中,项目csproj文件的配置会覆盖Info.plist的部分设置。检查项目根目录下的csproj文件,确认是否存在如下配置,并确保其值为你的友好名称:

<PropertyGroup Condition="'$(TargetFramework)' == 'net7.0-ios'">
  <!-- 该值会映射为iOS的CFBundleDisplayName和CFBundleName -->
  <ApplicationTitle>你的友好应用名称</ApplicationTitle>
  <ApplicationId>com.yourcompany.yourappid</ApplicationId>
</PropertyGroup>

如果csproj中存在ApplicationTitle,则Info.plist中的对应字段会被覆盖,需统一此处的值。

3. 清理缓存并重新部署

缓存可能导致配置未生效,执行以下操作:

  • 删除项目的bin和obj文件夹
  • 卸载模拟器或真机上的现有应用
  • 重新编译并部署应用

4. 检查本地化配置(若支持多语言)

如果应用启用了多语言,需在默认语言的InfoPlist.strings文件中配置显示名称:

"CFBundleDisplayName" = "你的友好应用名称";
"CFBundleName" = "你的友好应用名称";

该文件位于Platforms/iOS/Resources/{语言代码}.lproj/InfoPlist.strings路径下。

内容的提问来源于stack exchange,提问作者Dave

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 05:21:12