AppDelegate.h 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. /**
  2. /Users/apple/Desktop/draft/jiaPei/jiaPei/AppDelegate.h
  3. */
  4. #import <UIKit/UIKit.h>
  5. #import "RQNavigationControllerStack.h"
  6. #import "RQViewModelServicesImpl.h"
  7. #import "RQAppDelegate.h"
  8. //为了保留计时页面不被内存清掉
  9. #import "NYBasetjTimeVC.h"
  10. #import "PeriodVC.h"
  11. #import "ShiCaoPeriodVC.h"
  12. //进入后台相关
  13. #import "LocationTracker.h"
  14. //语音
  15. #import <AVFoundation/AVFoundation.h>
  16. #import "MNQtTrainVC.h"
  17. /// 百度地图
  18. #define BaiDuMapAK @"RYL8cEtkNVavzRymDA06avNyaAmhNArO"
  19. #define RQ_APPDELEGATE [AppDelegate sharedDelegate]
  20. @interface AppDelegate : RQAppDelegate
  21. /// 窗口
  22. @property (strong, nonatomic) UIWindow *window;
  23. @property (strong, nonatomic) UIWindow *splashWindow;
  24. /// APP管理的导航栏的堆栈
  25. @property (nonatomic, readonly, strong) RQNavigationControllerStack *navigationControllerStack;
  26. /// APP的服务层
  27. @property (nonatomic, readonly, strong) RQViewModelServicesImpl *services;
  28. /// 获取AppDelegate
  29. + (AppDelegate *)sharedDelegate;
  30. /// 是否已经弹出键盘 主要用于微信朋友圈的判断
  31. @property (nonatomic, readwrite, assign , getter = isShowKeyboard) BOOL showKeyboard;
  32. /**1顺序,2随机,3章节,4错题,5强化,6排除,7收藏,8背题,9考试 10未做题 11 新规题
  33. */
  34. @property (strong, nonatomic) NSString *type; //区别不同练习
  35. /**@"1"表示科目一。4表示科目4。没有科23.
  36. 2,3用的是urlType(倒2)
  37. */
  38. @property (strong, nonatomic) NSString *subject; //科目
  39. @property (strong, nonatomic) NSString *where; //获取题目条件
  40. @property (strong, nonatomic) NSString *identifyNum;//学员身份证号
  41. @property (strong, nonatomic) NSString *stuId; //学员ID
  42. @property BOOL isLogin; //判断是否登录
  43. @property BOOL isTrain; //判断计时器是否计时
  44. @property BOOL isUseriPhone;//判断启用计时练习
  45. @property (nonatomic,assign)BOOL isNightMode; //是否设置夜间模式
  46. @property (nonatomic,assign)BOOL isNotSoundMode; //是否无声模式
  47. @property (strong, nonatomic) NSString *begin_Time;//训练开始时间
  48. @property (nonatomic, assign) NSInteger optionFont;//题目、选项、及解释的字体大小
  49. //等题库刷新后 查询出错题数
  50. @property (nonatomic, strong) NSMutableArray *faultArray;
  51. //是否是同步过来然后进入主页的
  52. @property (nonatomic, assign) BOOL isSyn;
  53. // 本地广告是否已经展示
  54. @property (nonatomic, assign) BOOL adIsShow;
  55. //更新数据库的时候 存放原有库表grade数据。 考试成绩
  56. @property (nonatomic, strong) NSMutableArray *gradeTableData;
  57. //更新数据库的时候 存放原有库表markQuestion数据 错题排除收藏
  58. @property (nonatomic, strong) NSMutableArray *markQuestionTableData;
  59. /**
  60. 就是为了。从chooseVC传值给leftVC用的题库名。
  61. */
  62. //@property (strong, nonatomic) NSString *libName;
  63. @property (strong, nonatomic) NSString *url; //学车参考
  64. @property (strong, nonatomic) NSString *urlType;//学车参考类型
  65. /**学员计时用的。进入后台后,会终止计时。 所有的计时都用这个定时器吧 因为都是离开的时候暂停 回来打开
  66. */
  67. @property (strong, nonatomic) NSTimer* timer;
  68. //将理论计时页面放在这里 然后定时器也在这里面
  69. //@property (strong, nonatomic) PeriodVC *tPeriodVC;
  70. @property (strong, nonatomic) NYBasetjTimeVC *tPeriodVC;
  71. //将实操计时页面放在这里 然后定时器也在这里面
  72. @property (strong, nonatomic) ShiCaoPeriodVC *scPeriodVC;
  73. /**APNS的TOKEN
  74. */
  75. @property (strong, nonatomic) NSString* token;
  76. /**保存从picker里面选取的img
  77. */
  78. @property (strong,nonatomic) NSMutableArray* pickImgs;
  79. /**保存RGCardViewLayout的offset
  80. */
  81. @property (nonatomic, assign) NSInteger layoutIndex;
  82. /**用户当前经纬
  83. */
  84. @property (nonatomic, retain) NSArray *locationArray;
  85. //将广告存入内存 如果有拿来用 没有就去本地找 都没有 就加载默认图片吧、、
  86. @property (nonatomic, retain) NSArray *adArray;
  87. //嵌入后台相关
  88. @property (nonatomic, assign) BOOL isBackgroundTask;
  89. @property (nonatomic, copy) NSString *backGoundTaskString;
  90. @property (nonatomic, retain) LocationTracker *locationTracker;
  91. @property (nonatomic, retain) NSTimer *locationUpdateTimer;
  92. @property (nonatomic, retain) NSTimer *uploadGPSTimer;
  93. //模拟
  94. /**
  95. Type 定义 0 成功获取学员信息
  96. 1 学员还未在模拟器签到
  97. 2.已在模拟设备登录 未进行人脸比对
  98. 3 无法获取到当前训练科目
  99. 4 隔日签到记录
  100. 5 分钟学时科目异常
  101. */
  102. @property (strong, nonatomic) MNQtTrainVC *mnPeriodVC;
  103. @property (copy, nonatomic) NSString *mnTrainType;
  104. @property(nonatomic, strong) UILabel *trainStateLabel;
  105. //记录当前播放语音 好做关闭处理
  106. @property (retain, nonatomic) AVSpeechSynthesizer *myAudioPlayer;
  107. @property (nonatomic, copy) void (^ backgroundSessionCompletionHandler)(void); // 后台所有下载任务完成回调
  108. @property (nonatomic, assign) BOOL allowOrentitaionRotation;
  109. @end
  110. /**
  111. 单例数据有2种。
  112. 2.用户配置信息,需要长期保存的。
  113. 3.不需要长期保存的。比如:是否计时,开始时间。学车参考,questionType。
  114. <xs:element name="getMyTopicFavs">
  115. */