我需要创建一个可移植类库,用于Windows Phone 8 &8.1 .
然而,我需要访问一些仅在Windows Phone 8.1中可用的api。
如何在Windows Phone 8应用程序中创建一个库,如果该应用程序运行在8.1设备上,则可以使用8.1 api ?
是否有可能为Windows Phone 8创建便携式类库&8.1 ?
是的,它是。创建一个新的PCL,选择Windows Phone Silverlight 8
和Windows Phone 8.1
。Visual Studio可能会自动添加额外的平台。
如何在Windows Phone 8应用程序中创建一个库,如果该应用程序运行在8.1设备上,则可以使用8.1 api ?
- 创建新的解决方案
- 如上所述添加PCL。
- 添加新的Windows Phone 8应用
- 添加新的Windows Phone 8.1应用
- 在两个Windows Phone项目中添加PCL引用
- 在PCL项目中编写尽可能多的代码
- 当你需要访问WP8.1特定的api时,你必须在WP8.1项目中创建它。
- 将平台特定的代码隐藏在与平台无关的
interface
后面 - 在
dependency injection container
启动时注册接口的实现,以便在PCL中访问它。如果你不知道该使用哪个容器,看看哪些。net依赖注入框架值得一看?
你将得到一个Windows Phone 8.0的应用程序和一个Windows Phone 8.1的应用程序。您的大部分代码可能都在PCL中。只有平台特定的代码才会留在PCL之外。