如何从共享项目中调用代码以在Windows Phone项目的后台运行?
要在WP后台运行代码,我需要将其提取到一个新项目并从我的WP项目中调用该新项目。但要运行代码,我需要:
有没有办法制作一个在后台执行某些业务逻辑的通用Windows(电话)应用程序,没有复制代码或失去共享项目的优势?
编辑: 这是当我将它放在一个单独的项目中时调用的代码。当我把它放在WP项目或共享项目中时,它不会被调用。
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Text;
using Windows.ApplicationModel.Background;
namespace WindowsPhoneProject
{
public sealed class BackgroundTask : IBackgroundTask
{
public void Run(IBackgroundTaskInstance taskInstance)
{
taskInstance.GetDeferral().Complete();
}
}
}
答案 0 :(得分:1)
本快速入门介绍如何为通用应用程序创建后台任务: http://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh977055.aspx
您应该能够在共享项目中创建从IBackgroundTask派生的类。如果您只想在手机上创建后台任务,那么您可以使用如下编译时指令:
#if WINDOWS_PHONE_APP
// Code Here
#endIf