我遇到了一个小问题。我需要获取WP8包名称(使用c ++),但是当我使用documented函数时,我只获得Not Implemented Exception。
Windows::ApplicationModel::Package^ package = Windows::ApplicationModel::Package::Current;
Windows::ApplicationModel::PackageId^ packageId = package->Id;
Platform::String^ output = "Name: \"" + packageId->Name + "\"\n"
这应该可行,但属性 package-> Id 在WP8中不可用,但最低支持的手机是Windows Phone 8.例如 fullName 属性备注这不是在WP8 API中实现的。
你能帮帮我吗? 谢谢PS此功能在Windows应用商店应用解决方案
中正常工作答案 0 :(得分:3)
您可以尝试使用以下代码在 C ++ 中获取PackageId
Windows::ApplicationModel::PackageId^ packageId = Windows::Phone::Management::Deployment::InstallationManager::FindPackagesForCurrentPublisher()->First()->Current->Id;
Platform::String^ output = "Name: \"" + packageId->Name + "\"\n"
<强> C#强>
Windows.Phone.Management.Deployment.InstallationManager.FindPackagesForCurrentPublisher().First().Id
FindPackagesForCurrentPublisher()返回的包似乎已实现Current->Id
答案 1 :(得分:1)
并非所有属性都在WP8上实现,正如文档所述并且您已经找到了。它在MSDN上有点令人困惑,因为在某些情况下,表中说API可用,但上面的注释表明它没有在WP8上实现。
看起来FullName
不可用,但Name
可用。如果需要,还可以使用仅限Windows Phone的属性ProductId
来唯一地标识您的应用。