一片冰心在玉壶

那时我们有梦,关于文学,关于爱情,关于穿越世界的旅行, 如今我们深夜饮酒,杯子碰到一起,都是梦破碎的声音. 交往都是初逢,爱情都在心里,往事都在梦中, 希望都带着注释,信仰都带着呻吟. 总有善意的光逃避现世的繁琐而寻找片刻的安宁, 也许,就是你凝视这里的眼睛

博客园 首页 联系 订阅 管理

安卓下的代码在MinGW下调试会从出错

.pro文件后面添加
contains(ANDROID_TARGET_ARCH,armeabi-v7a) {

QT += androidextras
}

cpp文件中添加
#ifdef Q_OS_ANDROID
    #include<QtAndroid>  
#endif


读写权限
bool requestReadPermission() {
#ifdef Q_OS_ANDROID
    QtAndroid::PermissionResult r = QtAndroid::checkPermission("android.permission.READ_EXTERNAL_STORAGE");
   if(r == QtAndroid::PermissionResult::Denied) {
      //   QMessageBox::information(0,"requestWritePermission22222","PermissionResult::Denied");
        QtAndroid::requestPermissionsSync( QStringList() << "android.permission.READ_EXTERNAL_STORAGE" );
        r = QtAndroid::checkPermission("android.permission.READ_EXTERNAL_STORAGE");
        if(r == QtAndroid::PermissionResult::Denied) {
             return false;
        }
   }
#endif
   return true;
}
bool requestWritePermission() {
#ifdef Q_OS_ANDROID
    QtAndroid::PermissionResult r = QtAndroid::checkPermission("android.permission.WRITE_EXTERNAL_STORAGE");
    if(r == QtAndroid::PermissionResult::Denied) {
      //  QMessageBox::information(0,"requestWritePermission","PermissionResult::Denied");
        QtAndroid::requestPermissionsSync( QStringList() << "android.permission.WRITE_EXTERNAL_STORAGE" );
        r = QtAndroid::checkPermission("android.permission.WRITE_EXTERNAL_STORAGE");
        if(r == QtAndroid::PermissionResult::Denied) {
             return false;
        }
   }
   return true;
#endif
}

  


我的读写函数
void ReadMyData()
{
    requestReadPermission();
    FILE   *ffp;
#ifdef Q_OS_ANDROID
    if((ffp=fopen((const char *)"/sdcard/s_v.quo","rb"))==NULL)
#else
    if((ffp=fopen((const char *)"d:\\s_v.quo","rb"))==NULL)
#endif
        return ;

    fseek(ffp,0,SEEK_SET);    
    fread(&m_save,sizeof(Def_Save),1,ffp);
    if(m_save.myunit<0||m_save.myunit>3)
        m_save.myunit=0;
    fclose(ffp);
}
void    SaveMyData()
{   FILE   *ffp; 
    requestWritePermission();
#ifdef Q_OS_ANDROID
    if((ffp=fopen((const char *)"/sdcard/s_v.quo","wb+"))==NULL)
#else
    if((ffp=fopen((const char *)"d:\\s_v.quo","wb+"))==NULL)
#endif
     {
      //  fclose(ffp);
         return ;
      //  exit(1);
     }
    fseek(ffp,0,SEEK_SET);
    fwrite(&m_save,sizeof(Def_Save),1,ffp);
  //  qDebug()<<m_save.p_no;
    fclose(ffp);
}

  

posted on 2021-03-16 08:33  Sankye  阅读(333)  评论(0编辑  收藏  举报