RCCommandHelp.m 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161
  1. //
  2. // RCCommandHelp.m
  3. // VclustersGemini
  4. //
  5. // Created by APPLE on 2019/11/7.
  6. // Copyright © 2019 APPLE. All rights reserved.
  7. //
  8. #import "RCCommandHelp.h"
  9. #import <objc/runtime.h>
  10. #import "AppDelegate.h"
  11. @implementation RCCommandHelp
  12. #define USENEWCONTROLLCOMMONDNO500 YES
  13. #pragma -mark- 设备控制指令拼接方式
  14. + (NSString *)commandAppending00StringWithSourStr:(NSString *)commondStr
  15. {
  16. NSString *resultStr = @"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000";
  17. resultStr = [resultStr substringToIndex:resultStr.length - commondStr.length];
  18. resultStr = [resultStr stringByAppendingString:commondStr];
  19. // KyoLog(@"\n %s = %lu",__func__,(unsigned long)resultStr.length);
  20. return resultStr;
  21. }
  22. + (NSString *)commandAppendingHeadAndEndStrWithSourStr:(NSString *)commondStr
  23. {
  24. NSString *resultStr = [@"#" stringByAppendingString:commondStr];
  25. resultStr = [resultStr stringByAppendingString:@"$"];
  26. // KyoLog(@"\n %s = %lu",__func__,(unsigned long)resultStr.length);
  27. return resultStr;
  28. }
  29. //#pragma -mark- 新设备控制指令
  30. //+ (NSString *)mutTapCommand500DownWithTouches:(NSArray *)touches
  31. // showImageView:(UIImageView *)showImageView
  32. // isLan:(BOOL)isLan
  33. //{
  34. // /*比列换算*/
  35. //// CGFloat ratex = (showImageView.frame.size.width > showImageView.frame.size.height)?(H_PHONE/showImageView.frame.size.width):(W_PHONE/showImageView.frame.size.width);
  36. //// CGFloat ratey = (showImageView.frame.size.height > showImageView.frame.size.width)?(H_PHONE/showImageView.frame.size.height):(W_PHONE/showImageView.frame.size.height);
  37. //// CGFloat ratex = W_PHONE/showImageView.frame.size.width;
  38. //// CGFloat ratey = H_PHONE/showImageView.frame.size.height;
  39. //
  40. // CGFloat ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  41. // CGFloat ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  42. //
  43. //
  44. // NSString *pointList = @"";
  45. // for (NSInteger nfori = 0;nfori < [touches count];nfori++)
  46. // {
  47. // UITouch *touch = [touches objectAtIndex:nfori];
  48. // CGPoint lastPoint = [touch locationInView:showImageView];
  49. //
  50. // /*换算后的坐标*/
  51. //// CGFloat x = lastPoint.x*ratex;
  52. //// CGFloat y = lastPoint.y*ratey;
  53. // CGFloat x = isLan?(lastPoint.y*ratey):(lastPoint.x*ratex);
  54. // CGFloat y = isLan?((showImageView.frame.size.width - lastPoint.x)*ratex):lastPoint.y*ratey;
  55. //
  56. // pointList = [pointList stringByAppendingString:[NSString stringWithFormat:@"{\"action\":%ld,\"x\":\"%f\",\"y\":\"%f\"}",(long)nfori,x,y]];
  57. // }
  58. //
  59. // pointList = [pointList stringByReplacingOccurrencesOfString:@"}{" withString:@"},{"];
  60. //
  61. // NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"fingerList\":[%@]},\"type\":\"morePortionDown\"}",pointList];
  62. //
  63. // if (USENEWCONTROLLCOMMONDNO500)
  64. // {
  65. //// dataStr = [CommondToStr commondAppendingHeadAndEndStrWithSourStr:dataStr];
  66. // }
  67. // else
  68. // {
  69. // dataStr = [RCCommandHelp commandAppending00StringWithSourStr:dataStr];
  70. // }
  71. //
  72. // return dataStr;
  73. //}
  74. //
  75. //+ (NSString *)mutTapCommand500UpWithTouches:(NSArray *)touches
  76. // showImageView:(UIImageView *)showImageView
  77. // isLan:(BOOL)isLan
  78. //{
  79. // /*比列换算*/
  80. //// CGFloat ratex = (showImageView.frame.size.width > showImageView.frame.size.height)?(H_PHONE/showImageView.frame.size.width):(W_PHONE/showImageView.frame.size.width);
  81. //// CGFloat ratey = (showImageView.frame.size.height > showImageView.frame.size.width)?(H_PHONE/showImageView.frame.size.height):(W_PHONE/showImageView.frame.size.height);
  82. //// CGFloat ratex = W_PHONE/showImageView.frame.size.width;
  83. //// CGFloat ratey = H_PHONE/showImageView.frame.size.height;
  84. // CGFloat ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  85. // CGFloat ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  86. //
  87. // NSString *pointList = @"";
  88. // for (NSInteger nfori = 0;nfori < [touches count];nfori++)
  89. // {
  90. // UITouch *touch = [touches objectAtIndex:nfori];
  91. // CGPoint lastPoint = [touch locationInView:showImageView];
  92. //
  93. // /*换算后的坐标*/
  94. //// CGFloat x = lastPoint.x*ratex;
  95. //// CGFloat y = lastPoint.y*ratey;
  96. // CGFloat x = isLan?(lastPoint.y*ratey):(lastPoint.x*ratex);
  97. // CGFloat y = isLan?((showImageView.frame.size.width - lastPoint.x)*ratex):lastPoint.y*ratey;
  98. //
  99. // pointList = [pointList stringByAppendingString:[NSString stringWithFormat:@"{\"action\":%ld,\"x\":\"%f\",\"y\":\"%f\"}",(long)nfori,x,y]];
  100. // }
  101. //
  102. // pointList = [pointList stringByReplacingOccurrencesOfString:@"}{" withString:@"},{"];
  103. //
  104. // NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"fingerList\":[%@]},\"type\":\"morePortionUp\"}",pointList];
  105. //
  106. //
  107. // if (USENEWCONTROLLCOMMONDNO500)
  108. // {
  109. //// dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  110. // }
  111. // else
  112. // {
  113. // dataStr = [self commandAppending00StringWithSourStr:dataStr];
  114. // }
  115. //
  116. // return dataStr;
  117. //}
  118. //
  119. //+ (NSString *)mutMoveCommand500UpWithTouches:(NSArray *)touches
  120. // showImageView:(UIImageView *)showImageView
  121. // isLan:(BOOL)isLan
  122. //{
  123. // /*比列换算*/
  124. //// CGFloat ratex = (showImageView.frame.size.width > showImageView.frame.size.height)?(H_PHONE/showImageView.frame.size.width):(W_PHONE/showImageView.frame.size.width);
  125. //// CGFloat ratey = (showImageView.frame.size.height > showImageView.frame.size.width)?(H_PHONE/showImageView.frame.size.height):(W_PHONE/showImageView.frame.size.height);
  126. //// CGFloat ratex = W_PHONE/showImageView.frame.size.width;
  127. //// CGFloat ratey = H_PHONE/showImageView.frame.size.height;
  128. //
  129. // CGFloat ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  130. // CGFloat ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  131. //
  132. //
  133. // NSString *pointList = @"";
  134. // for (NSInteger nfori = 0;nfori < [touches count];nfori++)
  135. // {
  136. // UITouch *touch = [touches objectAtIndex:nfori];
  137. // CGPoint lastPoint = [touch locationInView:showImageView];
  138. //
  139. // /*换算后的坐标*/
  140. //// CGFloat x = lastPoint.x*ratex;
  141. //// CGFloat y = lastPoint.y*ratey;
  142. // CGFloat x = isLan?(lastPoint.y*ratey):(lastPoint.x*ratex);
  143. // CGFloat y = isLan?((showImageView.frame.size.width - lastPoint.x)*ratex):lastPoint.y*ratey;
  144. //
  145. // pointList = [pointList stringByAppendingString:[NSString stringWithFormat:@"{\"action\":0,\"x\":\"%f\",\"y\":\"%f\"}",x,y]];
  146. // }
  147. //
  148. // pointList = [pointList stringByReplacingOccurrencesOfString:@"}{" withString:@"},{"];
  149. //
  150. // NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"fingerList\":[%@]},\"type\":\"morePortionMove\"}",pointList];
  151. //
  152. // if (USENEWCONTROLLCOMMONDNO500)
  153. // {
  154. //// dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  155. // }
  156. // else
  157. // {
  158. // dataStr = [self commandAppending00StringWithSourStr:dataStr];
  159. // }
  160. //
  161. // return dataStr;
  162. //}
  163. //
  164. //+ (NSString *)tapDownCommandTouches:(UITouch *)touch
  165. // touchCount:(NSInteger)touchCount
  166. // showImageView:(UIImageView *)showImageView
  167. // isLan:(BOOL)isLan
  168. //{
  169. // int touchid = 0;
  170. //
  171. // if ([touch respondsToSelector:NSSelectorFromString(@"_touchIdentifier")])
  172. // {
  173. // touchid = [[touch valueForKey:@"touchIdentifier"] intValue];
  174. // }
  175. // else/*地址转int*/
  176. // {
  177. // NSString *ip = [NSString stringWithFormat:@"%p",touch];
  178. // ip = [ip substringFromIndex:2];
  179. // NSScanner* scanner = [NSScanner scannerWithString:ip];
  180. // [scanner scanInteger:&touchid];
  181. // }
  182. // CGPoint lastPoint = [touch locationInView:showImageView];
  183. //
  184. // CGFloat ratex = 0.0;
  185. // CGFloat ratey = 0.0;
  186. //
  187. // /*横屏状态下需要坐标翻转*/
  188. // if(showImageView.frame.size.width > showImageView.frame.size.height){/*横屏模式*/
  189. // ratex = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.width;
  190. // ratey = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.height;
  191. // }else{
  192. // ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  193. // ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  194. // }
  195. // CGFloat x = lastPoint.x*ratex;
  196. // CGFloat y = lastPoint.y*ratey;
  197. //
  198. // NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"action\":0,\"count\":%ld,\"pointerId\":%d,\"x\":\"%.2f\",\"y\":\"%.2f\"},\"type\":\"event\"}",(long)touchCount,touchid,x,y];
  199. //
  200. // return dataStr;
  201. //}
  202. //
  203. //+ (NSString *)tapUpCommandTouches:(UITouch *)touch
  204. // touchCount:(NSInteger)touchCount
  205. // showImageView:(UIImageView *)showImageView
  206. // isLan:(BOOL)isLan
  207. //{
  208. // int touchid = 0;
  209. //
  210. // if ([touch respondsToSelector:NSSelectorFromString(@"_touchIdentifier")])
  211. // {
  212. // touchid = [[touch valueForKey:@"touchIdentifier"] intValue];
  213. // }
  214. // else/*地址转int*/
  215. // {
  216. // NSString *ip = [NSString stringWithFormat:@"%p",touch];
  217. // ip = [ip substringFromIndex:2];
  218. // NSScanner* scanner = [NSScanner scannerWithString:ip];
  219. // [scanner scanInteger:&touchid];
  220. // }
  221. //
  222. // CGFloat ratex = 0.0;
  223. // CGFloat ratey = 0.0;
  224. //
  225. // CGPoint lastPoint = [touch locationInView:showImageView];
  226. //
  227. // /*横屏状态下需要坐标翻转*/
  228. // if(showImageView.frame.size.width > showImageView.frame.size.height){/*横屏模式*/
  229. // ratex = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.width;
  230. // ratey = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.height;
  231. // }else{
  232. // ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  233. // ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  234. // }
  235. // CGFloat x = lastPoint.x*ratex;
  236. // CGFloat y = lastPoint.y*ratey;
  237. //
  238. // NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"action\":1,\"count\":%ld,\"pointerId\":%d,\"x\":\"%.2f\",\"y\":\"%.2f\"},\"type\":\"event\"}",(long)touchCount,touchid,x,y];
  239. //
  240. // return dataStr;
  241. //}
  242. //
  243. //+ (NSString *)tapMoveCommandTouches:(UITouch *)touch
  244. // touchCount:(NSInteger)touchCount
  245. // showImageView:(UIImageView *)showImageView
  246. // isLan:(BOOL)isLan
  247. //{
  248. // int touchid = 0;
  249. //
  250. // if ([touch respondsToSelector:NSSelectorFromString(@"_touchIdentifier")])
  251. // {
  252. // touchid = [[touch valueForKey:@"touchIdentifier"] intValue];
  253. // }
  254. // else/*地址转int*/
  255. // {
  256. // NSString *ip = [NSString stringWithFormat:@"%p",touch];
  257. // ip = [ip substringFromIndex:2];
  258. // NSScanner* scanner = [NSScanner scannerWithString:ip];
  259. // [scanner scanInteger:&touchid];
  260. // }
  261. //
  262. // CGFloat ratex = 0.0;
  263. // CGFloat ratey = 0.0;
  264. //
  265. // CGPoint lastPoint = [touch locationInView:showImageView];
  266. //
  267. // /*横屏状态下需要坐标翻转*/
  268. // if(showImageView.frame.size.width > showImageView.frame.size.height){/*横屏模式*/
  269. // ratex = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.width;
  270. // ratey = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.height;
  271. // }else{
  272. // ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  273. // ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  274. // }
  275. // CGFloat x = lastPoint.x*ratex;
  276. // CGFloat y = lastPoint.y*ratey;
  277. //
  278. // NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"action\":2,\"count\":%ld,\"pointerId\":%d,\"x\":\"%.2f\",\"y\":\"%.2f\"},\"type\":\"event\"}",(long)touchCount,touchid,x,y];
  279. //
  280. // return dataStr;
  281. //}
  282. #pragma -mark- 新设备控制指令
  283. + (NSString *)mutTapCommand500DownWithTouches:(NSArray *)touches
  284. showImageView:(UIImageView *)showImageView
  285. isLan:(BOOL)isLan
  286. {
  287. /*比列换算*/
  288. // CGFloat ratex = (showImageView.frame.size.width > showImageView.frame.size.height)?(H_PHONE/showImageView.frame.size.width):(W_PHONE/showImageView.frame.size.width);
  289. // CGFloat ratey = (showImageView.frame.size.height > showImageView.frame.size.width)?(H_PHONE/showImageView.frame.size.height):(W_PHONE/showImageView.frame.size.height);
  290. // CGFloat ratex = W_PHONE/showImageView.frame.size.width;
  291. // CGFloat ratey = H_PHONE/showImageView.frame.size.height;
  292. CGFloat ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  293. CGFloat ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  294. NSString *pointList = @"";
  295. for (NSInteger nfori = 0;nfori < [touches count];nfori++)
  296. {
  297. UITouch *touch = [touches objectAtIndex:nfori];
  298. CGPoint lastPoint = [touch locationInView:showImageView];
  299. /*换算后的坐标*/
  300. // CGFloat x = lastPoint.x*ratex;
  301. // CGFloat y = lastPoint.y*ratey;
  302. CGFloat x = isLan?(lastPoint.y*ratey):(lastPoint.x*ratex);
  303. CGFloat y = isLan?((showImageView.frame.size.width - lastPoint.x)*ratex):lastPoint.y*ratey;
  304. pointList = [pointList stringByAppendingString:[NSString stringWithFormat:@"{\"action\":%ld,\"x\":\"%f\",\"y\":\"%f\"}",(long)nfori,x,y]];
  305. }
  306. pointList = [pointList stringByReplacingOccurrencesOfString:@"}{" withString:@"},{"];
  307. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"fingerList\":[%@]},\"type\":\"morePortionDown\"}",pointList];
  308. if (USENEWCONTROLLCOMMONDNO500)
  309. {
  310. // dataStr = [CommondToStr commondAppendingHeadAndEndStrWithSourStr:dataStr];
  311. }
  312. else
  313. {
  314. dataStr = [RCCommandHelp commandAppending00StringWithSourStr:dataStr];
  315. }
  316. return dataStr;
  317. }
  318. + (NSString *)mutTapCommand500UpWithTouches:(NSArray *)touches
  319. showImageView:(UIImageView *)showImageView
  320. isLan:(BOOL)isLan
  321. {
  322. /*比列换算*/
  323. // CGFloat ratex = (showImageView.frame.size.width > showImageView.frame.size.height)?(H_PHONE/showImageView.frame.size.width):(W_PHONE/showImageView.frame.size.width);
  324. // CGFloat ratey = (showImageView.frame.size.height > showImageView.frame.size.width)?(H_PHONE/showImageView.frame.size.height):(W_PHONE/showImageView.frame.size.height);
  325. // CGFloat ratex = W_PHONE/showImageView.frame.size.width;
  326. // CGFloat ratey = H_PHONE/showImageView.frame.size.height;
  327. CGFloat ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  328. CGFloat ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  329. NSString *pointList = @"";
  330. for (NSInteger nfori = 0;nfori < [touches count];nfori++)
  331. {
  332. UITouch *touch = [touches objectAtIndex:nfori];
  333. CGPoint lastPoint = [touch locationInView:showImageView];
  334. /*换算后的坐标*/
  335. // CGFloat x = lastPoint.x*ratex;
  336. // CGFloat y = lastPoint.y*ratey;
  337. CGFloat x = isLan?(lastPoint.y*ratey):(lastPoint.x*ratex);
  338. CGFloat y = isLan?((showImageView.frame.size.width - lastPoint.x)*ratex):lastPoint.y*ratey;
  339. pointList = [pointList stringByAppendingString:[NSString stringWithFormat:@"{\"action\":%ld,\"x\":\"%f\",\"y\":\"%f\"}",(long)nfori,x,y]];
  340. }
  341. pointList = [pointList stringByReplacingOccurrencesOfString:@"}{" withString:@"},{"];
  342. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"fingerList\":[%@]},\"type\":\"morePortionUp\"}",pointList];
  343. if (USENEWCONTROLLCOMMONDNO500)
  344. {
  345. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  346. }
  347. else
  348. {
  349. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  350. }
  351. return dataStr;
  352. }
  353. + (NSString *)mutMoveCommand500UpWithTouches:(NSArray *)touches
  354. showImageView:(UIImageView *)showImageView
  355. isLan:(BOOL)isLan
  356. {
  357. /*比列换算*/
  358. // CGFloat ratex = (showImageView.frame.size.width > showImageView.frame.size.height)?(H_PHONE/showImageView.frame.size.width):(W_PHONE/showImageView.frame.size.width);
  359. // CGFloat ratey = (showImageView.frame.size.height > showImageView.frame.size.width)?(H_PHONE/showImageView.frame.size.height):(W_PHONE/showImageView.frame.size.height);
  360. // CGFloat ratex = W_PHONE/showImageView.frame.size.width;
  361. // CGFloat ratey = H_PHONE/showImageView.frame.size.height;
  362. CGFloat ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  363. CGFloat ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  364. NSString *pointList = @"";
  365. for (NSInteger nfori = 0;nfori < [touches count];nfori++)
  366. {
  367. UITouch *touch = [touches objectAtIndex:nfori];
  368. CGPoint lastPoint = [touch locationInView:showImageView];
  369. /*换算后的坐标*/
  370. // CGFloat x = lastPoint.x*ratex;
  371. // CGFloat y = lastPoint.y*ratey;
  372. CGFloat x = isLan?(lastPoint.y*ratey):(lastPoint.x*ratex);
  373. CGFloat y = isLan?((showImageView.frame.size.width - lastPoint.x)*ratex):lastPoint.y*ratey;
  374. pointList = [pointList stringByAppendingString:[NSString stringWithFormat:@"{\"action\":0,\"x\":\"%f\",\"y\":\"%f\"}",x,y]];
  375. }
  376. pointList = [pointList stringByReplacingOccurrencesOfString:@"}{" withString:@"},{"];
  377. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"fingerList\":[%@]},\"type\":\"morePortionMove\"}",pointList];
  378. if (USENEWCONTROLLCOMMONDNO500)
  379. {
  380. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  381. }
  382. else
  383. {
  384. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  385. }
  386. return dataStr;
  387. }
  388. + (NSString *)tapDownCommandTouches:(UITouch *)touch
  389. touchCount:(NSInteger)touchCount
  390. showImageView:(UIImageView *)showImageView
  391. isLan:(BOOL)isLan
  392. {
  393. int touchid = 0;
  394. if ([touch respondsToSelector:NSSelectorFromString(@"_touchIdentifier")])
  395. {
  396. touchid = [[touch valueForKey:@"touchIdentifier"] intValue];
  397. }
  398. else/*地址转int*/
  399. {
  400. NSString *ip = [NSString stringWithFormat:@"%p",touch];
  401. ip = [ip substringFromIndex:2];
  402. NSScanner* scanner = [NSScanner scannerWithString:ip];
  403. [scanner scanInteger:&touchid];
  404. }
  405. CGFloat ratex = 0.0;
  406. CGFloat ratey = 0.0;
  407. ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  408. ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  409. NSLog(@"kk is 1");
  410. CGPoint lastPoint = [touch locationInView:showImageView];
  411. CGFloat x = isLan?(lastPoint.y*ratey):(lastPoint.x*ratex);
  412. CGFloat y = isLan?((showImageView.frame.size.width - lastPoint.x)*ratex):lastPoint.y*ratey;
  413. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"action\":0,\"count\":%ld,\"pointerId\":%d,\"x\":\"%.2f\",\"y\":\"%.2f\"},\"type\":\"event\"}",(long)touchCount,touchid,x,y];
  414. return dataStr;
  415. }
  416. + (NSString *)tapUpCommandTouches:(UITouch *)touch
  417. touchCount:(NSInteger)touchCount
  418. showImageView:(UIImageView *)showImageView
  419. isLan:(BOOL)isLan
  420. {
  421. int touchid = 0;
  422. if ([touch respondsToSelector:NSSelectorFromString(@"_touchIdentifier")])
  423. {
  424. touchid = [[touch valueForKey:@"touchIdentifier"] intValue];
  425. }
  426. else/*地址转int*/
  427. {
  428. NSString *ip = [NSString stringWithFormat:@"%p",touch];
  429. ip = [ip substringFromIndex:2];
  430. NSScanner* scanner = [NSScanner scannerWithString:ip];
  431. [scanner scanInteger:&touchid];
  432. }
  433. CGFloat ratex = 0.0;
  434. CGFloat ratey = 0.0;
  435. ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  436. ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  437. NSLog(@"kk is 3");
  438. CGPoint lastPoint = [touch locationInView:showImageView];
  439. CGFloat x = isLan?(lastPoint.y*ratey):(lastPoint.x*ratex);
  440. CGFloat y = isLan?((showImageView.frame.size.width - lastPoint.x)*ratex):lastPoint.y*ratey;
  441. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"action\":1,\"count\":%ld,\"pointerId\":%d,\"x\":\"%.2f\",\"y\":\"%.2f\"},\"type\":\"event\"}",(long)touchCount,touchid,x,y];
  442. return dataStr;
  443. }
  444. + (NSString *)tapMoveCommandTouches:(UITouch *)touch
  445. touchCount:(NSInteger)touchCount
  446. showImageView:(UIImageView *)showImageView
  447. isLan:(BOOL)isLan
  448. {
  449. int touchid = 0;
  450. if ([touch respondsToSelector:NSSelectorFromString(@"_touchIdentifier")])
  451. {
  452. touchid = [[touch valueForKey:@"touchIdentifier"] intValue];
  453. }
  454. else/*地址转int*/
  455. {
  456. NSString *ip = [NSString stringWithFormat:@"%p",touch];
  457. ip = [ip substringFromIndex:2];
  458. NSScanner* scanner = [NSScanner scannerWithString:ip];
  459. [scanner scanInteger:&touchid];
  460. }
  461. CGFloat ratex = 0.0;
  462. CGFloat ratey = 0.0;
  463. ratex = ksharedAppDelegate.couldPhone_W_PHONE/showImageView.frame.size.width;
  464. ratey = ksharedAppDelegate.couldPhone_H_PHONE/showImageView.frame.size.height;
  465. NSLog(@"kk is 2");
  466. CGPoint lastPoint = [touch locationInView:showImageView];
  467. CGFloat x = isLan?(lastPoint.y*ratey):(lastPoint.x*ratex);
  468. CGFloat y = isLan?((showImageView.frame.size.width - lastPoint.x)*ratex):lastPoint.y*ratey;
  469. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"action\":2,\"count\":%ld,\"pointerId\":%d,\"x\":\"%.2f\",\"y\":\"%.2f\"},\"type\":\"event\"}",(long)touchCount,touchid,x,y];
  470. return dataStr;
  471. }
  472. + (NSString *)toStopControllerDevice500
  473. {
  474. NSString *stopContrStr = [NSString stringWithFormat:@"{\"data\":{\"x\":\"%d\",\"y\":\"%d\"},\"type\":\"closeServer\"}",0,0];
  475. if (USENEWCONTROLLCOMMONDNO500)
  476. {
  477. // stopContrStr = [self commondAppendingHeadAndEndStrWithSourStr:stopContrStr];
  478. }
  479. else
  480. {
  481. stopContrStr = [self commandAppending00StringWithSourStr:stopContrStr];
  482. }
  483. return stopContrStr;
  484. }
  485. /**
  486. * @brief 摇一摇
  487. *
  488. */
  489. + (NSString *)commandShake{
  490. NSString *stopContrStr = @"{\"data\":{},\"type\":\"shakeit\"}";
  491. if (USENEWCONTROLLCOMMONDNO500)
  492. {
  493. // stopContrStr = [self commondAppendingHeadAndEndStrWithSourStr:stopContrStr];
  494. }
  495. else
  496. {
  497. stopContrStr = [self commandAppending00StringWithSourStr:stopContrStr];
  498. }
  499. return stopContrStr;
  500. }
  501. /**
  502. * @brief 开启本地键盘透传
  503. *
  504. */
  505. + (NSString *)commandOpenLoaclKeyboad{
  506. NSString *stopContrStr = @"{\"data\":{\"type\":1},\"type\":\"InputMethod\"}";
  507. if (USENEWCONTROLLCOMMONDNO500)
  508. {
  509. // stopContrStr = [self commondAppendingHeadAndEndStrWithSourStr:stopContrStr];
  510. }
  511. else
  512. {
  513. stopContrStr = [self commandAppending00StringWithSourStr:stopContrStr];
  514. }
  515. return stopContrStr;
  516. }
  517. /**
  518. * @brief 关闭本地键盘透传
  519. *
  520. */
  521. + (NSString *)commandCloseLoaclKeyboad{
  522. NSString *stopContrStr = @"{\"data\":{\"type\":2},\"type\":\"InputMethod\"}";
  523. if (USENEWCONTROLLCOMMONDNO500)
  524. {
  525. // stopContrStr = [self commondAppendingHeadAndEndStrWithSourStr:stopContrStr];
  526. }
  527. else
  528. {
  529. stopContrStr = [self commandAppending00StringWithSourStr:stopContrStr];
  530. }
  531. return stopContrStr;
  532. }
  533. /**
  534. * @brief 关闭云手机键盘透传
  535. *
  536. */
  537. + (NSString *)commandClosePhoneKeyboad{
  538. NSString *stopContrStr = @"{\"data\":{\"keyCode\":66},\"type\":\"keyCode\"}";
  539. if (USENEWCONTROLLCOMMONDNO500)
  540. {
  541. // stopContrStr = [self commondAppendingHeadAndEndStrWithSourStr:stopContrStr];
  542. }
  543. else
  544. {
  545. stopContrStr = [self commandAppending00StringWithSourStr:stopContrStr];
  546. }
  547. return stopContrStr;
  548. }
  549. /**
  550. * @brief 发送透传文字给云手机/输入或者删除
  551. *
  552. * @param str 输入的内容 为nil时为删除
  553. *
  554. */
  555. + (NSString *)commandKeyboadInputStr:( NSString* _Nullable )str{
  556. NSString *stopContrStr = [NSString stringWithFormat:@"{\"data\":{\"KeyBoardData\":\"%@\",\"position\":1},\"type\":\"KeyoardInfo\"}",str];
  557. if (str == nil){
  558. stopContrStr = @"{\"data\":{\"KeyBoardData\":\"\",\"position\":-1},\"type\":\"KeyoardInfo\"}";
  559. }else{
  560. }
  561. if (USENEWCONTROLLCOMMONDNO500)
  562. {
  563. // stopContrStr = [self commondAppendingHeadAndEndStrWithSourStr:stopContrStr];
  564. }
  565. else
  566. {
  567. stopContrStr = [self commandAppending00StringWithSourStr:stopContrStr];
  568. }
  569. return stopContrStr;
  570. }
  571. /**
  572. * @brief 获取发给安卓手机的指令字符串
  573. *
  574. * @param code 指令类型 3:home 4:back 25:声音-键 24:声音+键 187:后台切换
  575. *
  576. */
  577. + (NSString *)commandBackOrHomeVolum500WithKeyCode:(int)code
  578. {
  579. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"keyCode\":\"%d\"},\"type\":\"keyCode\"}",code];
  580. // dataStr = [NSString stringWithFormat:@"%ld%@",dataStr.length,dataStr];
  581. if (USENEWCONTROLLCOMMONDNO500)
  582. {
  583. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  584. }
  585. else
  586. {
  587. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  588. }
  589. return dataStr;
  590. }
  591. /**
  592. * @brief 获取发给安卓手机设置分辨率的指令字符串
  593. *
  594. * @param type 200:极速 400:高速 600:标清 800:自动 1000:高清
  595. *
  596. */
  597. + (NSString *)commandResolution500WithType:(NSUInteger)type
  598. {
  599. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"definition\":%ld,\"clientType\":\"ios\",\"sceneType\":\"cloudPhone\"},\"type\":2}",type];
  600. if (USENEWCONTROLLCOMMONDNO500)
  601. {
  602. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  603. }
  604. else
  605. {
  606. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  607. }
  608. return dataStr;
  609. }
  610. + (NSString *)commandSetFps{
  611. NSString *dataStr = @"{\"data\":{\"frame_rate\":25,\"clientType\":\"ios\"},\"type\":5}";
  612. if (USENEWCONTROLLCOMMONDNO500)
  613. {
  614. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  615. }
  616. else
  617. {
  618. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  619. }
  620. return dataStr;
  621. }
  622. /**
  623. * @brief 云手机预览图指令
  624. */
  625. + (NSString *)commandGetScreenPicWithTaskUid:(NSString *)taskUid intervalTime:(int)intervalTime
  626. {
  627. NSString *dataStr = [NSString stringWithFormat:@"{\"type\":\"getScreenPic\",\"data\":{\"taskUid\":\"%@\",\"intervalTime\":\"%d\"}}",taskUid,intervalTime];
  628. if (USENEWCONTROLLCOMMONDNO500)
  629. {
  630. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  631. }
  632. else
  633. {
  634. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  635. }
  636. return dataStr;
  637. }
  638. /**
  639. * @brief 云手机截图指令
  640. */
  641. + (NSString *)commandCloudPhoneScreenshotWithTaskUid:(NSString *)taskUid
  642. {
  643. NSString *dataStr = [NSString stringWithFormat:@"{\"type\":\"shortCat\",\"data\":{\"taskUid\":\"%@\"}}",taskUid];
  644. if (USENEWCONTROLLCOMMONDNO500)
  645. {
  646. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  647. }
  648. else
  649. {
  650. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  651. }
  652. return dataStr;
  653. }
  654. /**
  655. * @brief 云手机下载透传指令(云游戏下载透传到云手机)
  656. */
  657. + (NSString *)commandCloudPhoneDownloadWithTaskUid:(NSString *)taskUid apkUrl:(NSString *)apkUrl {
  658. NSString *dataStr = [NSString stringWithFormat:@"{\"type\":\"downAndInstallApk\",\"data\":{\"taskUid\":\"%@\",\"apkUrl\":\"%@\"}}",taskUid,apkUrl];
  659. if (USENEWCONTROLLCOMMONDNO500)
  660. {
  661. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  662. }
  663. else
  664. {
  665. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  666. }
  667. return dataStr;
  668. }
  669. /**
  670. * @brief 云游戏支付透传指令 (云游戏在本地支付完成透传到云手机)payResult 0:失败 1:成功
  671. */
  672. + (NSString *)commandCloudPhonePayWithTaskUid:(NSString *)taskUid payResult:(int)payResult {
  673. NSString *dataStr = [NSString stringWithFormat:@"{\"type\":\"payResult\",\"data\":{\"result\":\"%d\"}}",payResult];
  674. if (USENEWCONTROLLCOMMONDNO500)
  675. {
  676. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  677. }
  678. else
  679. {
  680. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  681. }
  682. return dataStr;
  683. }
  684. /**
  685. * @brief 剪切板接口
  686. *
  687. * @param str 要剪切的文本
  688. *
  689. */
  690. + (NSString *)commandCuttingWithContent:(NSString *)str
  691. {
  692. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"str\":\"%@\"},\"type\":\"cutting\"}",str];
  693. // dataStr = [NSString stringWithFormat:@"%ld%@",dataStr.length,dataStr];
  694. if (USENEWCONTROLLCOMMONDNO500)
  695. {
  696. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  697. }
  698. else
  699. {
  700. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  701. }
  702. return dataStr;
  703. }
  704. /**
  705. * @brief 记录推流开始时间
  706. *
  707. * @param deviceid 云手机id
  708. *
  709. */
  710. + (NSString *)commandConnectedWithDeviceId:(NSString *)deviceid
  711. {
  712. NSString *eventId = @"7";
  713. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"deviceId\":\"%@\"},\"type\":\"%@\"}",deviceid,eventId];
  714. if (USENEWCONTROLLCOMMONDNO500)
  715. {
  716. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  717. }
  718. else
  719. {
  720. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  721. }
  722. return dataStr;
  723. }
  724. + (NSArray *)getAllIvar:(id)object
  725. {
  726. NSMutableArray *array = [NSMutableArray array];
  727. unsigned int count;
  728. Ivar *ivars = class_copyIvarList([object class], &count);
  729. for (int i = 0; i < count; i++) {
  730. Ivar ivar = ivars[i];
  731. const char *keyChar = ivar_getName(ivar);
  732. NSString *keyStr = [NSString stringWithCString:keyChar encoding:NSUTF8StringEncoding];
  733. @try {
  734. id valueStr = [object valueForKey:keyStr];
  735. NSDictionary *dic = nil;
  736. if (valueStr) {
  737. dic = @{keyStr : valueStr};
  738. } else {
  739. dic = @{keyStr : @"值为nil"};
  740. }
  741. [array addObject:dic];
  742. }
  743. @catch (NSException *exception) {}
  744. }
  745. return [array copy];
  746. }
  747. + (NSString *)askControllcommandWithUseName:(NSString*)useName{
  748. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"code\":\"3000\",\"userName\":\"%@\",\"desc\":\"询问是否有在控制\"},\"type\":\"forwardMsg\"}",useName];
  749. // dataStr = [NSString stringWithFormat:@"%ld%@",dataStr.length,dataStr];
  750. if (USENEWCONTROLLCOMMONDNO500)
  751. {
  752. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  753. }
  754. else
  755. {
  756. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  757. }
  758. return dataStr;
  759. }
  760. + (NSString *)faceBackControllcommandWithUseName:(NSString*)useName haveControl:(BOOL)haveControl{
  761. NSString *code = @"4000";
  762. NSString *desc = @"有在控制";
  763. if (haveControl == NO) {
  764. code = @"4100";
  765. desc = @"未控制";
  766. }
  767. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"code\":\"%@\",\"userName\":\"%@\",\"desc\":\"%@\"},\"type\":\"forwardMsg\"}",code,useName,desc];
  768. // dataStr = [NSString stringWithFormat:@"%ld%@",dataStr.length,dataStr];
  769. if (USENEWCONTROLLCOMMONDNO500)
  770. {
  771. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  772. }
  773. else
  774. {
  775. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  776. }
  777. return dataStr;
  778. }
  779. + (NSString *)getBackControllcommandWithUseName:(NSString*)useName{
  780. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"code\":\"5000\",\"userName\":\"%@\",\"desc\":\"控制权限收回\"},\"type\":\"forwardMsg\"}",useName];
  781. // dataStr = [NSString stringWithFormat:@"%ld%@",dataStr.length,dataStr];
  782. if (USENEWCONTROLLCOMMONDNO500)
  783. {
  784. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  785. }
  786. else
  787. {
  788. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  789. }
  790. return dataStr;
  791. }
  792. + (NSString *)getPhoneSizecommand{
  793. NSString *dataStr = [NSString stringWithFormat:@"{\"type\":\"getPhoneSize\"}"];
  794. // dataStr = [NSString stringWithFormat:@"%ld%@",dataStr.length,dataStr];
  795. if (USENEWCONTROLLCOMMONDNO500)
  796. {
  797. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  798. }
  799. else
  800. {
  801. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  802. }
  803. return dataStr;
  804. }
  805. + (NSString *)setPhoneSizecommandWithWidth:(NSInteger)width high:(NSInteger)high dpi:(NSInteger)dpi{
  806. NSString *dataStr = [NSString stringWithFormat:@"{\"data\":{\"width\":\"%ld\",\"height\":\"%ld\",\"dpi\":\"%ld\"},\"type\":\"setPhoneSize\"}",width,high,dpi];
  807. // dataStr = [NSString stringWithFormat:@"%ld%@",dataStr.length,dataStr];
  808. if (USENEWCONTROLLCOMMONDNO500)
  809. {
  810. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  811. }
  812. else
  813. {
  814. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  815. }
  816. return dataStr;
  817. }
  818. + (NSString *)noSyncWifiBack{
  819. NSString *dataStr = @"{\"data\":\"2\",\"type\":\"sync_wifi_back\"}";
  820. // dataStr = [NSString stringWithFormat:@"%ld%@",dataStr.length,dataStr];
  821. if (USENEWCONTROLLCOMMONDNO500)
  822. {
  823. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  824. }
  825. else
  826. {
  827. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  828. }
  829. return dataStr;
  830. }
  831. + (NSString *)downLoadAppWithAppUrl:(NSString*)appurl appId:(NSString *)appid{
  832. NSString *dataStr =[NSString stringWithFormat:@"{\"data\":{\"apkUrl\":\"%@\",\"taskUid\":\"%@\"},\"type\":\"downAndInstallApk\"}",appurl,appid];
  833. if (USENEWCONTROLLCOMMONDNO500)
  834. {
  835. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  836. }
  837. else
  838. {
  839. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  840. }
  841. return dataStr;
  842. }
  843. + (NSString *)applyForUploadFileBy:(NSString*)taskUid filePath:(NSString *)filePath
  844. {
  845. NSString * uploadDefaultPath = [HWDataManager getStringWithKey:stringKeyAddSn(Const_photo_upload_default_path)];
  846. if(!uploadDefaultPath || uploadDefaultPath.length == 0){
  847. [HWDataManager setStringWithKey:stringKeyAddSn(Const_photo_upload_default_path) value:Const_default_upload_path];
  848. uploadDefaultPath = Const_default_upload_path;
  849. }
  850. //判断最后一个是否是/
  851. NSString *lastStr= [uploadDefaultPath substringFromIndex:uploadDefaultPath.length-1];
  852. if(![lastStr isEqualToString:@"/"]){
  853. uploadDefaultPath = [[NSString alloc] initWithFormat:@"%@/",uploadDefaultPath];
  854. }
  855. NSString*savePath = [[NSString alloc] initWithFormat:@"%@%@",uploadDefaultPath,filePath];
  856. //NSString *dataStr =[NSString stringWithFormat:@"{\"data\":{\"taskUid\":\"%@\",\"filePath\":\"%@\",\"savePath\":\"%@\"},\"type\":\"uploadFileRandom\"}",taskUid,filePath,savePath];
  857. NSString *dataStr =[NSString stringWithFormat:@"{\"data\":{\"taskUid\":\"%@\",\"filePath\":\"%@\",\"savePath\":\"%@\"},\"type\":\"uploadFilePart\"}",taskUid,filePath,savePath];
  858. if (USENEWCONTROLLCOMMONDNO500)
  859. {
  860. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  861. }
  862. else
  863. {
  864. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  865. }
  866. return dataStr;
  867. }
  868. + (NSString *)applyForBackupsFileBy:(NSString*)taskUid withFileName:(NSString *)fileName withSavePath:(NSString *)savePath
  869. {
  870. NSString *curPath = [[NSString alloc] initWithFormat:@"%@%@",savePath,fileName];
  871. //NSString *dataStr =[NSString stringWithFormat:@"{\"data\":{\"taskUid\":\"%@\",\"fileName\":\"%@\",\"savePath\":\"%@\"},\"type\":\"backUpFileRandom\"}",taskUid,fileName,curPath];
  872. NSString *dataStr =[NSString stringWithFormat:@"{\"data\":{\"taskUid\":\"%@\",\"fileName\":\"%@\",\"savePath\":\"%@\"},\"type\":\"backUpFilePart\"}",taskUid,fileName,curPath];
  873. if (USENEWCONTROLLCOMMONDNO500)
  874. {
  875. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  876. }
  877. else
  878. {
  879. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  880. }
  881. return dataStr;
  882. }
  883. + (NSString *)applyForCreateFolderwithFolderName:(NSString *)pathAndfolderName
  884. {
  885. //NSString * name = [[NSString alloc] initWithFormat:@"sdcard/%@",folderName];
  886. NSString *dataStr =[NSString stringWithFormat:@"{\"data\":{\"path\":\"%@\"},\"type\":\"mkdir\"}",pathAndfolderName];
  887. if (USENEWCONTROLLCOMMONDNO500)
  888. {
  889. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  890. }
  891. else
  892. {
  893. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  894. }
  895. return dataStr;
  896. }
  897. + (NSString *)getCreateFolderList
  898. {
  899. NSString *dataStr = @"{\"data\":{},\"type\":\"getBackupPath\"}";
  900. if (USENEWCONTROLLCOMMONDNO500)
  901. {
  902. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  903. }
  904. else
  905. {
  906. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  907. }
  908. return dataStr;
  909. }
  910. + (NSString *)searchCouldPhoneFilewithType:(NSString *)fileType withPath:(NSString*)pathStr
  911. {
  912. NSString *dataStr =[NSString stringWithFormat:@"{\"data\":{\"fileType\":\"%@\",\"folder\":\"%@\",},\"type\":\"search\"}",fileType,pathStr];
  913. if (USENEWCONTROLLCOMMONDNO500)
  914. {
  915. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  916. }
  917. else
  918. {
  919. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  920. }
  921. return dataStr;
  922. }
  923. + (NSString *)applyForDownloadFileBy:(NSString *)taskUid withFilePath:(NSString *)filePath withPosition:(long)position
  924. {
  925. NSString *dataStr =[NSString stringWithFormat:@"{\"data\":{\"taskUid\":\"%@\",\"filePath\":\"%@\",\"position\":\"%ld\"},\"type\":\"fileCommand\"}",taskUid,filePath,position];
  926. if (USENEWCONTROLLCOMMONDNO500)
  927. {
  928. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  929. }
  930. else
  931. {
  932. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  933. }
  934. return dataStr;
  935. }
  936. + (NSString *)getExtraFilesList
  937. {
  938. NSString *dataStr = @"{\"data\":{},\"type\":\"getExtraFiles\"}";
  939. if (USENEWCONTROLLCOMMONDNO500)
  940. {
  941. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  942. }
  943. else
  944. {
  945. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  946. }
  947. return dataStr;
  948. }
  949. + (NSString *)uploadOrBackupsDoneBy:(NSString *)taskUid withFileName:(NSString *)fileName
  950. withType:(BOOL)isUploadType
  951. {
  952. NSString *savePath = nil;
  953. if(isUploadType){
  954. NSString * uploadDefaultPath = [HWDataManager getStringWithKey:stringKeyAddSn(Const_photo_upload_default_path)];
  955. if(!uploadDefaultPath || uploadDefaultPath.length == 0){
  956. [HWDataManager setStringWithKey:stringKeyAddSn(Const_photo_upload_default_path) value:Const_default_upload_path];
  957. uploadDefaultPath = Const_default_upload_path;
  958. }
  959. //判断最后一个是否是/
  960. NSString *lastStr= [uploadDefaultPath substringFromIndex:uploadDefaultPath.length-1];
  961. if(![lastStr isEqualToString:@"/"]){
  962. uploadDefaultPath = [[NSString alloc] initWithFormat:@"%@/",uploadDefaultPath];
  963. }
  964. savePath = [[NSString alloc] initWithFormat:@"%@%@",uploadDefaultPath,fileName];
  965. }
  966. else{
  967. NSString * backupsDefaultPath = [HWDataManager getStringWithKey:stringKeyAddSn(Const_photo_backups_default_path)];
  968. if(!backupsDefaultPath || backupsDefaultPath.length == 0){
  969. backupsDefaultPath = Const_default_backups_path;
  970. [HWDataManager setStringWithKey:stringKeyAddSn(Const_photo_backups_default_path) value:backupsDefaultPath];
  971. }
  972. NSString *lastStr= [backupsDefaultPath substringFromIndex:backupsDefaultPath.length-1];
  973. if(![lastStr isEqualToString:@"/"]){
  974. backupsDefaultPath = [[NSString alloc] initWithFormat:@"%@/",backupsDefaultPath];
  975. }
  976. savePath = [[NSString alloc] initWithFormat:@"%@%@",backupsDefaultPath,fileName];
  977. }
  978. NSString *dataStr =[NSString stringWithFormat:@"{\"data\":{\"taskUid\":\"%@\",\"filePath\":\"%@\"},\"type\":\"fileFinish\"}",taskUid,savePath];
  979. if (USENEWCONTROLLCOMMONDNO500)
  980. {
  981. // dataStr = [self commondAppendingHeadAndEndStrWithSourStr:dataStr];
  982. }
  983. else
  984. {
  985. dataStr = [self commandAppending00StringWithSourStr:dataStr];
  986. }
  987. return dataStr;
  988. }
  989. @end