logger.ts 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. const DEBUG: boolean = false;
  2. const INTOOLS: boolean=true;
  3. export function log(msg: string): void {
  4. if (DEBUG) {
  5. log4Android(msg);
  6. } else {
  7. console.log(msg);
  8. }
  9. }
  10. export function log4AndroidD(msg: string,tag:string): void {
  11. let log = "android.util.Log";
  12. let log_cls = Java.use(log);
  13. log_cls.d(tag, msg);
  14. }
  15. export function log4AndroidV(msg: string,tag:string): void {
  16. let log = "android.util.Log";
  17. let log_cls = Java.use(log);
  18. log_cls.v(tag, msg);
  19. }
  20. export function log4AndroidI(msg: string,tag:string): void {
  21. let log = "android.util.Log";
  22. let log_cls = Java.use(log);
  23. log_cls.i(tag, msg);
  24. }
  25. export function log4AndroidW(msg: string,tag:string): void {
  26. let log = "android.util.Log";
  27. let log_cls = Java.use(log);
  28. log_cls.w(tag, msg);
  29. }
  30. export function log4AndroidE(msg: string,tag:string): void {
  31. let log = "android.util.Log";
  32. let log_cls = Java.use(log);
  33. log_cls.e(tag, msg);
  34. }
  35. export function log4Android(msg: string): void {
  36. let log = "android.util.Log";
  37. let log_cls = Java.use(log);
  38. log_cls.w("Dumper", msg);
  39. }
  40. export function logHHex(pointer :NativePointer) :void {
  41. let s = hexdump(pointer, {
  42. offset: 0,
  43. length: 64,
  44. header: true,
  45. ansi: true
  46. });
  47. console.log(s);
  48. }
  49. export function logHHexLength(pointer :NativePointer,length: number) :void {
  50. console.log(hexdump(pointer, {
  51. offset: 0,
  52. length: length,
  53. header: true,
  54. ansi: true
  55. }));
  56. }
  57. export function logColor(message: string, type: number): void {
  58. if (DEBUG) {
  59. log4Android(message);
  60. return;
  61. }
  62. if (INTOOLS){
  63. log(message)
  64. return;
  65. }
  66. if (type == undefined) {
  67. log(message)
  68. return;
  69. }
  70. switch (type) {
  71. case LogColor.WHITE:
  72. log(message);
  73. break;
  74. case LogColor.RED:
  75. console.error(message);
  76. break;
  77. case LogColor.YELLOW:
  78. console.warn(message);
  79. break;
  80. default:
  81. console.log("\x1b[" + type + "m" + message + "\x1b[0m");
  82. break;
  83. }
  84. }
  85. export var LogColor = {
  86. WHITE: 0,
  87. RED: 1,
  88. YELLOW: 3,
  89. C31: 31,
  90. C32: 32,
  91. C33: 33,
  92. C34: 34,
  93. C35: 35,
  94. C36: 36,
  95. C41: 41,
  96. C42: 42,
  97. C43: 43,
  98. C44: 44,
  99. C45: 45,
  100. C46: 46,
  101. C90: 90,
  102. C91: 91,
  103. C92: 92,
  104. C93: 93,
  105. C94: 94,
  106. C95: 95,
  107. C96: 96,
  108. C97: 97,
  109. C100: 100,
  110. C101: 101,
  111. C102: 102,
  112. C103: 103,
  113. C104: 104,
  114. C105: 105,
  115. C106: 106,
  116. C107: 107
  117. }