main.c 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #include <stdio.h>
  2. #include <signal.h>
  3. #include <unistd.h>
  4. #include<stdbool.h>
  5. #include "../../cmd/CarLinkWrapper.h"
  6. bool gRunning = false;
  7. void *gHandle = NULL;
  8. static void signal_handler(int sig) {
  9. switch (sig) {
  10. case SIGINT:
  11. case SIGTERM:
  12. printf("%s:%s:%d\r\n",__FILE__,__func__,__LINE__);
  13. gRunning = false;
  14. break;
  15. }
  16. }
  17. static void init_signals(void) {
  18. struct sigaction sigact;
  19. sigact.sa_handler = signal_handler;
  20. sigemptyset(&sigact.sa_mask);
  21. sigact.sa_flags = 0;
  22. sigaction(SIGINT, &sigact, NULL);
  23. sigaction(SIGTERM, &sigact, NULL);
  24. }
  25. void usbstate(int connect_status, int phone_type)
  26. {
  27. printf("%s:%s:%d\r\n",__FILE__,__func__,__LINE__);
  28. if(connect_status == 0 && phone_type == 2)
  29. Start(gHandle, 0, 0);
  30. printf("connect_status = %d, phone_type = %d\r\n", connect_status, phone_type);
  31. }
  32. void appstatus(int appStatus, void *reserved)
  33. {
  34. printf("%s:%s:%d\r\n",__FILE__,__func__,__LINE__);
  35. printf("appStatus = %d\r\n", appStatus);
  36. }
  37. int main(void)
  38. {
  39. init_signals();
  40. printf("%s:%s:%d\r\n",__FILE__,__func__,__LINE__);
  41. gHandle = GetInstance();
  42. RegisterUsbState(gHandle, usbstate);
  43. RegisterAppStatus(gHandle, appstatus);
  44. InitCarLinkPlayer(gHandle);
  45. gRunning = true;
  46. while (gRunning) {
  47. sleep(1);
  48. }
  49. printf("%s:%s:%d\r\n",__FILE__,__func__,__LINE__);
  50. printf("%s:%s:%d process exited\r\n",__FILE__,__func__,__LINE__);
  51. return 0;
  52. }