20120531 dms命令行代码

今天运气极差,没有进展。原来能够运行的程序,今天居然运行不起来了。

大概是由于调试ndk线程,把脑袋都搞糊了。

晚上特花费一些时间,将已经验证正确的代码贴上来,以免将来又要重复劳动。

/*----------------------------------------------------------------------
|   includes
+---------------------------------------------------------------------*/
#include "PltUPnP.h"
#include "PltFileMediaServer.h"

#include <stdlib.h>

NPT_SET_LOCAL_LOGGER("platinum.media.server.file.test")

//为了测试别的程序,下面两个变量在这里声明。
PLT_UPnP upnp;
PLT_DeviceHostReference device;
/*----------------------------------------------------------------------
|   main
+---------------------------------------------------------------------*/
int
main(int /* argc */, char** argv)
{
    // setup Neptune logging
    NPT_LogManager::GetDefault().Configure("plist:.level=INFO;.handlers=ConsoleHandler;.ConsoleHandler.colors=off;.ConsoleHandler.filter=42");

	/* for DLNA faster testing */
	PLT_Constants::GetInstance().SetDefaultDeviceLease(30.);
 
	/*
	PLT_DeviceHostReference device(
        new PLT_FileMediaServer("/data/local", 
                                "11111111111UPnP Media Server",
                                false,
                                "11111111111"));	
    */
    //上面的实例化是可行的。为了其他程序的测试,采用下面的形式。
    //后面两个参数可以采用默认值。为了测试方便,采用下面的形式。
    device = new PLT_FileMediaServer("/data/local", 
                                "4444444444444UPnP Media Server",
                                false,
                                "4444444444444");
    NPT_List<NPT_IpAddress> list;
    NPT_CHECK_SEVERE(PLT_UPnPMessageHelper::GetIPAddresses(list));
    NPT_String ip = list.GetFirstItem()->ToString();

    device->m_ModelDescription = "Platinum File Media Server";
    device->m_ModelURL = "http://www.plutinosoft.com/";
    device->m_ModelNumber = "1.0";
    device->m_ModelName = "Platinum File Media Server";
    device->m_Manufacturer = "Plutinosoft";
    device->m_ManufacturerURL = "http://www.plutinosoft.com/";
	/*	NPT_LOG_INFO_2("baojinyu,debug info:ip-->%s,ip--->%s", 
					ip, 
					ip);*/	
    //上述log不能加。
    NPT_LOG_INFO("AddDevice前面");
    upnp.AddDevice(device);
    NPT_LOG_INFO("AddDevice后面,upnp.Start前面");
    NPT_String uuid = device->GetUUID();
	
    NPT_CHECK_SEVERE(upnp.Start());
    NPT_LOG_INFO("upnp.Start后面");
    NPT_LOG_INFO("Press 'q' to quit.");
	
    char buf[256];
    while (gets(buf)) {
        if (*buf == 'q')
            break;
    }

    upnp.Stop();

    return 0;
}



你可能感兴趣的:(20120531 dms命令行代码)