通过PC名称而不是本地IP地址-Android应用程序访问wamp服务器文件

时间:2014-02-13 07:53:07

标签: php android wamp wampserver

在我的Android应用程序中,我希望能够通过PC名称(主机名)访问wamp服务器文件而不是PC本地IP地址,这可能吗?导致用户需要更改Android应用中的本地IP地址。每次都需要从MySQL数据库更新或获取数据哪些烦人的东西!

// url to get all items list
 private static String url_all_items="http://Local IP Address/android_connect/test.php"; 

但我需要能够发送PC名称而不是本地IP地址:

// URL to get all items list
 private static String url_all_items="http://PC Name/android_connect/test.php"; 

实际上,我尝试发送PC名称而不是本地IP地址,但这不起作用,我尝试了很多解决方案,在wamp服务器配置中,在Windows文件上的主机上等等。但这也行不通!是否有任何其他配置能够通过Android应用程序发送PC名称而不是IP地址?!虽然我发送本地IP地址时效果很好!

总之,有什么办法可以使用PC名称而不是本地IP地址访问WAMP服务器吗?

任何帮助都将非常感激。

1 个答案:

答案 0 :(得分:1)

解决问题的简单方法是不在wamp服务器或windows中进行任何配置,但解决方案在于代码本身。正如我所见,你不希望Android应用程序用户放置或使用IP,你只是允许用户只放置服务器名称。因此,最好的方法是获取输入的服务器名称的IP地址。在获取服务器名称的IP地址后,您可以使用返回的IP重建所需的URL。以下代码显示了一段可帮助您实现的代码。

private static String url_all_items="http://%s/android_connect/test.php";
private static void ResolveURL() {

     try {
           InetAddress addr = InetAddress.getByName("mahdi-pc");
           String host = addr.getHostAddress();

           url_all_items=String.format(url_all_items, host);
           System.out.println(url_all_items);

     } catch (UnknownHostException ex) {

     }  

}

使用上面的代码,很明显在这种情况下,服务器名称被命名为“mahdi-pc”,返回的IP地址将用于它。请注意,此代码仅对本地网络地址有效。之后,使用字符串格式在url_all_items链接中替换返回的IP地址。正确格式化链接后,您可以使用IP地址建立连接,而无需使用URL中的服务器名称。

我希望解决方案可以和你一起使用。