用linux api作,我现在项目就是qt for android   serialport 
bool ComMgr::open()
{
#ifdef Q_OS_ANDROID
    if(m_fd != -1)
        ::close(m_fd);
    char* com = g_sysVar->m_strCom.toLatin1().data();
    m_fd = ::open((char*)com, O_RDWR|O_NONBLOCK);
    if (m_fd == -1)
    {
        AddInfo("COM:  open is failed<1>");
        return false;
    }
    termios serialAttr;
    memset(&serialAttr, 0, sizeof serialAttr);
    serialAttr.c_iflag = IGNPAR;
    serialAttr.c_cflag= B115200| HUPCL| CS8|CREAD|CLOCAL;
    serialAttr.c_cc[VMIN] = 1;
    if (tcsetattr(m_fd, TCSANOW, &serialAttr) != 0) {
        AddInfo("COM:  open is failed<2>");
        return false;
    }
    m_notifier = new QSocketNotifier(m_fd, QSocketNotifier::Read, this);
    QObject::connect (m_notifier, SIGNAL(activated(int)), this, SLOT(slt_notifyNewData()));
#endif
    return true;
}