在Xamarin表单中捆绑iOS的ID

时间:2018-04-11 07:27:27

标签: xamarin.forms xamarin.ios

如何在Xamarin表单应用中找到iOS的包ID和包名?我能够在Android清单中找到Android的包名,但没有关于iOS的线索。

3 个答案:

答案 0 :(得分:1)

捆绑标识符在iOS项目根目录下的Info.plist内定义。
此文件类似于Android上的AndroidManifest.xml

答案 1 :(得分:1)

查看info.plist文件。您会在其中看到一个名为CFBundleIdentifier的密钥。

以下是一个例子:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>CFBundleDisplayName</key>
    <string>My App Name</string>
    <key>CFBundleName</key>
    <string>MyBundleName</string>
    <key>CFBundleIdentifier</key>
    <string>com.example.myappidentifier</string>
    <key>CFBundleShortVersionString</key>
    <string>0.1.0</string>
    <key>LSRequiresIPhoneOS</key>
    <true/>
    <key>MinimumOSVersion</key>
    <string>10.0</string>
    <key>UIDeviceFamily</key>
    <array>
        <integer>1</integer>
    </array>
    <key>UILaunchStoryboardName</key>
    <string>LaunchScreen</string>
    <key>UIRequiredDeviceCapabilities</key>
    <array>
        <string>armv7</string>
    </array>
    <key>UISupportedInterfaceOrientations</key>
    <array>
        <string>UIInterfaceOrientationPortrait</string>
    </array>
    <key>UISupportedInterfaceOrientations~ipad</key>
    <array>
        <string>UIInterfaceOrientationPortrait</string>
        <string>UIInterfaceOrientationPortraitUpsideDown</string>
        <string>UIInterfaceOrientationLandscapeLeft</string>
        <string>UIInterfaceOrientationLandscapeRight</string>
    </array>
    <key>XSAppIconAssets</key>
    <string>Assets.xcassets/AppIcon.appiconset</string>
    <key>CFBundleVersion</key>
    <string>47</string>
</dict>
</plist>

其他有趣的密钥是CFBundleShortVersionString,其中包含您应用的版本号(营销版本号,如1.0,1.1.0等),CFBundleVersion包含您的内部版本号(1 ,2,3等等。

另请注意:.plist文件是XML格式。您会注意到从字典部分开始的<dict>行。在里面你会看到一系列<key>*</key>行,每行后跟一个键的值,它可以是一个简单的类型,如字符串,或更复杂的类型,如数组甚至另一个字典等。读取/编辑.plist文件时,每个键的值都在键的正下方。在此示例中,CFBundleIdentifier的值为com.example.myappidentifier

如果您需要在代码中读取您的包ID,可以将此属性添加到Xamarin.Forms iOS项目中的类:

public String BundleId => NSBundle.MainBundle.BundleIdentifier;

答案 2 :(得分:0)

使用Xamarin.Essentials:应用信息,您可以获取该信息并在应用内显示

// Application Name
var appName = AppInfo.Name;

// Package Name/Application Identifier (com.microsoft.testapp)
var packageName = AppInfo.PackageName;

// Application Version (1.0.0)
var version = AppInfo.VersionString;

// Application Build Number (1)
var build = AppInfo.BuildString;

有关更多信息,请查看此 https://docs.microsoft.com/en-us/xamarin/essentials/app-information?context=xamarin%2Fxamarin-forms&tabs=android