【C语言小游戏】走迷宫

article/2025/9/23 2:29:32

偶然翻到了自己大一时候写的一些代码,代码冗余,但还是想保存下来,以作纪念。

文章目录

  • 1.运行效果
  • 2.运行环境
  • 3.完整代码

1.运行效果

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.运行环境

源码(Dev5.4.0版本下可直接(.cpp文件)运行 gcc 4.7.2)

注意:由于部分代码为C11标准,后缀名应改为cpp运行
在这里插入图片描述
编译器下载链接:https://pan.baidu.com/s/1Hywq6hxzxMzX1-22ig2HdA
提取码:kd65
下载后解压即可使用
在这里插入图片描述

3.完整代码

在这里插入图片描述

#include<bits/stdc++.h>
#include<windows.h>
#include<conio.h>
using namespace std;#define MAXN 50//迷宫大小
typedef struct//BFS寻路用
{int x,y;int step;
}Pos;Pos start,finish,path[2500];//起点,终点,路径
int k;//BFS路径标记
int Rank=10;//控制难度,Rank越小难度越大int maze[MAXN][MAXN];
int bookBFS[MAXN][MAXN];//用于BFS是否访问标记
int visit[MAXN][MAXN];//标记BFS的过程void BFS();//BFS最短路径寻路
void Gamer();//用户操作界面
void DrawMaze();//绘制迷宫
void DrawPath();//绘制路径
void choice_level();//选择关卡
void CreateMaze(int,int,int);//创建迷宫
void gotoxy(int,int);//坐标函数
void InitMaze();//初始化迷宫
void load_cartoon();//加载动画
void HideCursor();//隐藏光标
void ShowCursor();//显示光标//加载动画
char cartoon1[20][150] = {{"                                                                    /~/~/                                      "},{"                                                                   /~/~/                                       "},{"                                             Microsotf@             ~ ~     __ XP                              "},{"                                             \\  /\\  / -  _   _|  _  _   _  /_                                "},{"                                              \\/  \\/  | | | |_| |_| \\/\\/  __/                              "},{"                                                                                                               "},{"                                                    _____________________                                      "},{"                                                   │                    │                                      "},{"                                                   └────────────────────┘                                      "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                  Copyright ΘMicrosoft Corporation                                            Microsoft*       "},
};char cartoon2[40][150]={{"                                                     健   康   游   戏   忠   告                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                     抵   制   不   良   游   戏  , 拒   绝   盗   版   游   戏。             "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                     注   意   自   我   保   护  , 谨   防   受   骗   上   当。             "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                     适   度   游   戏   益   脑  , 沉   迷   游   戏   伤   身。             "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                                                                                               "},{"                                     合   理   安   排   时   间  , 享   受   健   康   生   活。             "},};//Logo
char logo[30][100]={{"      BBBBB                 BBBBBP                              BBBBBBB                   "},{"      SBBBM                 BQBBBQ                              BBBBBBB                   "},{"      BBBBBBB.   iEBBBI     BBBBQE     gBBQP:    BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB "},{"       uBBBBBBv  1BBBBBB    BBBBBb    BQBBBBJ    BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB "},{"        :BBBBBBQ  .BBBBBB.  BBQBBd  iBBBBBB      BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB "},{"         .BQBB5.    BQBQBB  BBBBBq IBBBBBZ       BBBBBB                            BBBBBB "},{"           d.        BBBr   BBBBBq  :RBBi        BBBBBB                            BBBBBB "},{"                            BBBBB2               BBBBBDBBQBBBBBBBBBBBQBBBBBBBBBQBQBBBBBBB "},{"     Ivv7vr77j. 1BBBBBMBBBBBBBBBBBBBQBRQBBBBBR         BQBBBBBBBQBBBBBQBBBBBBBBBQBB       "},{"    :BBBBBBBBB7 KBBQBBBBBBBBBQBQBQBQBBBQBQBBBB         BBBBBB                BBBBBB       "},{"    :BBBBBBBBB: 2BQBBBBBQBBBBBBBBBBBBBBBBBBBBQ         BBBBBB                BBBQBE       "},{"    .BQbQBBBBBi          QBBBBBBB1                     BBBBBB                BBBBBB       "},{"        .BBBBBi        7QBBBQBQBBL BB:                 BBBBBBBBBQBBBBBBBBBBBBBQBBBQ       "},{"        iBBBBBi      :BBBBBBBBBBBBBBBBBs               BBBBBBBBBBBBQBBBBBBBBBBBQBBM       "},{"        iBBBBB:    :BBBBQBg MBQBBMEBBBBBQd                                                "},{"        rBBBBB:  iBBBQBBBU  BBBBBj .BQBBBBBM:       BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB    "},{"        iBBBBB. BBBBBBBB.   BBQBBb   :QBBBBBBK      BBBBQBBBBBBBBBQBQBBBBBBBBBBBBBQBBB    "},{"        :QBBBQ. .QBBBBY     BBBBBd     iBBBBr       BBBBBBBBBBBQBBBBBBBQBBBQBBBBBBBBBB    "},{"        LBBBBB7   :B2       QBBBBg       sZ         BBBBBB                      BBBBQB    "},{"      rBBBBBBBBM.           BBBQB1                  BQBBBB                      BBBBBB    "},{"    iBBBBBBBQBBBBBE                                 BBBBQB                      BBBBBB    "},{"    .BBBBQBSBBBBBBBQBQBBBBBBBBBBBBBBBBBBBBBBBB.     BBBBBQBBBBBQBBBQBBBBBBBBBBBBBBBBBB    "},{"     vBBQB.  rBBQBQBQBBBQBBBQBBBBBQBBBBBBBBBBv      BBQBBBBBQBBBBBQBQBBBBBBBBBBBQBBBBB    "},{"      BBr        sPDQMQBBBBBBBBBBBBBBQBBBBBBB       BQBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB    "},{"                                                    BBBBBB                      BBBBBB    "},{"                                                                                          "},{"                                           制       作                                    "},{"                                                                                          "},{"                                           山       河                                    "}
};//坐标函数
void gotoxy(int x, int y) 
{HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);COORD pos;pos.X = x;pos.Y = y;SetConsoleCursorPosition(handle, pos);
}//隐藏光标
void HideCursor()
{CONSOLE_CURSOR_INFO cursor_info={1,0};SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info);
}//显示光标
void ShowCursor()
{CONSOLE_CURSOR_INFO cursor_info={1,1};SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info);
}//初始化迷宫 
void InitMaze()
{for(int i=0;i<MAXN;i++)for(int j=0;j<MAXN;j++)maze[i][j]=1;for(int i=0;i<MAXN;i++){maze[i][0]=0;maze[0][i]=0;maze[MAXN-1][i]=0;maze[i][MAXN-1]=0;}k=0;memset(bookBFS,0,sizeof(bookBFS));memset(path,0,sizeof(path));memset(visit,0,sizeof(visit));
}//创建仅有一条路径的迷宫
void CreateMaze(int x, int y,int Rank) {maze[x][y] = 0;//确保四个方向随机//每一次挖的顺序不同,如前左右,右前左int dir[4][2] = { { 1,0 },{ -1,0 },{ 0,1 },{ 0,-1 } };for (int i = 0; i < 4; i++) {int r = rand() % 4;//随机交换int temp = dir[0][0];dir[0][0] = dir[r][0];dir[r][0] = temp;temp = dir[0][1];dir[0][1] = dir[r][1];dir[r][1] = temp;}//向四周开挖for (int i = 0; i < 4; i++) {int dx = x;int dy = y;//控制挖的距离,由Rank来调整大小int range = 1 + (Rank == 0 ? 0 : rand() % Rank);while (range>0) {dx+=dir[i][0];dy+=dir[i][1];//排除掉回头路if (maze[dx][dy] == 0) break;//判断是否挖穿路径int count = 0;for (int j = dx - 1; j < dx + 2; j++)for (int k = dy - 1; k < dy + 2; k++)if (abs(j - dx) + abs(k - dy) == 1 && maze[j][k] == 0) count++;if (count > 1)break;//确保不会挖穿时,前进range--;maze[dx][dy] = 0;}if (range <= 0)CreateMaze(dx,dy,Rank);}
}void DrawMaze()
{//入口maze[2][1]=0;start.x=2;start.y=1;start.step=0;//出口for(int i=MAXN-3;i>=0;i--)if(maze[i][MAXN-3]==0){maze[i][MAXN-2]=0;finish.x=i;finish.y=MAXN-2;finish.step=0;break;}for(int i=0;i<MAXN;i++){for(int j=0;j<MAXN;j++){if(maze[i][j]==1)cout<<"■";else cout<<"  ";}cout<<endl;}
}//迷宫寻路BFS,当迷宫只有一条路径,用BFS更省时
void BFS()
{queue<Pos>q;q.push(start);int dx[4]={0,1,0,-1},dy[4]={1,0,-1,0};bookBFS[start.x][start.y]=1;int flag=0;while(q.size()!=0){Pos t=q.front();q.pop();if(t.x==finish.x&&t.y==finish.y)//找到终点{flag=1;finish.step=t.step;Pos t=finish;//倒推路径while(!(t.x==start.x&&t.y==start.y))//不在起点的时候{path[k].x=t.x;path[k++].y=t.y;int dx[4]={0,1,0,-1},dy[4]={1,0,-1,0};for(int i=0;i<4;i++){Pos s=t;s.x+=dx[i];s.y+=dy[i];if(s.x<=0||s.x>MAXN-2||s.y<=0||s.y>MAXN-2||maze[s.x][s.y]==1)continue;//超出范围if(visit[s.x][s.y]==visit[t.x][t.y]-1){t.x=s.x;t.y=s.y;break;}//倒退回去}}path[k]=start;//放入起点}if(flag==1)break;//向四个方向扩展for(int i=0;i<4;i++){Pos p=t;p.x+=dx[i];p.y+=dy[i];p.step++;if(p.x<=0||p.x>MAXN-2||p.y<=0||p.y>MAXN-2||maze[p.x][p.y]==1||bookBFS[p.x][p.y]==1)continue;bookBFS[p.x][p.y]=1;visit[p.x][p.y]=p.step;q.push(p);}}
}//绘制最短路径BFS
void DrawPath()
{//路径坐标int flag=0;int dx[4]={-1,1,0,0},dy[4]={0,0,-1,1};string road;for(int i=k;i>=0;i--){if(flag==0){flag=1;road="──";}//第一次进入Pos t=path[i];//当前打印位置if(flag==1&&i!=0){Pos s=path[i+1];//存储上一个位置Pos p=path[i-1];//存储下一个位置int tx1,tx2,ty1,ty2;tx1=t.x-s.x;ty1=t.y-s.y;tx2=t.x-p.x;ty2=t.y-p.y;//"┘""┐""└""┌""──""│"if((tx1==-1&&tx2== 1&&ty1== 0&&ty2== 0)||(tx1== 1&&tx2==-1&&ty1== 0&&ty2== 0))road="│";if((tx1== 0&&tx2== 0&&ty1== 1&&ty2==-1)||(tx1== 0&&tx2== 0&&ty1==-1&&ty2== 1))road="──";if((tx1== 0&&tx2==-1&&ty1== 1&&ty2== 0)||(tx1==-1&&tx2== 0&&ty1== 0&&ty2== 1))road="┐";if((tx1== 1&&tx2== 0&&ty1== 0&&ty2==-1)||(tx1== 0&&tx2== 1&&ty1==-1&&ty2== 0))road="└";if((tx1==-1&&tx2== 0&&ty1== 0&&ty2==-1)||(tx1== 0&&tx2==-1&&ty1==-1&&ty2== 0))road="┌";if((tx1== 1&&tx2== 0&&ty1== 0&&ty2== 1)||(tx1== 0&&tx2== 1&&ty1== 1&&ty2== 0))road="┘";}if(i==0)road="─";//出口位置gotoxy(2*t.y,t.x);//每个方格占两个单位cout<<road;}
}//玩家控制界面
void Gamer()
{int x=2;int y=1;//maze行,列int posx=2;int posy=2;//横着每次变化2,竖着每次移动变化1,这个是坐标int stepx=2*MAXN+19,stepy=26;//步数刷新的位置char ch1,ch2;int gamerstep=0;//玩家走的步数//隐藏光标HideCursor();//绘制gotoxy(posx,posy);cout<<"●";//绘制起点gotoxy(2*MAXN+5,2);cout<<"当前关卡:"<<10-Rank;gotoxy(2*MAXN+5,5);cout<<"方 向 控 制";gotoxy(2*MAXN+10,9);cout<<"W";gotoxy(2*MAXN+7,11);cout<<"A  S  D";gotoxy(2*MAXN+10,15);cout<<"或";gotoxy(2*MAXN+10,19);cout<<"↑";gotoxy(2*MAXN+6,22);cout<<"←  ↓  →";gotoxy(2*MAXN+3,26);cout<<"您 走 的 步 数:";gotoxy(2*MAXN+3,30);cout<<"按下列选项序号即可呼出选择";gotoxy(2*MAXN+3,34);cout<<"1 .查看最短路径";gotoxy(2*MAXN+3,38);cout<<"2 .重新选择关卡";gotoxy(2*MAXN+3,42);cout<<"3 .退出游戏";while(!(x==finish.x&&y==finish.y)){//同时启用wasd和方向键ch1=getch();if(ch1==-32)//方向键为双键值{ch2=getch();switch(ch2){case 72:ch1='w';break;//上case 80:ch1='s';break;//下case 75:ch1='a';break;//左case 77:ch1='d';break;//右default: break;}}switch(ch1){case 'w':case 'W':if(maze[x-1][y]==0){gotoxy(posx,posy);cout<<"  ";x--;posy--;gamerstep++;gotoxy(posx,posy);cout<<"●";gotoxy(stepx,stepy);cout<<gamerstep;//实时刷新走的步数}break;case 's':case 'S':if(maze[x+1][y]==0){gotoxy(posx,posy);cout<<"  ";x++;posy++;gamerstep++;gotoxy(posx,posy);cout<<"●";gotoxy(stepx,stepy);cout<<gamerstep;}break;case 'a':case 'A':if(maze[x][y-1]==0&&y-1>=1){gotoxy(posx,posy);cout<<"  ";y--;posx-=2;gamerstep++;gotoxy(posx,posy);cout<<"●";gotoxy(stepx,stepy);cout<<gamerstep;}break;case 'd':case 'D':if(maze[x][y+1]==0){gotoxy(posx,posy);cout<<"  ";y++;posx+=2;gamerstep++;gotoxy(posx,posy);cout<<"●";gotoxy(stepx,stepy);cout<<gamerstep;}break;case  '1':BFS();DrawPath();gotoxy(2*MAXN+3,46);cout<<"最少要走:"<<finish.step<<"步";break;case  '2':choice_level();return ;case  '3':system("cls");return ;}}system("cls");int grade=100-(gamerstep-finish.step),choice=0;if(grade<=0)grade=0;gotoxy(79,12);cout<<"恭喜你通过了本关";gotoxy(80,16);cout<<"您的得分为:"<<grade;gotoxy(70,20);cout<<"温馨提示:用的步数越少,得分越高哦^.^!"<<endl;gotoxy(79,24);cout<<"是否继续下一关";gotoxy(79,28);cout<<"1. 是     2.否";gotoxy(82,32);cin>>choice;if(choice==1){InitMaze();CreateMaze(2,1,--Rank);system("cls");DrawMaze();Gamer();}else{system("cls");return;}}void load_cartoon()
{//动态加载页面int i,l, j;gotoxy(25, 15);for (i = 0; i <= 16; i++){cout<<cartoon1[i];gotoxy(25,16+i);Sleep(100);}for (l = 0; l < 3; l++){ //动态加载开机页面for (i = 53; i <= 71; i = i + 2){for (j = i - 4; j <= i; j = j + 2){if (j >= 53 && j <= 70){gotoxy(j+25, 22);printf("[]");}Sleep(100);}for (j = i - 4; j <= i; j = j + 2){if (j >= 53 && j <= 70){gotoxy(j+25, 22);printf("  ");}}}}//隐藏光标HideCursor();//游戏忠告system("cls");for (i = 0; i <= 20; i++){gotoxy(25, 10+i);cout<<cartoon2[i];}Sleep(4000);//展示logosystem("cls");for (i = 0; i <30; i++){   gotoxy(40,10+i);cout<<logo[i];}Sleep(3000);
}//关卡选择界面
void choice_level()
{ShowCursor();system("cls");int level;gotoxy(75,20);cout<<"请输入你要选择的关卡(1-10):";cin>>level;Rank=10-level;InitMaze();CreateMaze(2,1,Rank);//重新初始化system("cls");DrawMaze();Gamer();
}int main()
{srand((unsigned)time(NULL));//用时间做随机数种子system("mode con cols=200 lines=100");system("color 00");load_cartoon();system("color 70");choice_level();gotoxy(75,20);system("pause");return 0;
}

http://chatgpt.dhexx.cn/article/4kO63G4C.shtml

相关文章

C语言小游戏------贪吃蛇----小白专用

C语言贪吃蛇小游戏 视频正在随缘策划中。。。。 废话在后面直接上程序 该程序在VS2019上可完美运行。 #include<stdio.h> #include<stdlib.h> #include<Windows.h> #include<time.h> #include<conio.h> constexpr auto maphigh 28, mapwid…

bootstrap时间控件--时间选择器

对应上面的三个时间选择器&#xff0c;写法如下&#xff1a; 首先引入css和js&#xff1a; <link href"https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel"stylesheet"> <link href"https://cdn.bootcss.com/bootstrap-…

日期时间控件

标题 开发软件使用到日期时间控件的地方很多&#xff0c;但是很多时候Html5自带的时间控件无法满足开发的需要&#xff0c;所以使用这种时间控件完全没有问题 引用 很多时候我们开发引用别人的控件时候&#xff0c;发现老是出现错误&#xff0c;是因为我们引用出现错误&#x…

时间控件(Time Control)

之前在网上看时间控件&#xff0c;看到这个http://hi.baidu.com/fxh19860822/blog/item/dd17d923343556ae4623e8e9.html&#xff0c;感觉颜色蛮好的&#xff0c;后来觉得要是时针、分针、秒针也可以供用户交互就更好了&#xff0c;不管怎样&#xff0c;有了idea就试试吧。 老规…

时间日期选择控件

这篇blog带来一个感觉不错的时间日期选择控件&#xff0c;当然&#xff0c;该控件也可以自定义选项内容。但这里主要说下时间选择的功能&#xff01; github地址 跟着大神的脚步&#xff0c;总有一天会成为神&#xff01; 效果&#xff1a; 关键点&#xff1a; 该控件可以…

jqueryUI日期控件和时间控件

日期控件用法&#xff1a; <!DOCTYPE html> <head><meta charset"utf-8"><title>日期</title><link rel"stylesheet" href"css/jquery-ui.css"><script src"js/jquery-3.3.1.min.js"><…

Timer时间控件

第一步、创建一个Windows窗体&#xff0c; 第二步、创建样式&#xff0c;在工具箱中找到TextBox和Labell、Button、timer。 第三步、改变属性的Name和 Text&#xff08;就是改写名称&#xff09; 第四步、排版按钮 1&#xff1a;使用的控制器是Label&#xff1b;name改为lbl…

web前端时间控件使用

官方参考地址&#xff1a;http://www.layui.com/laydate/ 1.首先把下载的layDate文件夹放入项目目录下 2.在需要使用的页面引入/layDate/laydate.js 3.创建input并使用js初始化input&#xff0c;获取选择时间值时只需获取input的value即可 官方实例&#xff1a; 生成效果&a…

时间日期控件的使用

在Android中&#xff0c;时间日期控件相对来说还是比较丰富的。其中&#xff0c;DatePicker用来实现日期输入设置&#xff0c;TimePicker用来实现时间输入设置。DatePickerDialog用来显示日期对话框&#xff0c;TimePickerDialog用来显示时间对话框。AnalogClock用来显示一个指…

Android中日期和时间控件的使用

本文主要讲述Android中的日期控件和时间控件的使用&#xff0c;以一个Demo的例子来展示日期和时间控件的使用&#xff0c;先看下如下效果图&#xff1a; 从效果图中可以看到该Demo是通过单击【选择日期】按钮和【选择时间】按钮弹出日期或者时间的对话框&#xff0c;然后设置日…

前端时间控件

1.My97 Datepicker js引入&input标签编写 <script type"text/javascript" src"<%request.getContextPath() %>/js/My97DatePicker/WdatePicker.js"></script> <input style"width: 80%" id"showStartDate&quo…

Android开发之日期时间控件选择

Android开发之日期时间控件选择 文章目录 前言一、创建弹出Layout1.1 新建Layout&#xff0c;修改样式为LinearLayout1.2 Layout中添加日期和时间控件 二、新建DateTimeDialog2.1 创建静态方法2.1.1 创建SetDateDialog&#xff0c;用于选择日期2.1.2 SetDateDialog中绑定textVi…

Web前端-时间日期控件

需求&#xff1a;同时可以选择 时间 和 日期 通过设置type属性为datetime&#xff0c;即可在同一个选择器里同时进行日期和时间的选择 <template><div class"block"><span class"demonstration">默认</span><el-date-pickerv…

android时间控件

原文地址&#xff1a;http://www.360doc.com/content/14/0617/16/18203124_387517665.shtml 前言 这一篇博客分别讲解Android平台下&#xff0c;关于日期和时间的几个相关控件。包括DatePicker&#xff08;日期选择控件&#xff09;、TimePicker&#xff08;时间选择控件&…

时间控件(选择时间范围的插件)

后台开发&#xff0c;一般都是有筛选条件的查询&#xff0c;那么问题就来了&#xff0c;根据日期范围搜索的情况下&#xff0c;插件要怎么选&#xff1f;&#xff1f;&#xff1f;&#xff1f; 这个是最开始&#xff0c;我采用的是两个时间插件&#xff0c;其他也没啥&#xff…

jQuery时间控件

时间控件 <!DOCTYPE html> <html><head><title></title><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><style>.dateinputer{line-height:40px;height:40px;margin:10px 0;border:1px s…

日期/时间控件DateTimePicker

概述&#xff1a; DateTimePicker外观像一个组合框&#xff0c;用于显示日期和时间。当单击其下拉箭头时&#xff0c;会出现一个按月份显示的日历&#xff0c;用户可以从中选择日期。 1、时期/时间控件的属性 属性说明Format用于设置显示日期/时间的格式&#xff0c;可选以下值…

时间控件

最近做了一些前端的时间控件的应用&#xff0c;下边总结一下用的这些控件。 一 Bootstrap的datetimepicker 1. 首先导入必须的css和js文件 <link href"http://netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap-combined.min.css" rel"style…

Chrome vimium 插件

今天发现了一个好玩的Google插件 > vimium直接进入Google官方下载就行&#xff0c;因为我已经下载了&#xff0c;所以后边显示的是评分&#xff0c;没有下载显示的是 添加至Chrome大概意思就是像使用Vim编辑器一样使用Chrome这个是命令文档&#xff0c;翻译不是很难这里就不…

谷歌浏览器chrome翻译插件完美解决开发者模式插件问题

Chrome浏览器之所以让很多人喜欢&#xff0c;是因为它安全、速度快&#xff0c;更重的是它拥有丰富的扩展程序。让普通的浏览器也变得更友好方便。 完美解决谷歌浏览器开发者模式插件弹窗问题 当你在使用一些非谷歌商店认证过的插件、破解过的插件&#xff0c;或者直接使用开发…