我有一个 C# (.net 3.5) 桌面应用程序,可以在屏幕上打印一些数字。现在我想将其扩展到移动设备。 (在我的例子中是 Android 设备。)它必须显示与计算机屏幕上相同的数字。整个事情只是一个概念证明,它不必看起来漂亮,不必 100% 工作,有一个漂亮的 GUI 或简单的设置,它只需要显示一些数字。
我一直在研究 MonoDroid,因为它有可能使用 WCF 服务。 (我知道移动设备和台式计算机将连接到同一网络。)不幸的是,MonoDroid 的试用版不支持真正的设备,我不想花几百美元来证明这一点。
我有 Java 的基本知识,我认为我能够使用 Android SDK 快速开发示例应用程序,以从网络上的网页获取数据,解释它(XML、JSON 等)并将其显示在屏幕上。
所以我的问题是:是否可以在现有应用程序中创建某种 Web 服务(无需设置整个 IIS 服务器),其中包含带有一些 XML 数据的网页,我可以在给定的时间间隔刷新这些数据,并且是可以从同一网络上的计算机访问吗?我应该怎么做,使用哪种技术?
或者有其他方法可以实现这样的目标吗?
我使用 C# HttpListener 如下...
private void CreateListener
{
HttpListener listener = null;
HttpListenerContext context = null;
HttpListenerRequest request = null;
HttpListenerResponse response = null;
string PortNumber = "9876";
string requestUrl;
Boolean listen = false;
try
{
if (listener == null)
{
listener = new HttpListener();
listener.Prefixes.Add("http://*:" + PortNumber + "/");
listener.Start();
listen = true;
while (listen)
{
try
{
context = listener.GetContext();
}
catch (Exception e)
{
listen = false;
}
if (listen)
{
request = context.Request;
requestUrl = request.Url.ToString();
// Process request and/or request Url
}
}
}
}
}
基本上listener.GetContext();
阻塞直到收到 HTTP 请求。然后你可以使用request = context.Request
检索 HTTP 请求数据并对其进行处理。然后你可以使用context.Response
返回响应。
实施和适应相当简单。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)