Kaynağa Gözat

2.封装Android自定义相机。

Pen Li 7 yıl önce
ebeveyn
işleme
2a1c6a27fa
100 değiştirilmiş dosya ile 4312 ekleme ve 0 silme
  1. 1 0
      ApexDrivers/racameralib/.gitignore
  2. 33 0
      ApexDrivers/racameralib/build.gradle
  3. 13 0
      ApexDrivers/racameralib/build/generated/source/buildConfig/debug/redant/usai/com/racameralib/BuildConfig.java
  4. 26 0
      ApexDrivers/racameralib/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml
  5. 1 0
      ApexDrivers/racameralib/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output.json
  6. 1 0
      ApexDrivers/racameralib/build/intermediates/annotation_processor_list/debug/annotationProcessors.json
  7. BIN
      ApexDrivers/racameralib/build/intermediates/compile_only_not_namespaced_r_class_jar/debug/generateDebugRFile/R.jar
  8. BIN
      ApexDrivers/racameralib/build/intermediates/full_jar/debug/createFullJarDebug/full.jar
  9. BIN
      ApexDrivers/racameralib/build/intermediates/incremental/debug-mergeJniLibs/merge-state
  10. 2 0
      ApexDrivers/racameralib/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml
  11. 2 0
      ApexDrivers/racameralib/build/intermediates/incremental/mergeDebugShaders/merger.xml
  12. 2 0
      ApexDrivers/racameralib/build/intermediates/incremental/packageDebugAssets/merger.xml
  13. 26 0
      ApexDrivers/racameralib/build/intermediates/incremental/packageDebugResources/compile-file-map.properties
  14. 4 0
      ApexDrivers/racameralib/build/intermediates/incremental/packageDebugResources/merged.dir/values/values.xml
  15. 1 0
      ApexDrivers/racameralib/build/intermediates/incremental/packageDebugResources/merger.xml
  16. BIN
      ApexDrivers/racameralib/build/intermediates/intermediate-jars/debug/classes.jar
  17. BIN
      ApexDrivers/racameralib/build/intermediates/intermediate-jars/debug/res.jar
  18. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/BuildConfig.class
  19. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$1$1.class
  20. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$1.class
  21. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$2.class
  22. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$3.class
  23. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$4.class
  24. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$5$1.class
  25. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$5$2.class
  26. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$5.class
  27. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$6.class
  28. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity.class
  29. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$1.class
  30. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$2.class
  31. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$CameraErrorHandler.class
  32. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$CameraEventListener.class
  33. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$CaptureImageCallback.class
  34. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$RecordVideoCallback.class
  35. BIN
      ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView.class
  36. 26 0
      ApexDrivers/racameralib/build/intermediates/library_manifest/debug/AndroidManifest.xml
  37. 1 0
      ApexDrivers/racameralib/build/intermediates/merged_manifests/debug/output.json
  38. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/camera_switch.png
  39. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/photo_mode.png
  40. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/record_mode.png
  41. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/start_record.png
  42. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/stop_record.png
  43. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/take_photo.png
  44. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/camera_switch.png
  45. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/photo_mode.png
  46. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/record_mode.png
  47. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/start_record.png
  48. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/stop_record.png
  49. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/take_photo.png
  50. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/camera_switch.png
  51. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/photo_mode.png
  52. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/record_mode.png
  53. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/start_record.png
  54. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/stop_record.png
  55. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/take_photo.png
  56. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/camera_switch.png
  57. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/photo_mode.png
  58. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/record_mode.png
  59. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/start_record.png
  60. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/stop_record.png
  61. BIN
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/take_photo.png
  62. 81 0
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/layout/camera_activity.xml
  63. 4 0
      ApexDrivers/racameralib/build/intermediates/packaged_res/debug/values/values.xml
  64. 1115 0
      ApexDrivers/racameralib/build/intermediates/res/symbol-table-with-package/debug/package-aware-r.txt
  65. 1514 0
      ApexDrivers/racameralib/build/intermediates/symbols/debug/R.txt
  66. 1 0
      ApexDrivers/racameralib/build/intermediates/transforms/mergeJniLibs/debug/__content__.json
  67. 63 0
      ApexDrivers/racameralib/build/outputs/logs/manifest-merger-debug-report.txt
  68. 21 0
      ApexDrivers/racameralib/proguard-rules.pro
  69. 141 0
      ApexDrivers/racameralib/racameralib.iml
  70. 26 0
      ApexDrivers/racameralib/src/androidTest/java/redant/usai/com/racameralib/ExampleInstrumentedTest.java
  71. 25 0
      ApexDrivers/racameralib/src/main/AndroidManifest.xml
  72. 317 0
      ApexDrivers/racameralib/src/main/java/redant/usai/com/racameralib/camera/CameraActivity.java
  73. 764 0
      ApexDrivers/racameralib/src/main/java/redant/usai/com/racameralib/camera/CameraSurfaceView.java
  74. BIN
      ApexDrivers/racameralib/src/main/res/drawable-hdpi/camera_switch.png
  75. BIN
      ApexDrivers/racameralib/src/main/res/drawable-hdpi/photo_mode.png
  76. BIN
      ApexDrivers/racameralib/src/main/res/drawable-hdpi/record_mode.png
  77. BIN
      ApexDrivers/racameralib/src/main/res/drawable-hdpi/start_record.png
  78. BIN
      ApexDrivers/racameralib/src/main/res/drawable-hdpi/stop_record.png
  79. BIN
      ApexDrivers/racameralib/src/main/res/drawable-hdpi/take_photo.png
  80. BIN
      ApexDrivers/racameralib/src/main/res/drawable-mdpi/camera_switch.png
  81. BIN
      ApexDrivers/racameralib/src/main/res/drawable-mdpi/photo_mode.png
  82. BIN
      ApexDrivers/racameralib/src/main/res/drawable-mdpi/record_mode.png
  83. BIN
      ApexDrivers/racameralib/src/main/res/drawable-mdpi/start_record.png
  84. BIN
      ApexDrivers/racameralib/src/main/res/drawable-mdpi/stop_record.png
  85. BIN
      ApexDrivers/racameralib/src/main/res/drawable-mdpi/take_photo.png
  86. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xhdpi/camera_switch.png
  87. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xhdpi/photo_mode.png
  88. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xhdpi/record_mode.png
  89. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xhdpi/start_record.png
  90. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xhdpi/stop_record.png
  91. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xhdpi/take_photo.png
  92. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/camera_switch.png
  93. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/photo_mode.png
  94. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/record_mode.png
  95. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/start_record.png
  96. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/stop_record.png
  97. BIN
      ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/take_photo.png
  98. 81 0
      ApexDrivers/racameralib/src/main/res/layout/camera_activity.xml
  99. 3 0
      ApexDrivers/racameralib/src/main/res/values/strings.xml
  100. 17 0
      ApexDrivers/racameralib/src/test/java/redant/usai/com/racameralib/ExampleUnitTest.java

+ 1 - 0
ApexDrivers/racameralib/.gitignore

@@ -0,0 +1 @@
+/build

+ 33 - 0
ApexDrivers/racameralib/build.gradle

@@ -0,0 +1,33 @@
+apply plugin: 'com.android.library'
+
+android {
+    compileSdkVersion 27
+
+
+
+    defaultConfig {
+        minSdkVersion 15
+        targetSdkVersion 27
+        versionCode 1
+        versionName "1.0"
+
+        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
+
+    }
+
+    buildTypes {
+        release {
+            minifyEnabled false
+            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
+        }
+    }
+
+}
+
+dependencies {
+    implementation fileTree(include: ['*.jar'], dir: 'libs')
+    implementation 'com.android.support:appcompat-v7:27.1.1'
+    testImplementation 'junit:junit:4.12'
+    androidTestImplementation 'com.android.support.test:runner:1.0.2'
+    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
+}

+ 13 - 0
ApexDrivers/racameralib/build/generated/source/buildConfig/debug/redant/usai/com/racameralib/BuildConfig.java

@@ -0,0 +1,13 @@
+/**
+ * Automatically generated file. DO NOT MODIFY
+ */
+package redant.usai.com.racameralib;
+
+public final class BuildConfig {
+  public static final boolean DEBUG = Boolean.parseBoolean("true");
+  public static final String APPLICATION_ID = "redant.usai.com.racameralib";
+  public static final String BUILD_TYPE = "debug";
+  public static final String FLAVOR = "";
+  public static final int VERSION_CODE = 1;
+  public static final String VERSION_NAME = "1.0";
+}

+ 26 - 0
ApexDrivers/racameralib/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml

@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="redant.usai.com.racameralib"
+    android:versionCode="1"
+    android:versionName="1.0" >
+
+    <uses-sdk
+        android:minSdkVersion="15"
+        android:targetSdkVersion="27" />
+
+    <uses-permission android:name="android.permission.CAMERA" />
+
+    <uses-feature android:name="android.hardware.camera.autofocus" />
+
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+    <uses-permission android:name="android.permission.RECORD_AUDIO" />
+
+    <application>
+        <activity
+            android:name="redant.usai.com.racameralib.camera.CameraActivity"
+            android:screenOrientation="portrait"
+            android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
+        </activity>
+    </application>
+
+</manifest>

+ 1 - 0
ApexDrivers/racameralib/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output.json

@@ -0,0 +1 @@
+[{"outputType":{"type":"AAPT_FRIENDLY_MERGED_MANIFESTS"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"1.0","enabled":true,"outputFile":"racameralib-debug.aar","fullName":"debug","baseName":"debug"},"path":"AndroidManifest.xml","properties":{"packageId":"redant.usai.com.racameralib","split":""}}]

+ 1 - 0
ApexDrivers/racameralib/build/intermediates/annotation_processor_list/debug/annotationProcessors.json

@@ -0,0 +1 @@
+{}

BIN
ApexDrivers/racameralib/build/intermediates/compile_only_not_namespaced_r_class_jar/debug/generateDebugRFile/R.jar


BIN
ApexDrivers/racameralib/build/intermediates/full_jar/debug/createFullJarDebug/full.jar


BIN
ApexDrivers/racameralib/build/intermediates/incremental/debug-mergeJniLibs/merge-state


+ 2 - 0
ApexDrivers/racameralib/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml

@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>
+<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/macmini1/android project/RACamera/racameralib/src/main/jniLibs"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/macmini1/android project/RACamera/racameralib/src/debug/jniLibs"/></dataSet></merger>

+ 2 - 0
ApexDrivers/racameralib/build/intermediates/incremental/mergeDebugShaders/merger.xml

@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>
+<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/macmini1/android project/RACamera/racameralib/src/main/shaders"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/macmini1/android project/RACamera/racameralib/src/debug/shaders"/></dataSet></merger>

+ 2 - 0
ApexDrivers/racameralib/build/intermediates/incremental/packageDebugAssets/merger.xml

@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>
+<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/macmini1/android project/RACamera/racameralib/src/main/assets"/><source path="/Users/macmini1/android project/RACamera/racameralib/build/intermediates/shader_assets/debug/compileDebugShaders/out"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/macmini1/android project/RACamera/racameralib/src/debug/assets"/></dataSet></merger>

+ 26 - 0
ApexDrivers/racameralib/build/intermediates/incremental/packageDebugResources/compile-file-map.properties

@@ -0,0 +1,26 @@
+#Wed Feb 13 17:16:17 CST 2019
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-mdpi/camera_switch.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/camera_switch.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-hdpi/start_record.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/start_record.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xxhdpi/take_photo.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/take_photo.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-hdpi/take_photo.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/take_photo.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-mdpi/photo_mode.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/photo_mode.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-mdpi/record_mode.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/record_mode.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xhdpi/stop_record.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/stop_record.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xxhdpi/camera_switch.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/camera_switch.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xhdpi/take_photo.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/take_photo.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xhdpi/start_record.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/start_record.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-mdpi/take_photo.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/take_photo.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-hdpi/camera_switch.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/camera_switch.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-hdpi/stop_record.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/stop_record.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xhdpi/record_mode.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/record_mode.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xxhdpi/stop_record.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/stop_record.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xhdpi/photo_mode.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/photo_mode.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-hdpi/record_mode.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/record_mode.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xxhdpi/start_record.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/start_record.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-mdpi/start_record.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/start_record.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xxhdpi/record_mode.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/record_mode.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-mdpi/stop_record.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/stop_record.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xhdpi/camera_switch.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/camera_switch.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-xxhdpi/photo_mode.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/photo_mode.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/drawable-hdpi/photo_mode.png=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/photo_mode.png
+/Users/macmini1/android\ project/RACamera/racameralib/src/main/res/layout/camera_activity.xml=/Users/macmini1/android project/RACamera/racameralib/build/intermediates/packaged_res/debug/layout/camera_activity.xml

+ 4 - 0
ApexDrivers/racameralib/build/intermediates/incremental/packageDebugResources/merged.dir/values/values.xml

@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <string name="app_name">RACameraLib</string>
+</resources>

Dosya farkı çok büyük olduğundan ihmal edildi
+ 1 - 0
ApexDrivers/racameralib/build/intermediates/incremental/packageDebugResources/merger.xml


BIN
ApexDrivers/racameralib/build/intermediates/intermediate-jars/debug/classes.jar


BIN
ApexDrivers/racameralib/build/intermediates/intermediate-jars/debug/res.jar


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/BuildConfig.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$1$1.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$1.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$2.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$3.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$4.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$5$1.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$5$2.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$5.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity$6.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraActivity.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$1.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$2.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$CameraErrorHandler.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$CameraEventListener.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$CaptureImageCallback.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView$RecordVideoCallback.class


BIN
ApexDrivers/racameralib/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/redant/usai/com/racameralib/camera/CameraSurfaceView.class


+ 26 - 0
ApexDrivers/racameralib/build/intermediates/library_manifest/debug/AndroidManifest.xml

@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="redant.usai.com.racameralib"
+    android:versionCode="1"
+    android:versionName="1.0" >
+
+    <uses-sdk
+        android:minSdkVersion="15"
+        android:targetSdkVersion="27" />
+
+    <uses-permission android:name="android.permission.CAMERA" />
+
+    <uses-feature android:name="android.hardware.camera.autofocus" />
+
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+    <uses-permission android:name="android.permission.RECORD_AUDIO" />
+
+    <application>
+        <activity
+            android:name="redant.usai.com.racameralib.camera.CameraActivity"
+            android:screenOrientation="portrait"
+            android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
+        </activity>
+    </application>
+
+</manifest>

+ 1 - 0
ApexDrivers/racameralib/build/intermediates/merged_manifests/debug/output.json

@@ -0,0 +1 @@
+[{"outputType":{"type":"MERGED_MANIFESTS"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"1.0","enabled":true,"outputFile":"racameralib-debug.aar","fullName":"debug","baseName":"debug"},"path":"../../library_manifest/debug/AndroidManifest.xml","properties":{"packageId":"redant.usai.com.racameralib","split":""}}]

BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/camera_switch.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/photo_mode.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/record_mode.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/start_record.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/stop_record.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-hdpi-v4/take_photo.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/camera_switch.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/photo_mode.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/record_mode.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/start_record.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/stop_record.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-mdpi-v4/take_photo.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/camera_switch.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/photo_mode.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/record_mode.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/start_record.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/stop_record.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/take_photo.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/camera_switch.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/photo_mode.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/record_mode.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/start_record.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/stop_record.png


BIN
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/take_photo.png


+ 81 - 0
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/layout/camera_activity.xml

@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<FrameLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    tools:context=".camera.CameraActivity">
+
+    <redant.usai.com.racameralib.camera.CameraSurfaceView
+        android:id="@+id/cameraSurfaceView"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        />
+
+    <RelativeLayout
+        android:id="@+id/camera_control_view"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:background="#00000000"
+        >
+
+        <TextView
+            android:id="@+id/timer_tv"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_centerHorizontal="true"
+            android:layout_margin="10dp"
+            android:textSize="14sp"
+            android:textColor="#ffffff"
+            android:textAlignment="center"
+            android:visibility="gone"
+            />
+
+        <RelativeLayout
+            android:id="@+id/controlView"
+            android:layout_width="match_parent"
+            android:layout_height="100dp"
+            android:background="#00000000"
+            android:layout_alignParentBottom="true"
+            >
+
+            <ImageButton
+                android:id="@+id/cameraModeSwitchBtn"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_centerVertical="true"
+                android:layout_marginStart="20dp"
+                android:layout_marginLeft="20dp"
+                android:src="@drawable/record_mode"
+                android:background="#00000000"
+                />
+
+            <ImageButton
+                android:id="@+id/takePhotoBtn"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_centerInParent="true"
+                android:src="@drawable/take_photo"
+                android:background="#00000000"
+                />
+
+            <ImageButton
+                android:id="@+id/cameraSwitchBtn"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_centerVertical="true"
+                android:layout_marginEnd="20dp"
+                android:layout_marginRight="20dp"
+                android:layout_alignParentRight="true"
+                android:src="@drawable/camera_switch"
+                android:background="#00000000"
+                />
+
+        </RelativeLayout>
+
+    </RelativeLayout>
+
+
+
+</FrameLayout>

+ 4 - 0
ApexDrivers/racameralib/build/intermediates/packaged_res/debug/values/values.xml

@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <string name="app_name">RACameraLib</string>
+</resources>

Dosya farkı çok büyük olduğundan ihmal edildi
+ 1115 - 0
ApexDrivers/racameralib/build/intermediates/res/symbol-table-with-package/debug/package-aware-r.txt


+ 1514 - 0
ApexDrivers/racameralib/build/intermediates/symbols/debug/R.txt

@@ -0,0 +1,1514 @@
+int anim abc_fade_in 0x7f010001
+int anim abc_fade_out 0x7f010002
+int anim abc_grow_fade_in_from_bottom 0x7f010003
+int anim abc_popup_enter 0x7f010004
+int anim abc_popup_exit 0x7f010005
+int anim abc_shrink_fade_out_from_bottom 0x7f010006
+int anim abc_slide_in_bottom 0x7f010007
+int anim abc_slide_in_top 0x7f010008
+int anim abc_slide_out_bottom 0x7f010009
+int anim abc_slide_out_top 0x7f01000a
+int anim abc_tooltip_enter 0x7f01000b
+int anim abc_tooltip_exit 0x7f01000c
+int attr actionBarDivider 0x7f040001
+int attr actionBarItemBackground 0x7f040002
+int attr actionBarPopupTheme 0x7f040003
+int attr actionBarSize 0x7f040004
+int attr actionBarSplitStyle 0x7f040005
+int attr actionBarStyle 0x7f040006
+int attr actionBarTabBarStyle 0x7f040007
+int attr actionBarTabStyle 0x7f040008
+int attr actionBarTabTextStyle 0x7f040009
+int attr actionBarTheme 0x7f04000a
+int attr actionBarWidgetTheme 0x7f04000b
+int attr actionButtonStyle 0x7f04000c
+int attr actionDropDownStyle 0x7f04000d
+int attr actionLayout 0x7f04000e
+int attr actionMenuTextAppearance 0x7f04000f
+int attr actionMenuTextColor 0x7f040010
+int attr actionModeBackground 0x7f040011
+int attr actionModeCloseButtonStyle 0x7f040012
+int attr actionModeCloseDrawable 0x7f040013
+int attr actionModeCopyDrawable 0x7f040014
+int attr actionModeCutDrawable 0x7f040015
+int attr actionModeFindDrawable 0x7f040016
+int attr actionModePasteDrawable 0x7f040017
+int attr actionModePopupWindowStyle 0x7f040018
+int attr actionModeSelectAllDrawable 0x7f040019
+int attr actionModeShareDrawable 0x7f04001a
+int attr actionModeSplitBackground 0x7f04001b
+int attr actionModeStyle 0x7f04001c
+int attr actionModeWebSearchDrawable 0x7f04001d
+int attr actionOverflowButtonStyle 0x7f04001e
+int attr actionOverflowMenuStyle 0x7f04001f
+int attr actionProviderClass 0x7f040020
+int attr actionViewClass 0x7f040021
+int attr activityChooserViewStyle 0x7f040022
+int attr alertDialogButtonGroupStyle 0x7f040023
+int attr alertDialogCenterButtons 0x7f040024
+int attr alertDialogStyle 0x7f040025
+int attr alertDialogTheme 0x7f040026
+int attr allowStacking 0x7f040027
+int attr alpha 0x7f040028
+int attr alphabeticModifiers 0x7f040029
+int attr arrowHeadLength 0x7f04002a
+int attr arrowShaftLength 0x7f04002b
+int attr autoCompleteTextViewStyle 0x7f04002c
+int attr autoSizeMaxTextSize 0x7f04002d
+int attr autoSizeMinTextSize 0x7f04002e
+int attr autoSizePresetSizes 0x7f04002f
+int attr autoSizeStepGranularity 0x7f040030
+int attr autoSizeTextType 0x7f040031
+int attr background 0x7f040032
+int attr backgroundSplit 0x7f040033
+int attr backgroundStacked 0x7f040034
+int attr backgroundTint 0x7f040035
+int attr backgroundTintMode 0x7f040036
+int attr barLength 0x7f040037
+int attr borderlessButtonStyle 0x7f040038
+int attr buttonBarButtonStyle 0x7f040039
+int attr buttonBarNegativeButtonStyle 0x7f04003a
+int attr buttonBarNeutralButtonStyle 0x7f04003b
+int attr buttonBarPositiveButtonStyle 0x7f04003c
+int attr buttonBarStyle 0x7f04003d
+int attr buttonGravity 0x7f04003e
+int attr buttonIconDimen 0x7f04003f
+int attr buttonPanelSideLayout 0x7f040040
+int attr buttonStyle 0x7f040041
+int attr buttonStyleSmall 0x7f040042
+int attr buttonTint 0x7f040043
+int attr buttonTintMode 0x7f040044
+int attr checkboxStyle 0x7f040045
+int attr checkedTextViewStyle 0x7f040046
+int attr closeIcon 0x7f040047
+int attr closeItemLayout 0x7f040048
+int attr collapseContentDescription 0x7f040049
+int attr collapseIcon 0x7f04004a
+int attr color 0x7f04004b
+int attr colorAccent 0x7f04004c
+int attr colorBackgroundFloating 0x7f04004d
+int attr colorButtonNormal 0x7f04004e
+int attr colorControlActivated 0x7f04004f
+int attr colorControlHighlight 0x7f040050
+int attr colorControlNormal 0x7f040051
+int attr colorError 0x7f040052
+int attr colorPrimary 0x7f040053
+int attr colorPrimaryDark 0x7f040054
+int attr colorSwitchThumbNormal 0x7f040055
+int attr commitIcon 0x7f040056
+int attr contentDescription 0x7f040057
+int attr contentInsetEnd 0x7f040058
+int attr contentInsetEndWithActions 0x7f040059
+int attr contentInsetLeft 0x7f04005a
+int attr contentInsetRight 0x7f04005b
+int attr contentInsetStart 0x7f04005c
+int attr contentInsetStartWithNavigation 0x7f04005d
+int attr controlBackground 0x7f04005e
+int attr coordinatorLayoutStyle 0x7f04005f
+int attr customNavigationLayout 0x7f040060
+int attr defaultQueryHint 0x7f040061
+int attr dialogPreferredPadding 0x7f040062
+int attr dialogTheme 0x7f040063
+int attr displayOptions 0x7f040064
+int attr divider 0x7f040065
+int attr dividerHorizontal 0x7f040066
+int attr dividerPadding 0x7f040067
+int attr dividerVertical 0x7f040068
+int attr drawableSize 0x7f040069
+int attr drawerArrowStyle 0x7f04006a
+int attr dropDownListViewStyle 0x7f04006b
+int attr dropdownListPreferredItemHeight 0x7f04006c
+int attr editTextBackground 0x7f04006d
+int attr editTextColor 0x7f04006e
+int attr editTextStyle 0x7f04006f
+int attr elevation 0x7f040070
+int attr expandActivityOverflowButtonDrawable 0x7f040071
+int attr font 0x7f040072
+int attr fontFamily 0x7f040073
+int attr fontProviderAuthority 0x7f040074
+int attr fontProviderCerts 0x7f040075
+int attr fontProviderFetchStrategy 0x7f040076
+int attr fontProviderFetchTimeout 0x7f040077
+int attr fontProviderPackage 0x7f040078
+int attr fontProviderQuery 0x7f040079
+int attr fontStyle 0x7f04007a
+int attr fontWeight 0x7f04007b
+int attr gapBetweenBars 0x7f04007c
+int attr goIcon 0x7f04007d
+int attr height 0x7f04007e
+int attr hideOnContentScroll 0x7f04007f
+int attr homeAsUpIndicator 0x7f040080
+int attr homeLayout 0x7f040081
+int attr icon 0x7f040082
+int attr iconTint 0x7f040083
+int attr iconTintMode 0x7f040084
+int attr iconifiedByDefault 0x7f040085
+int attr imageButtonStyle 0x7f040086
+int attr indeterminateProgressStyle 0x7f040087
+int attr initialActivityCount 0x7f040088
+int attr isLightTheme 0x7f040089
+int attr itemPadding 0x7f04008a
+int attr keylines 0x7f04008b
+int attr layout 0x7f04008c
+int attr layout_anchor 0x7f04008d
+int attr layout_anchorGravity 0x7f04008e
+int attr layout_behavior 0x7f04008f
+int attr layout_dodgeInsetEdges 0x7f040090
+int attr layout_insetEdge 0x7f040091
+int attr layout_keyline 0x7f040092
+int attr listChoiceBackgroundIndicator 0x7f040093
+int attr listDividerAlertDialog 0x7f040094
+int attr listItemLayout 0x7f040095
+int attr listLayout 0x7f040096
+int attr listMenuViewStyle 0x7f040097
+int attr listPopupWindowStyle 0x7f040098
+int attr listPreferredItemHeight 0x7f040099
+int attr listPreferredItemHeightLarge 0x7f04009a
+int attr listPreferredItemHeightSmall 0x7f04009b
+int attr listPreferredItemPaddingLeft 0x7f04009c
+int attr listPreferredItemPaddingRight 0x7f04009d
+int attr logo 0x7f04009e
+int attr logoDescription 0x7f04009f
+int attr maxButtonHeight 0x7f0400a0
+int attr measureWithLargestChild 0x7f0400a1
+int attr multiChoiceItemLayout 0x7f0400a2
+int attr navigationContentDescription 0x7f0400a3
+int attr navigationIcon 0x7f0400a4
+int attr navigationMode 0x7f0400a5
+int attr numericModifiers 0x7f0400a6
+int attr overlapAnchor 0x7f0400a7
+int attr paddingBottomNoButtons 0x7f0400a8
+int attr paddingEnd 0x7f0400a9
+int attr paddingStart 0x7f0400aa
+int attr paddingTopNoTitle 0x7f0400ab
+int attr panelBackground 0x7f0400ac
+int attr panelMenuListTheme 0x7f0400ad
+int attr panelMenuListWidth 0x7f0400ae
+int attr popupMenuStyle 0x7f0400af
+int attr popupTheme 0x7f0400b0
+int attr popupWindowStyle 0x7f0400b1
+int attr preserveIconSpacing 0x7f0400b2
+int attr progressBarPadding 0x7f0400b3
+int attr progressBarStyle 0x7f0400b4
+int attr queryBackground 0x7f0400b5
+int attr queryHint 0x7f0400b6
+int attr radioButtonStyle 0x7f0400b7
+int attr ratingBarStyle 0x7f0400b8
+int attr ratingBarStyleIndicator 0x7f0400b9
+int attr ratingBarStyleSmall 0x7f0400ba
+int attr searchHintIcon 0x7f0400bb
+int attr searchIcon 0x7f0400bc
+int attr searchViewStyle 0x7f0400bd
+int attr seekBarStyle 0x7f0400be
+int attr selectableItemBackground 0x7f0400bf
+int attr selectableItemBackgroundBorderless 0x7f0400c0
+int attr showAsAction 0x7f0400c1
+int attr showDividers 0x7f0400c2
+int attr showText 0x7f0400c3
+int attr showTitle 0x7f0400c4
+int attr singleChoiceItemLayout 0x7f0400c5
+int attr spinBars 0x7f0400c6
+int attr spinnerDropDownItemStyle 0x7f0400c7
+int attr spinnerStyle 0x7f0400c8
+int attr splitTrack 0x7f0400c9
+int attr srcCompat 0x7f0400ca
+int attr state_above_anchor 0x7f0400cb
+int attr statusBarBackground 0x7f0400cc
+int attr subMenuArrow 0x7f0400cd
+int attr submitBackground 0x7f0400ce
+int attr subtitle 0x7f0400cf
+int attr subtitleTextAppearance 0x7f0400d0
+int attr subtitleTextColor 0x7f0400d1
+int attr subtitleTextStyle 0x7f0400d2
+int attr suggestionRowLayout 0x7f0400d3
+int attr switchMinWidth 0x7f0400d4
+int attr switchPadding 0x7f0400d5
+int attr switchStyle 0x7f0400d6
+int attr switchTextAppearance 0x7f0400d7
+int attr textAllCaps 0x7f0400d8
+int attr textAppearanceLargePopupMenu 0x7f0400d9
+int attr textAppearanceListItem 0x7f0400da
+int attr textAppearanceListItemSecondary 0x7f0400db
+int attr textAppearanceListItemSmall 0x7f0400dc
+int attr textAppearancePopupMenuHeader 0x7f0400dd
+int attr textAppearanceSearchResultSubtitle 0x7f0400de
+int attr textAppearanceSearchResultTitle 0x7f0400df
+int attr textAppearanceSmallPopupMenu 0x7f0400e0
+int attr textColorAlertDialogListItem 0x7f0400e1
+int attr textColorSearchUrl 0x7f0400e2
+int attr theme 0x7f0400e3
+int attr thickness 0x7f0400e4
+int attr thumbTextPadding 0x7f0400e5
+int attr thumbTint 0x7f0400e6
+int attr thumbTintMode 0x7f0400e7
+int attr tickMark 0x7f0400e8
+int attr tickMarkTint 0x7f0400e9
+int attr tickMarkTintMode 0x7f0400ea
+int attr tint 0x7f0400eb
+int attr tintMode 0x7f0400ec
+int attr title 0x7f0400ed
+int attr titleMargin 0x7f0400ee
+int attr titleMarginBottom 0x7f0400ef
+int attr titleMarginEnd 0x7f0400f0
+int attr titleMarginStart 0x7f0400f1
+int attr titleMarginTop 0x7f0400f2
+int attr titleMargins 0x7f0400f3
+int attr titleTextAppearance 0x7f0400f4
+int attr titleTextColor 0x7f0400f5
+int attr titleTextStyle 0x7f0400f6
+int attr toolbarNavigationButtonStyle 0x7f0400f7
+int attr toolbarStyle 0x7f0400f8
+int attr tooltipForegroundColor 0x7f0400f9
+int attr tooltipFrameBackground 0x7f0400fa
+int attr tooltipText 0x7f0400fb
+int attr track 0x7f0400fc
+int attr trackTint 0x7f0400fd
+int attr trackTintMode 0x7f0400fe
+int attr viewInflaterClass 0x7f0400ff
+int attr voiceIcon 0x7f040100
+int attr windowActionBar 0x7f040101
+int attr windowActionBarOverlay 0x7f040102
+int attr windowActionModeOverlay 0x7f040103
+int attr windowFixedHeightMajor 0x7f040104
+int attr windowFixedHeightMinor 0x7f040105
+int attr windowFixedWidthMajor 0x7f040106
+int attr windowFixedWidthMinor 0x7f040107
+int attr windowMinWidthMajor 0x7f040108
+int attr windowMinWidthMinor 0x7f040109
+int attr windowNoTitle 0x7f04010a
+int bool abc_action_bar_embed_tabs 0x7f050001
+int bool abc_allow_stacked_button_bar 0x7f050002
+int bool abc_config_actionMenuItemAllCaps 0x7f050003
+int bool abc_config_showMenuShortcutsWhenKeyboardPresent 0x7f050004
+int color abc_background_cache_hint_selector_material_dark 0x7f060001
+int color abc_background_cache_hint_selector_material_light 0x7f060002
+int color abc_btn_colored_borderless_text_material 0x7f060003
+int color abc_btn_colored_text_material 0x7f060004
+int color abc_color_highlight_material 0x7f060005
+int color abc_hint_foreground_material_dark 0x7f060006
+int color abc_hint_foreground_material_light 0x7f060007
+int color abc_input_method_navigation_guard 0x7f060008
+int color abc_primary_text_disable_only_material_dark 0x7f060009
+int color abc_primary_text_disable_only_material_light 0x7f06000a
+int color abc_primary_text_material_dark 0x7f06000b
+int color abc_primary_text_material_light 0x7f06000c
+int color abc_search_url_text 0x7f06000d
+int color abc_search_url_text_normal 0x7f06000e
+int color abc_search_url_text_pressed 0x7f06000f
+int color abc_search_url_text_selected 0x7f060010
+int color abc_secondary_text_material_dark 0x7f060011
+int color abc_secondary_text_material_light 0x7f060012
+int color abc_tint_btn_checkable 0x7f060013
+int color abc_tint_default 0x7f060014
+int color abc_tint_edittext 0x7f060015
+int color abc_tint_seek_thumb 0x7f060016
+int color abc_tint_spinner 0x7f060017
+int color abc_tint_switch_track 0x7f060018
+int color accent_material_dark 0x7f060019
+int color accent_material_light 0x7f06001a
+int color background_floating_material_dark 0x7f06001b
+int color background_floating_material_light 0x7f06001c
+int color background_material_dark 0x7f06001d
+int color background_material_light 0x7f06001e
+int color bright_foreground_disabled_material_dark 0x7f06001f
+int color bright_foreground_disabled_material_light 0x7f060020
+int color bright_foreground_inverse_material_dark 0x7f060021
+int color bright_foreground_inverse_material_light 0x7f060022
+int color bright_foreground_material_dark 0x7f060023
+int color bright_foreground_material_light 0x7f060024
+int color button_material_dark 0x7f060025
+int color button_material_light 0x7f060026
+int color dim_foreground_disabled_material_dark 0x7f060027
+int color dim_foreground_disabled_material_light 0x7f060028
+int color dim_foreground_material_dark 0x7f060029
+int color dim_foreground_material_light 0x7f06002a
+int color error_color_material 0x7f06002b
+int color foreground_material_dark 0x7f06002c
+int color foreground_material_light 0x7f06002d
+int color highlighted_text_material_dark 0x7f06002e
+int color highlighted_text_material_light 0x7f06002f
+int color material_blue_grey_800 0x7f060030
+int color material_blue_grey_900 0x7f060031
+int color material_blue_grey_950 0x7f060032
+int color material_deep_teal_200 0x7f060033
+int color material_deep_teal_500 0x7f060034
+int color material_grey_100 0x7f060035
+int color material_grey_300 0x7f060036
+int color material_grey_50 0x7f060037
+int color material_grey_600 0x7f060038
+int color material_grey_800 0x7f060039
+int color material_grey_850 0x7f06003a
+int color material_grey_900 0x7f06003b
+int color notification_action_color_filter 0x7f06003c
+int color notification_icon_bg_color 0x7f06003d
+int color primary_dark_material_dark 0x7f06003e
+int color primary_dark_material_light 0x7f06003f
+int color primary_material_dark 0x7f060040
+int color primary_material_light 0x7f060041
+int color primary_text_default_material_dark 0x7f060042
+int color primary_text_default_material_light 0x7f060043
+int color primary_text_disabled_material_dark 0x7f060044
+int color primary_text_disabled_material_light 0x7f060045
+int color ripple_material_dark 0x7f060046
+int color ripple_material_light 0x7f060047
+int color secondary_text_default_material_dark 0x7f060048
+int color secondary_text_default_material_light 0x7f060049
+int color secondary_text_disabled_material_dark 0x7f06004a
+int color secondary_text_disabled_material_light 0x7f06004b
+int color switch_thumb_disabled_material_dark 0x7f06004c
+int color switch_thumb_disabled_material_light 0x7f06004d
+int color switch_thumb_material_dark 0x7f06004e
+int color switch_thumb_material_light 0x7f06004f
+int color switch_thumb_normal_material_dark 0x7f060050
+int color switch_thumb_normal_material_light 0x7f060051
+int color tooltip_background_dark 0x7f060052
+int color tooltip_background_light 0x7f060053
+int dimen abc_action_bar_content_inset_material 0x7f070001
+int dimen abc_action_bar_content_inset_with_nav 0x7f070002
+int dimen abc_action_bar_default_height_material 0x7f070003
+int dimen abc_action_bar_default_padding_end_material 0x7f070004
+int dimen abc_action_bar_default_padding_start_material 0x7f070005
+int dimen abc_action_bar_elevation_material 0x7f070006
+int dimen abc_action_bar_icon_vertical_padding_material 0x7f070007
+int dimen abc_action_bar_overflow_padding_end_material 0x7f070008
+int dimen abc_action_bar_overflow_padding_start_material 0x7f070009
+int dimen abc_action_bar_progress_bar_size 0x7f07000a
+int dimen abc_action_bar_stacked_max_height 0x7f07000b
+int dimen abc_action_bar_stacked_tab_max_width 0x7f07000c
+int dimen abc_action_bar_subtitle_bottom_margin_material 0x7f07000d
+int dimen abc_action_bar_subtitle_top_margin_material 0x7f07000e
+int dimen abc_action_button_min_height_material 0x7f07000f
+int dimen abc_action_button_min_width_material 0x7f070010
+int dimen abc_action_button_min_width_overflow_material 0x7f070011
+int dimen abc_alert_dialog_button_bar_height 0x7f070012
+int dimen abc_alert_dialog_button_dimen 0x7f070013
+int dimen abc_button_inset_horizontal_material 0x7f070014
+int dimen abc_button_inset_vertical_material 0x7f070015
+int dimen abc_button_padding_horizontal_material 0x7f070016
+int dimen abc_button_padding_vertical_material 0x7f070017
+int dimen abc_cascading_menus_min_smallest_width 0x7f070018
+int dimen abc_config_prefDialogWidth 0x7f070019
+int dimen abc_control_corner_material 0x7f07001a
+int dimen abc_control_inset_material 0x7f07001b
+int dimen abc_control_padding_material 0x7f07001c
+int dimen abc_dialog_fixed_height_major 0x7f07001d
+int dimen abc_dialog_fixed_height_minor 0x7f07001e
+int dimen abc_dialog_fixed_width_major 0x7f07001f
+int dimen abc_dialog_fixed_width_minor 0x7f070020
+int dimen abc_dialog_list_padding_bottom_no_buttons 0x7f070021
+int dimen abc_dialog_list_padding_top_no_title 0x7f070022
+int dimen abc_dialog_min_width_major 0x7f070023
+int dimen abc_dialog_min_width_minor 0x7f070024
+int dimen abc_dialog_padding_material 0x7f070025
+int dimen abc_dialog_padding_top_material 0x7f070026
+int dimen abc_dialog_title_divider_material 0x7f070027
+int dimen abc_disabled_alpha_material_dark 0x7f070028
+int dimen abc_disabled_alpha_material_light 0x7f070029
+int dimen abc_dropdownitem_icon_width 0x7f07002a
+int dimen abc_dropdownitem_text_padding_left 0x7f07002b
+int dimen abc_dropdownitem_text_padding_right 0x7f07002c
+int dimen abc_edit_text_inset_bottom_material 0x7f07002d
+int dimen abc_edit_text_inset_horizontal_material 0x7f07002e
+int dimen abc_edit_text_inset_top_material 0x7f07002f
+int dimen abc_floating_window_z 0x7f070030
+int dimen abc_list_item_padding_horizontal_material 0x7f070031
+int dimen abc_panel_menu_list_width 0x7f070032
+int dimen abc_progress_bar_height_material 0x7f070033
+int dimen abc_search_view_preferred_height 0x7f070034
+int dimen abc_search_view_preferred_width 0x7f070035
+int dimen abc_seekbar_track_background_height_material 0x7f070036
+int dimen abc_seekbar_track_progress_height_material 0x7f070037
+int dimen abc_select_dialog_padding_start_material 0x7f070038
+int dimen abc_switch_padding 0x7f070039
+int dimen abc_text_size_body_1_material 0x7f07003a
+int dimen abc_text_size_body_2_material 0x7f07003b
+int dimen abc_text_size_button_material 0x7f07003c
+int dimen abc_text_size_caption_material 0x7f07003d
+int dimen abc_text_size_display_1_material 0x7f07003e
+int dimen abc_text_size_display_2_material 0x7f07003f
+int dimen abc_text_size_display_3_material 0x7f070040
+int dimen abc_text_size_display_4_material 0x7f070041
+int dimen abc_text_size_headline_material 0x7f070042
+int dimen abc_text_size_large_material 0x7f070043
+int dimen abc_text_size_medium_material 0x7f070044
+int dimen abc_text_size_menu_header_material 0x7f070045
+int dimen abc_text_size_menu_material 0x7f070046
+int dimen abc_text_size_small_material 0x7f070047
+int dimen abc_text_size_subhead_material 0x7f070048
+int dimen abc_text_size_subtitle_material_toolbar 0x7f070049
+int dimen abc_text_size_title_material 0x7f07004a
+int dimen abc_text_size_title_material_toolbar 0x7f07004b
+int dimen compat_button_inset_horizontal_material 0x7f07004c
+int dimen compat_button_inset_vertical_material 0x7f07004d
+int dimen compat_button_padding_horizontal_material 0x7f07004e
+int dimen compat_button_padding_vertical_material 0x7f07004f
+int dimen compat_control_corner_material 0x7f070050
+int dimen disabled_alpha_material_dark 0x7f070051
+int dimen disabled_alpha_material_light 0x7f070052
+int dimen highlight_alpha_material_colored 0x7f070053
+int dimen highlight_alpha_material_dark 0x7f070054
+int dimen highlight_alpha_material_light 0x7f070055
+int dimen hint_alpha_material_dark 0x7f070056
+int dimen hint_alpha_material_light 0x7f070057
+int dimen hint_pressed_alpha_material_dark 0x7f070058
+int dimen hint_pressed_alpha_material_light 0x7f070059
+int dimen notification_action_icon_size 0x7f07005a
+int dimen notification_action_text_size 0x7f07005b
+int dimen notification_big_circle_margin 0x7f07005c
+int dimen notification_content_margin_start 0x7f07005d
+int dimen notification_large_icon_height 0x7f07005e
+int dimen notification_large_icon_width 0x7f07005f
+int dimen notification_main_column_padding_top 0x7f070060
+int dimen notification_media_narrow_margin 0x7f070061
+int dimen notification_right_icon_size 0x7f070062
+int dimen notification_right_side_padding_top 0x7f070063
+int dimen notification_small_icon_background_padding 0x7f070064
+int dimen notification_small_icon_size_as_large 0x7f070065
+int dimen notification_subtext_size 0x7f070066
+int dimen notification_top_pad 0x7f070067
+int dimen notification_top_pad_large_text 0x7f070068
+int dimen tooltip_corner_radius 0x7f070069
+int dimen tooltip_horizontal_padding 0x7f07006a
+int dimen tooltip_margin 0x7f07006b
+int dimen tooltip_precise_anchor_extra_offset 0x7f07006c
+int dimen tooltip_precise_anchor_threshold 0x7f07006d
+int dimen tooltip_vertical_padding 0x7f07006e
+int dimen tooltip_y_offset_non_touch 0x7f07006f
+int dimen tooltip_y_offset_touch 0x7f070070
+int drawable abc_ab_share_pack_mtrl_alpha 0x7f080001
+int drawable abc_action_bar_item_background_material 0x7f080002
+int drawable abc_btn_borderless_material 0x7f080003
+int drawable abc_btn_check_material 0x7f080004
+int drawable abc_btn_check_to_on_mtrl_000 0x7f080005
+int drawable abc_btn_check_to_on_mtrl_015 0x7f080006
+int drawable abc_btn_colored_material 0x7f080007
+int drawable abc_btn_default_mtrl_shape 0x7f080008
+int drawable abc_btn_radio_material 0x7f080009
+int drawable abc_btn_radio_to_on_mtrl_000 0x7f08000a
+int drawable abc_btn_radio_to_on_mtrl_015 0x7f08000b
+int drawable abc_btn_switch_to_on_mtrl_00001 0x7f08000c
+int drawable abc_btn_switch_to_on_mtrl_00012 0x7f08000d
+int drawable abc_cab_background_internal_bg 0x7f08000e
+int drawable abc_cab_background_top_material 0x7f08000f
+int drawable abc_cab_background_top_mtrl_alpha 0x7f080010
+int drawable abc_control_background_material 0x7f080011
+int drawable abc_dialog_material_background 0x7f080012
+int drawable abc_edit_text_material 0x7f080013
+int drawable abc_ic_ab_back_material 0x7f080014
+int drawable abc_ic_arrow_drop_right_black_24dp 0x7f080015
+int drawable abc_ic_clear_material 0x7f080016
+int drawable abc_ic_commit_search_api_mtrl_alpha 0x7f080017
+int drawable abc_ic_go_search_api_material 0x7f080018
+int drawable abc_ic_menu_copy_mtrl_am_alpha 0x7f080019
+int drawable abc_ic_menu_cut_mtrl_alpha 0x7f08001a
+int drawable abc_ic_menu_overflow_material 0x7f08001b
+int drawable abc_ic_menu_paste_mtrl_am_alpha 0x7f08001c
+int drawable abc_ic_menu_selectall_mtrl_alpha 0x7f08001d
+int drawable abc_ic_menu_share_mtrl_alpha 0x7f08001e
+int drawable abc_ic_search_api_material 0x7f08001f
+int drawable abc_ic_star_black_16dp 0x7f080020
+int drawable abc_ic_star_black_36dp 0x7f080021
+int drawable abc_ic_star_black_48dp 0x7f080022
+int drawable abc_ic_star_half_black_16dp 0x7f080023
+int drawable abc_ic_star_half_black_36dp 0x7f080024
+int drawable abc_ic_star_half_black_48dp 0x7f080025
+int drawable abc_ic_voice_search_api_material 0x7f080026
+int drawable abc_item_background_holo_dark 0x7f080027
+int drawable abc_item_background_holo_light 0x7f080028
+int drawable abc_list_divider_mtrl_alpha 0x7f080029
+int drawable abc_list_focused_holo 0x7f08002a
+int drawable abc_list_longpressed_holo 0x7f08002b
+int drawable abc_list_pressed_holo_dark 0x7f08002c
+int drawable abc_list_pressed_holo_light 0x7f08002d
+int drawable abc_list_selector_background_transition_holo_dark 0x7f08002e
+int drawable abc_list_selector_background_transition_holo_light 0x7f08002f
+int drawable abc_list_selector_disabled_holo_dark 0x7f080030
+int drawable abc_list_selector_disabled_holo_light 0x7f080031
+int drawable abc_list_selector_holo_dark 0x7f080032
+int drawable abc_list_selector_holo_light 0x7f080033
+int drawable abc_menu_hardkey_panel_mtrl_mult 0x7f080034
+int drawable abc_popup_background_mtrl_mult 0x7f080035
+int drawable abc_ratingbar_indicator_material 0x7f080036
+int drawable abc_ratingbar_material 0x7f080037
+int drawable abc_ratingbar_small_material 0x7f080038
+int drawable abc_scrubber_control_off_mtrl_alpha 0x7f080039
+int drawable abc_scrubber_control_to_pressed_mtrl_000 0x7f08003a
+int drawable abc_scrubber_control_to_pressed_mtrl_005 0x7f08003b
+int drawable abc_scrubber_primary_mtrl_alpha 0x7f08003c
+int drawable abc_scrubber_track_mtrl_alpha 0x7f08003d
+int drawable abc_seekbar_thumb_material 0x7f08003e
+int drawable abc_seekbar_tick_mark_material 0x7f08003f
+int drawable abc_seekbar_track_material 0x7f080040
+int drawable abc_spinner_mtrl_am_alpha 0x7f080041
+int drawable abc_spinner_textfield_background_material 0x7f080042
+int drawable abc_switch_thumb_material 0x7f080043
+int drawable abc_switch_track_mtrl_alpha 0x7f080044
+int drawable abc_tab_indicator_material 0x7f080045
+int drawable abc_tab_indicator_mtrl_alpha 0x7f080046
+int drawable abc_text_cursor_material 0x7f080047
+int drawable abc_text_select_handle_left_mtrl_dark 0x7f080048
+int drawable abc_text_select_handle_left_mtrl_light 0x7f080049
+int drawable abc_text_select_handle_middle_mtrl_dark 0x7f08004a
+int drawable abc_text_select_handle_middle_mtrl_light 0x7f08004b
+int drawable abc_text_select_handle_right_mtrl_dark 0x7f08004c
+int drawable abc_text_select_handle_right_mtrl_light 0x7f08004d
+int drawable abc_textfield_activated_mtrl_alpha 0x7f08004e
+int drawable abc_textfield_default_mtrl_alpha 0x7f08004f
+int drawable abc_textfield_search_activated_mtrl_alpha 0x7f080050
+int drawable abc_textfield_search_default_mtrl_alpha 0x7f080051
+int drawable abc_textfield_search_material 0x7f080052
+int drawable abc_vector_test 0x7f080053
+int drawable camera_switch 0x7f080054
+int drawable notification_action_background 0x7f080055
+int drawable notification_bg 0x7f080056
+int drawable notification_bg_low 0x7f080057
+int drawable notification_bg_low_normal 0x7f080058
+int drawable notification_bg_low_pressed 0x7f080059
+int drawable notification_bg_normal 0x7f08005a
+int drawable notification_bg_normal_pressed 0x7f08005b
+int drawable notification_icon_background 0x7f08005c
+int drawable notification_template_icon_bg 0x7f08005d
+int drawable notification_template_icon_low_bg 0x7f08005e
+int drawable notification_tile_bg 0x7f08005f
+int drawable notify_panel_notification_icon_bg 0x7f080060
+int drawable photo_mode 0x7f080061
+int drawable record_mode 0x7f080062
+int drawable start_record 0x7f080063
+int drawable stop_record 0x7f080064
+int drawable take_photo 0x7f080065
+int drawable tooltip_frame_dark 0x7f080066
+int drawable tooltip_frame_light 0x7f080067
+int id action_bar 0x7f0b0001
+int id action_bar_activity_content 0x7f0b0002
+int id action_bar_container 0x7f0b0003
+int id action_bar_root 0x7f0b0004
+int id action_bar_spinner 0x7f0b0005
+int id action_bar_subtitle 0x7f0b0006
+int id action_bar_title 0x7f0b0007
+int id action_container 0x7f0b0008
+int id action_context_bar 0x7f0b0009
+int id action_divider 0x7f0b000a
+int id action_image 0x7f0b000b
+int id action_menu_divider 0x7f0b000c
+int id action_menu_presenter 0x7f0b000d
+int id action_mode_bar 0x7f0b000e
+int id action_mode_bar_stub 0x7f0b000f
+int id action_mode_close_button 0x7f0b0010
+int id action_text 0x7f0b0011
+int id actions 0x7f0b0012
+int id activity_chooser_view_content 0x7f0b0013
+int id add 0x7f0b0014
+int id alertTitle 0x7f0b0015
+int id async 0x7f0b0016
+int id blocking 0x7f0b0017
+int id bottom 0x7f0b0018
+int id buttonPanel 0x7f0b0019
+int id cameraModeSwitchBtn 0x7f0b001a
+int id cameraSurfaceView 0x7f0b001b
+int id cameraSwitchBtn 0x7f0b001c
+int id camera_control_view 0x7f0b001d
+int id checkbox 0x7f0b001e
+int id chronometer 0x7f0b001f
+int id contentPanel 0x7f0b0020
+int id controlView 0x7f0b0021
+int id custom 0x7f0b0022
+int id customPanel 0x7f0b0023
+int id decor_content_parent 0x7f0b0024
+int id default_activity_button 0x7f0b0025
+int id edit_query 0x7f0b0026
+int id end 0x7f0b0027
+int id expand_activities_button 0x7f0b0028
+int id expanded_menu 0x7f0b0029
+int id forever 0x7f0b002a
+int id home 0x7f0b002b
+int id icon 0x7f0b002c
+int id icon_group 0x7f0b002d
+int id image 0x7f0b002e
+int id info 0x7f0b002f
+int id italic 0x7f0b0030
+int id left 0x7f0b0031
+int id line1 0x7f0b0032
+int id line3 0x7f0b0033
+int id listMode 0x7f0b0034
+int id list_item 0x7f0b0035
+int id message 0x7f0b0036
+int id multiply 0x7f0b0037
+int id none 0x7f0b0038
+int id normal 0x7f0b0039
+int id notification_background 0x7f0b003a
+int id notification_main_column 0x7f0b003b
+int id notification_main_column_container 0x7f0b003c
+int id parentPanel 0x7f0b003d
+int id progress_circular 0x7f0b003e
+int id progress_horizontal 0x7f0b003f
+int id radio 0x7f0b0040
+int id right 0x7f0b0041
+int id right_icon 0x7f0b0042
+int id right_side 0x7f0b0043
+int id screen 0x7f0b0044
+int id scrollIndicatorDown 0x7f0b0045
+int id scrollIndicatorUp 0x7f0b0046
+int id scrollView 0x7f0b0047
+int id search_badge 0x7f0b0048
+int id search_bar 0x7f0b0049
+int id search_button 0x7f0b004a
+int id search_close_btn 0x7f0b004b
+int id search_edit_frame 0x7f0b004c
+int id search_go_btn 0x7f0b004d
+int id search_mag_icon 0x7f0b004e
+int id search_plate 0x7f0b004f
+int id search_src_text 0x7f0b0050
+int id search_voice_btn 0x7f0b0051
+int id select_dialog_listview 0x7f0b0052
+int id shortcut 0x7f0b0053
+int id spacer 0x7f0b0054
+int id split_action_bar 0x7f0b0055
+int id src_atop 0x7f0b0056
+int id src_in 0x7f0b0057
+int id src_over 0x7f0b0058
+int id start 0x7f0b0059
+int id submenuarrow 0x7f0b005a
+int id submit_area 0x7f0b005b
+int id tabMode 0x7f0b005c
+int id tag_transition_group 0x7f0b005d
+int id takePhotoBtn 0x7f0b005e
+int id text 0x7f0b005f
+int id text2 0x7f0b0060
+int id textSpacerNoButtons 0x7f0b0061
+int id textSpacerNoTitle 0x7f0b0062
+int id time 0x7f0b0063
+int id timer_tv 0x7f0b0064
+int id title 0x7f0b0065
+int id titleDividerNoCustom 0x7f0b0066
+int id title_template 0x7f0b0067
+int id top 0x7f0b0068
+int id topPanel 0x7f0b0069
+int id uniform 0x7f0b006a
+int id up 0x7f0b006b
+int id wrap_content 0x7f0b006c
+int integer abc_config_activityDefaultDur 0x7f0c0001
+int integer abc_config_activityShortDur 0x7f0c0002
+int integer cancel_button_image_alpha 0x7f0c0003
+int integer config_tooltipAnimTime 0x7f0c0004
+int integer status_bar_notification_info_maxnum 0x7f0c0005
+int layout abc_action_bar_title_item 0x7f0e0001
+int layout abc_action_bar_up_container 0x7f0e0002
+int layout abc_action_menu_item_layout 0x7f0e0003
+int layout abc_action_menu_layout 0x7f0e0004
+int layout abc_action_mode_bar 0x7f0e0005
+int layout abc_action_mode_close_item_material 0x7f0e0006
+int layout abc_activity_chooser_view 0x7f0e0007
+int layout abc_activity_chooser_view_list_item 0x7f0e0008
+int layout abc_alert_dialog_button_bar_material 0x7f0e0009
+int layout abc_alert_dialog_material 0x7f0e000a
+int layout abc_alert_dialog_title_material 0x7f0e000b
+int layout abc_dialog_title_material 0x7f0e000c
+int layout abc_expanded_menu_layout 0x7f0e000d
+int layout abc_list_menu_item_checkbox 0x7f0e000e
+int layout abc_list_menu_item_icon 0x7f0e000f
+int layout abc_list_menu_item_layout 0x7f0e0010
+int layout abc_list_menu_item_radio 0x7f0e0011
+int layout abc_popup_menu_header_item_layout 0x7f0e0012
+int layout abc_popup_menu_item_layout 0x7f0e0013
+int layout abc_screen_content_include 0x7f0e0014
+int layout abc_screen_simple 0x7f0e0015
+int layout abc_screen_simple_overlay_action_mode 0x7f0e0016
+int layout abc_screen_toolbar 0x7f0e0017
+int layout abc_search_dropdown_item_icons_2line 0x7f0e0018
+int layout abc_search_view 0x7f0e0019
+int layout abc_select_dialog_material 0x7f0e001a
+int layout abc_tooltip 0x7f0e001b
+int layout camera_activity 0x7f0e001c
+int layout notification_action 0x7f0e001d
+int layout notification_action_tombstone 0x7f0e001e
+int layout notification_template_custom_big 0x7f0e001f
+int layout notification_template_icon_group 0x7f0e0020
+int layout notification_template_part_chronometer 0x7f0e0021
+int layout notification_template_part_time 0x7f0e0022
+int layout select_dialog_item_material 0x7f0e0023
+int layout select_dialog_multichoice_material 0x7f0e0024
+int layout select_dialog_singlechoice_material 0x7f0e0025
+int layout support_simple_spinner_dropdown_item 0x7f0e0026
+int string abc_action_bar_home_description 0x7f140001
+int string abc_action_bar_up_description 0x7f140002
+int string abc_action_menu_overflow_description 0x7f140003
+int string abc_action_mode_done 0x7f140004
+int string abc_activity_chooser_view_see_all 0x7f140005
+int string abc_activitychooserview_choose_application 0x7f140006
+int string abc_capital_off 0x7f140007
+int string abc_capital_on 0x7f140008
+int string abc_font_family_body_1_material 0x7f140009
+int string abc_font_family_body_2_material 0x7f14000a
+int string abc_font_family_button_material 0x7f14000b
+int string abc_font_family_caption_material 0x7f14000c
+int string abc_font_family_display_1_material 0x7f14000d
+int string abc_font_family_display_2_material 0x7f14000e
+int string abc_font_family_display_3_material 0x7f14000f
+int string abc_font_family_display_4_material 0x7f140010
+int string abc_font_family_headline_material 0x7f140011
+int string abc_font_family_menu_material 0x7f140012
+int string abc_font_family_subhead_material 0x7f140013
+int string abc_font_family_title_material 0x7f140014
+int string abc_search_hint 0x7f140015
+int string abc_searchview_description_clear 0x7f140016
+int string abc_searchview_description_query 0x7f140017
+int string abc_searchview_description_search 0x7f140018
+int string abc_searchview_description_submit 0x7f140019
+int string abc_searchview_description_voice 0x7f14001a
+int string abc_shareactionprovider_share_with 0x7f14001b
+int string abc_shareactionprovider_share_with_application 0x7f14001c
+int string abc_toolbar_collapse_description 0x7f14001d
+int string app_name 0x7f14001e
+int string search_menu_title 0x7f14001f
+int string status_bar_notification_info_overflow 0x7f140020
+int style AlertDialog_AppCompat 0x7f150001
+int style AlertDialog_AppCompat_Light 0x7f150002
+int style Animation_AppCompat_Dialog 0x7f150003
+int style Animation_AppCompat_DropDownUp 0x7f150004
+int style Animation_AppCompat_Tooltip 0x7f150005
+int style Base_AlertDialog_AppCompat 0x7f150006
+int style Base_AlertDialog_AppCompat_Light 0x7f150007
+int style Base_Animation_AppCompat_Dialog 0x7f150008
+int style Base_Animation_AppCompat_DropDownUp 0x7f150009
+int style Base_Animation_AppCompat_Tooltip 0x7f15000a
+int style Base_DialogWindowTitleBackground_AppCompat 0x7f15000b
+int style Base_DialogWindowTitle_AppCompat 0x7f15000c
+int style Base_TextAppearance_AppCompat 0x7f15000d
+int style Base_TextAppearance_AppCompat_Body1 0x7f15000e
+int style Base_TextAppearance_AppCompat_Body2 0x7f15000f
+int style Base_TextAppearance_AppCompat_Button 0x7f150010
+int style Base_TextAppearance_AppCompat_Caption 0x7f150011
+int style Base_TextAppearance_AppCompat_Display1 0x7f150012
+int style Base_TextAppearance_AppCompat_Display2 0x7f150013
+int style Base_TextAppearance_AppCompat_Display3 0x7f150014
+int style Base_TextAppearance_AppCompat_Display4 0x7f150015
+int style Base_TextAppearance_AppCompat_Headline 0x7f150016
+int style Base_TextAppearance_AppCompat_Inverse 0x7f150017
+int style Base_TextAppearance_AppCompat_Large 0x7f150018
+int style Base_TextAppearance_AppCompat_Large_Inverse 0x7f150019
+int style Base_TextAppearance_AppCompat_Light_Widget_PopupMenu_Large 0x7f15001a
+int style Base_TextAppearance_AppCompat_Light_Widget_PopupMenu_Small 0x7f15001b
+int style Base_TextAppearance_AppCompat_Medium 0x7f15001c
+int style Base_TextAppearance_AppCompat_Medium_Inverse 0x7f15001d
+int style Base_TextAppearance_AppCompat_Menu 0x7f15001e
+int style Base_TextAppearance_AppCompat_SearchResult 0x7f15001f
+int style Base_TextAppearance_AppCompat_SearchResult_Subtitle 0x7f150020
+int style Base_TextAppearance_AppCompat_SearchResult_Title 0x7f150021
+int style Base_TextAppearance_AppCompat_Small 0x7f150022
+int style Base_TextAppearance_AppCompat_Small_Inverse 0x7f150023
+int style Base_TextAppearance_AppCompat_Subhead 0x7f150024
+int style Base_TextAppearance_AppCompat_Subhead_Inverse 0x7f150025
+int style Base_TextAppearance_AppCompat_Title 0x7f150026
+int style Base_TextAppearance_AppCompat_Title_Inverse 0x7f150027
+int style Base_TextAppearance_AppCompat_Tooltip 0x7f150028
+int style Base_TextAppearance_AppCompat_Widget_ActionBar_Menu 0x7f150029
+int style Base_TextAppearance_AppCompat_Widget_ActionBar_Subtitle 0x7f15002a
+int style Base_TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse 0x7f15002b
+int style Base_TextAppearance_AppCompat_Widget_ActionBar_Title 0x7f15002c
+int style Base_TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse 0x7f15002d
+int style Base_TextAppearance_AppCompat_Widget_ActionMode_Subtitle 0x7f15002e
+int style Base_TextAppearance_AppCompat_Widget_ActionMode_Title 0x7f15002f
+int style Base_TextAppearance_AppCompat_Widget_Button 0x7f150030
+int style Base_TextAppearance_AppCompat_Widget_Button_Borderless_Colored 0x7f150031
+int style Base_TextAppearance_AppCompat_Widget_Button_Colored 0x7f150032
+int style Base_TextAppearance_AppCompat_Widget_Button_Inverse 0x7f150033
+int style Base_TextAppearance_AppCompat_Widget_DropDownItem 0x7f150034
+int style Base_TextAppearance_AppCompat_Widget_PopupMenu_Header 0x7f150035
+int style Base_TextAppearance_AppCompat_Widget_PopupMenu_Large 0x7f150036
+int style Base_TextAppearance_AppCompat_Widget_PopupMenu_Small 0x7f150037
+int style Base_TextAppearance_AppCompat_Widget_Switch 0x7f150038
+int style Base_TextAppearance_AppCompat_Widget_TextView_SpinnerItem 0x7f150039
+int style Base_TextAppearance_Widget_AppCompat_ExpandedMenu_Item 0x7f15003a
+int style Base_TextAppearance_Widget_AppCompat_Toolbar_Subtitle 0x7f15003b
+int style Base_TextAppearance_Widget_AppCompat_Toolbar_Title 0x7f15003c
+int style Base_ThemeOverlay_AppCompat 0x7f15003d
+int style Base_ThemeOverlay_AppCompat_ActionBar 0x7f15003e
+int style Base_ThemeOverlay_AppCompat_Dark 0x7f15003f
+int style Base_ThemeOverlay_AppCompat_Dark_ActionBar 0x7f150040
+int style Base_ThemeOverlay_AppCompat_Dialog 0x7f150041
+int style Base_ThemeOverlay_AppCompat_Dialog_Alert 0x7f150042
+int style Base_ThemeOverlay_AppCompat_Light 0x7f150043
+int style Base_Theme_AppCompat 0x7f150044
+int style Base_Theme_AppCompat_CompactMenu 0x7f150045
+int style Base_Theme_AppCompat_Dialog 0x7f150046
+int style Base_Theme_AppCompat_DialogWhenLarge 0x7f150047
+int style Base_Theme_AppCompat_Dialog_Alert 0x7f150048
+int style Base_Theme_AppCompat_Dialog_FixedSize 0x7f150049
+int style Base_Theme_AppCompat_Dialog_MinWidth 0x7f15004a
+int style Base_Theme_AppCompat_Light 0x7f15004b
+int style Base_Theme_AppCompat_Light_DarkActionBar 0x7f15004c
+int style Base_Theme_AppCompat_Light_Dialog 0x7f15004d
+int style Base_Theme_AppCompat_Light_DialogWhenLarge 0x7f15004e
+int style Base_Theme_AppCompat_Light_Dialog_Alert 0x7f15004f
+int style Base_Theme_AppCompat_Light_Dialog_FixedSize 0x7f150050
+int style Base_Theme_AppCompat_Light_Dialog_MinWidth 0x7f150051
+int style Base_V21_ThemeOverlay_AppCompat_Dialog 0x7f150052
+int style Base_V21_Theme_AppCompat 0x7f150053
+int style Base_V21_Theme_AppCompat_Dialog 0x7f150054
+int style Base_V21_Theme_AppCompat_Light 0x7f150055
+int style Base_V21_Theme_AppCompat_Light_Dialog 0x7f150056
+int style Base_V22_Theme_AppCompat 0x7f150057
+int style Base_V22_Theme_AppCompat_Light 0x7f150058
+int style Base_V23_Theme_AppCompat 0x7f150059
+int style Base_V23_Theme_AppCompat_Light 0x7f15005a
+int style Base_V26_Theme_AppCompat 0x7f15005b
+int style Base_V26_Theme_AppCompat_Light 0x7f15005c
+int style Base_V26_Widget_AppCompat_Toolbar 0x7f15005d
+int style Base_V7_ThemeOverlay_AppCompat_Dialog 0x7f15005e
+int style Base_V7_Theme_AppCompat 0x7f15005f
+int style Base_V7_Theme_AppCompat_Dialog 0x7f150060
+int style Base_V7_Theme_AppCompat_Light 0x7f150061
+int style Base_V7_Theme_AppCompat_Light_Dialog 0x7f150062
+int style Base_V7_Widget_AppCompat_AutoCompleteTextView 0x7f150063
+int style Base_V7_Widget_AppCompat_EditText 0x7f150064
+int style Base_V7_Widget_AppCompat_Toolbar 0x7f150065
+int style Base_Widget_AppCompat_ActionBar 0x7f150066
+int style Base_Widget_AppCompat_ActionBar_Solid 0x7f150067
+int style Base_Widget_AppCompat_ActionBar_TabBar 0x7f150068
+int style Base_Widget_AppCompat_ActionBar_TabText 0x7f150069
+int style Base_Widget_AppCompat_ActionBar_TabView 0x7f15006a
+int style Base_Widget_AppCompat_ActionButton 0x7f15006b
+int style Base_Widget_AppCompat_ActionButton_CloseMode 0x7f15006c
+int style Base_Widget_AppCompat_ActionButton_Overflow 0x7f15006d
+int style Base_Widget_AppCompat_ActionMode 0x7f15006e
+int style Base_Widget_AppCompat_ActivityChooserView 0x7f15006f
+int style Base_Widget_AppCompat_AutoCompleteTextView 0x7f150070
+int style Base_Widget_AppCompat_Button 0x7f150071
+int style Base_Widget_AppCompat_ButtonBar 0x7f150072
+int style Base_Widget_AppCompat_ButtonBar_AlertDialog 0x7f150073
+int style Base_Widget_AppCompat_Button_Borderless 0x7f150074
+int style Base_Widget_AppCompat_Button_Borderless_Colored 0x7f150075
+int style Base_Widget_AppCompat_Button_ButtonBar_AlertDialog 0x7f150076
+int style Base_Widget_AppCompat_Button_Colored 0x7f150077
+int style Base_Widget_AppCompat_Button_Small 0x7f150078
+int style Base_Widget_AppCompat_CompoundButton_CheckBox 0x7f150079
+int style Base_Widget_AppCompat_CompoundButton_RadioButton 0x7f15007a
+int style Base_Widget_AppCompat_CompoundButton_Switch 0x7f15007b
+int style Base_Widget_AppCompat_DrawerArrowToggle 0x7f15007c
+int style Base_Widget_AppCompat_DrawerArrowToggle_Common 0x7f15007d
+int style Base_Widget_AppCompat_DropDownItem_Spinner 0x7f15007e
+int style Base_Widget_AppCompat_EditText 0x7f15007f
+int style Base_Widget_AppCompat_ImageButton 0x7f150080
+int style Base_Widget_AppCompat_Light_ActionBar 0x7f150081
+int style Base_Widget_AppCompat_Light_ActionBar_Solid 0x7f150082
+int style Base_Widget_AppCompat_Light_ActionBar_TabBar 0x7f150083
+int style Base_Widget_AppCompat_Light_ActionBar_TabText 0x7f150084
+int style Base_Widget_AppCompat_Light_ActionBar_TabText_Inverse 0x7f150085
+int style Base_Widget_AppCompat_Light_ActionBar_TabView 0x7f150086
+int style Base_Widget_AppCompat_Light_PopupMenu 0x7f150087
+int style Base_Widget_AppCompat_Light_PopupMenu_Overflow 0x7f150088
+int style Base_Widget_AppCompat_ListMenuView 0x7f150089
+int style Base_Widget_AppCompat_ListPopupWindow 0x7f15008a
+int style Base_Widget_AppCompat_ListView 0x7f15008b
+int style Base_Widget_AppCompat_ListView_DropDown 0x7f15008c
+int style Base_Widget_AppCompat_ListView_Menu 0x7f15008d
+int style Base_Widget_AppCompat_PopupMenu 0x7f15008e
+int style Base_Widget_AppCompat_PopupMenu_Overflow 0x7f15008f
+int style Base_Widget_AppCompat_PopupWindow 0x7f150090
+int style Base_Widget_AppCompat_ProgressBar 0x7f150091
+int style Base_Widget_AppCompat_ProgressBar_Horizontal 0x7f150092
+int style Base_Widget_AppCompat_RatingBar 0x7f150093
+int style Base_Widget_AppCompat_RatingBar_Indicator 0x7f150094
+int style Base_Widget_AppCompat_RatingBar_Small 0x7f150095
+int style Base_Widget_AppCompat_SearchView 0x7f150096
+int style Base_Widget_AppCompat_SearchView_ActionBar 0x7f150097
+int style Base_Widget_AppCompat_SeekBar 0x7f150098
+int style Base_Widget_AppCompat_SeekBar_Discrete 0x7f150099
+int style Base_Widget_AppCompat_Spinner 0x7f15009a
+int style Base_Widget_AppCompat_Spinner_Underlined 0x7f15009b
+int style Base_Widget_AppCompat_TextView_SpinnerItem 0x7f15009c
+int style Base_Widget_AppCompat_Toolbar 0x7f15009d
+int style Base_Widget_AppCompat_Toolbar_Button_Navigation 0x7f15009e
+int style Platform_AppCompat 0x7f15009f
+int style Platform_AppCompat_Light 0x7f1500a0
+int style Platform_ThemeOverlay_AppCompat 0x7f1500a1
+int style Platform_ThemeOverlay_AppCompat_Dark 0x7f1500a2
+int style Platform_ThemeOverlay_AppCompat_Light 0x7f1500a3
+int style Platform_V21_AppCompat 0x7f1500a4
+int style Platform_V21_AppCompat_Light 0x7f1500a5
+int style Platform_V25_AppCompat 0x7f1500a6
+int style Platform_V25_AppCompat_Light 0x7f1500a7
+int style Platform_Widget_AppCompat_Spinner 0x7f1500a8
+int style RtlOverlay_DialogWindowTitle_AppCompat 0x7f1500a9
+int style RtlOverlay_Widget_AppCompat_ActionBar_TitleItem 0x7f1500aa
+int style RtlOverlay_Widget_AppCompat_DialogTitle_Icon 0x7f1500ab
+int style RtlOverlay_Widget_AppCompat_PopupMenuItem 0x7f1500ac
+int style RtlOverlay_Widget_AppCompat_PopupMenuItem_InternalGroup 0x7f1500ad
+int style RtlOverlay_Widget_AppCompat_PopupMenuItem_Text 0x7f1500ae
+int style RtlOverlay_Widget_AppCompat_SearchView_MagIcon 0x7f1500af
+int style RtlOverlay_Widget_AppCompat_Search_DropDown 0x7f1500b0
+int style RtlOverlay_Widget_AppCompat_Search_DropDown_Icon1 0x7f1500b1
+int style RtlOverlay_Widget_AppCompat_Search_DropDown_Icon2 0x7f1500b2
+int style RtlOverlay_Widget_AppCompat_Search_DropDown_Query 0x7f1500b3
+int style RtlOverlay_Widget_AppCompat_Search_DropDown_Text 0x7f1500b4
+int style RtlUnderlay_Widget_AppCompat_ActionButton 0x7f1500b5
+int style RtlUnderlay_Widget_AppCompat_ActionButton_Overflow 0x7f1500b6
+int style TextAppearance_AppCompat 0x7f1500b7
+int style TextAppearance_AppCompat_Body1 0x7f1500b8
+int style TextAppearance_AppCompat_Body2 0x7f1500b9
+int style TextAppearance_AppCompat_Button 0x7f1500ba
+int style TextAppearance_AppCompat_Caption 0x7f1500bb
+int style TextAppearance_AppCompat_Display1 0x7f1500bc
+int style TextAppearance_AppCompat_Display2 0x7f1500bd
+int style TextAppearance_AppCompat_Display3 0x7f1500be
+int style TextAppearance_AppCompat_Display4 0x7f1500bf
+int style TextAppearance_AppCompat_Headline 0x7f1500c0
+int style TextAppearance_AppCompat_Inverse 0x7f1500c1
+int style TextAppearance_AppCompat_Large 0x7f1500c2
+int style TextAppearance_AppCompat_Large_Inverse 0x7f1500c3
+int style TextAppearance_AppCompat_Light_SearchResult_Subtitle 0x7f1500c4
+int style TextAppearance_AppCompat_Light_SearchResult_Title 0x7f1500c5
+int style TextAppearance_AppCompat_Light_Widget_PopupMenu_Large 0x7f1500c6
+int style TextAppearance_AppCompat_Light_Widget_PopupMenu_Small 0x7f1500c7
+int style TextAppearance_AppCompat_Medium 0x7f1500c8
+int style TextAppearance_AppCompat_Medium_Inverse 0x7f1500c9
+int style TextAppearance_AppCompat_Menu 0x7f1500ca
+int style TextAppearance_AppCompat_SearchResult_Subtitle 0x7f1500cb
+int style TextAppearance_AppCompat_SearchResult_Title 0x7f1500cc
+int style TextAppearance_AppCompat_Small 0x7f1500cd
+int style TextAppearance_AppCompat_Small_Inverse 0x7f1500ce
+int style TextAppearance_AppCompat_Subhead 0x7f1500cf
+int style TextAppearance_AppCompat_Subhead_Inverse 0x7f1500d0
+int style TextAppearance_AppCompat_Title 0x7f1500d1
+int style TextAppearance_AppCompat_Title_Inverse 0x7f1500d2
+int style TextAppearance_AppCompat_Tooltip 0x7f1500d3
+int style TextAppearance_AppCompat_Widget_ActionBar_Menu 0x7f1500d4
+int style TextAppearance_AppCompat_Widget_ActionBar_Subtitle 0x7f1500d5
+int style TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse 0x7f1500d6
+int style TextAppearance_AppCompat_Widget_ActionBar_Title 0x7f1500d7
+int style TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse 0x7f1500d8
+int style TextAppearance_AppCompat_Widget_ActionMode_Subtitle 0x7f1500d9
+int style TextAppearance_AppCompat_Widget_ActionMode_Subtitle_Inverse 0x7f1500da
+int style TextAppearance_AppCompat_Widget_ActionMode_Title 0x7f1500db
+int style TextAppearance_AppCompat_Widget_ActionMode_Title_Inverse 0x7f1500dc
+int style TextAppearance_AppCompat_Widget_Button 0x7f1500dd
+int style TextAppearance_AppCompat_Widget_Button_Borderless_Colored 0x7f1500de
+int style TextAppearance_AppCompat_Widget_Button_Colored 0x7f1500df
+int style TextAppearance_AppCompat_Widget_Button_Inverse 0x7f1500e0
+int style TextAppearance_AppCompat_Widget_DropDownItem 0x7f1500e1
+int style TextAppearance_AppCompat_Widget_PopupMenu_Header 0x7f1500e2
+int style TextAppearance_AppCompat_Widget_PopupMenu_Large 0x7f1500e3
+int style TextAppearance_AppCompat_Widget_PopupMenu_Small 0x7f1500e4
+int style TextAppearance_AppCompat_Widget_Switch 0x7f1500e5
+int style TextAppearance_AppCompat_Widget_TextView_SpinnerItem 0x7f1500e6
+int style TextAppearance_Compat_Notification 0x7f1500e7
+int style TextAppearance_Compat_Notification_Info 0x7f1500e8
+int style TextAppearance_Compat_Notification_Line2 0x7f1500e9
+int style TextAppearance_Compat_Notification_Time 0x7f1500ea
+int style TextAppearance_Compat_Notification_Title 0x7f1500eb
+int style TextAppearance_Widget_AppCompat_ExpandedMenu_Item 0x7f1500ec
+int style TextAppearance_Widget_AppCompat_Toolbar_Subtitle 0x7f1500ed
+int style TextAppearance_Widget_AppCompat_Toolbar_Title 0x7f1500ee
+int style ThemeOverlay_AppCompat 0x7f1500ef
+int style ThemeOverlay_AppCompat_ActionBar 0x7f1500f0
+int style ThemeOverlay_AppCompat_Dark 0x7f1500f1
+int style ThemeOverlay_AppCompat_Dark_ActionBar 0x7f1500f2
+int style ThemeOverlay_AppCompat_Dialog 0x7f1500f3
+int style ThemeOverlay_AppCompat_Dialog_Alert 0x7f1500f4
+int style ThemeOverlay_AppCompat_Light 0x7f1500f5
+int style Theme_AppCompat 0x7f1500f6
+int style Theme_AppCompat_CompactMenu 0x7f1500f7
+int style Theme_AppCompat_DayNight 0x7f1500f8
+int style Theme_AppCompat_DayNight_DarkActionBar 0x7f1500f9
+int style Theme_AppCompat_DayNight_Dialog 0x7f1500fa
+int style Theme_AppCompat_DayNight_DialogWhenLarge 0x7f1500fb
+int style Theme_AppCompat_DayNight_Dialog_Alert 0x7f1500fc
+int style Theme_AppCompat_DayNight_Dialog_MinWidth 0x7f1500fd
+int style Theme_AppCompat_DayNight_NoActionBar 0x7f1500fe
+int style Theme_AppCompat_Dialog 0x7f1500ff
+int style Theme_AppCompat_DialogWhenLarge 0x7f150100
+int style Theme_AppCompat_Dialog_Alert 0x7f150101
+int style Theme_AppCompat_Dialog_MinWidth 0x7f150102
+int style Theme_AppCompat_Light 0x7f150103
+int style Theme_AppCompat_Light_DarkActionBar 0x7f150104
+int style Theme_AppCompat_Light_Dialog 0x7f150105
+int style Theme_AppCompat_Light_DialogWhenLarge 0x7f150106
+int style Theme_AppCompat_Light_Dialog_Alert 0x7f150107
+int style Theme_AppCompat_Light_Dialog_MinWidth 0x7f150108
+int style Theme_AppCompat_Light_NoActionBar 0x7f150109
+int style Theme_AppCompat_NoActionBar 0x7f15010a
+int style Widget_AppCompat_ActionBar 0x7f15010b
+int style Widget_AppCompat_ActionBar_Solid 0x7f15010c
+int style Widget_AppCompat_ActionBar_TabBar 0x7f15010d
+int style Widget_AppCompat_ActionBar_TabText 0x7f15010e
+int style Widget_AppCompat_ActionBar_TabView 0x7f15010f
+int style Widget_AppCompat_ActionButton 0x7f150110
+int style Widget_AppCompat_ActionButton_CloseMode 0x7f150111
+int style Widget_AppCompat_ActionButton_Overflow 0x7f150112
+int style Widget_AppCompat_ActionMode 0x7f150113
+int style Widget_AppCompat_ActivityChooserView 0x7f150114
+int style Widget_AppCompat_AutoCompleteTextView 0x7f150115
+int style Widget_AppCompat_Button 0x7f150116
+int style Widget_AppCompat_ButtonBar 0x7f150117
+int style Widget_AppCompat_ButtonBar_AlertDialog 0x7f150118
+int style Widget_AppCompat_Button_Borderless 0x7f150119
+int style Widget_AppCompat_Button_Borderless_Colored 0x7f15011a
+int style Widget_AppCompat_Button_ButtonBar_AlertDialog 0x7f15011b
+int style Widget_AppCompat_Button_Colored 0x7f15011c
+int style Widget_AppCompat_Button_Small 0x7f15011d
+int style Widget_AppCompat_CompoundButton_CheckBox 0x7f15011e
+int style Widget_AppCompat_CompoundButton_RadioButton 0x7f15011f
+int style Widget_AppCompat_CompoundButton_Switch 0x7f150120
+int style Widget_AppCompat_DrawerArrowToggle 0x7f150121
+int style Widget_AppCompat_DropDownItem_Spinner 0x7f150122
+int style Widget_AppCompat_EditText 0x7f150123
+int style Widget_AppCompat_ImageButton 0x7f150124
+int style Widget_AppCompat_Light_ActionBar 0x7f150125
+int style Widget_AppCompat_Light_ActionBar_Solid 0x7f150126
+int style Widget_AppCompat_Light_ActionBar_Solid_Inverse 0x7f150127
+int style Widget_AppCompat_Light_ActionBar_TabBar 0x7f150128
+int style Widget_AppCompat_Light_ActionBar_TabBar_Inverse 0x7f150129
+int style Widget_AppCompat_Light_ActionBar_TabText 0x7f15012a
+int style Widget_AppCompat_Light_ActionBar_TabText_Inverse 0x7f15012b
+int style Widget_AppCompat_Light_ActionBar_TabView 0x7f15012c
+int style Widget_AppCompat_Light_ActionBar_TabView_Inverse 0x7f15012d
+int style Widget_AppCompat_Light_ActionButton 0x7f15012e
+int style Widget_AppCompat_Light_ActionButton_CloseMode 0x7f15012f
+int style Widget_AppCompat_Light_ActionButton_Overflow 0x7f150130
+int style Widget_AppCompat_Light_ActionMode_Inverse 0x7f150131
+int style Widget_AppCompat_Light_ActivityChooserView 0x7f150132
+int style Widget_AppCompat_Light_AutoCompleteTextView 0x7f150133
+int style Widget_AppCompat_Light_DropDownItem_Spinner 0x7f150134
+int style Widget_AppCompat_Light_ListPopupWindow 0x7f150135
+int style Widget_AppCompat_Light_ListView_DropDown 0x7f150136
+int style Widget_AppCompat_Light_PopupMenu 0x7f150137
+int style Widget_AppCompat_Light_PopupMenu_Overflow 0x7f150138
+int style Widget_AppCompat_Light_SearchView 0x7f150139
+int style Widget_AppCompat_Light_Spinner_DropDown_ActionBar 0x7f15013a
+int style Widget_AppCompat_ListMenuView 0x7f15013b
+int style Widget_AppCompat_ListPopupWindow 0x7f15013c
+int style Widget_AppCompat_ListView 0x7f15013d
+int style Widget_AppCompat_ListView_DropDown 0x7f15013e
+int style Widget_AppCompat_ListView_Menu 0x7f15013f
+int style Widget_AppCompat_PopupMenu 0x7f150140
+int style Widget_AppCompat_PopupMenu_Overflow 0x7f150141
+int style Widget_AppCompat_PopupWindow 0x7f150142
+int style Widget_AppCompat_ProgressBar 0x7f150143
+int style Widget_AppCompat_ProgressBar_Horizontal 0x7f150144
+int style Widget_AppCompat_RatingBar 0x7f150145
+int style Widget_AppCompat_RatingBar_Indicator 0x7f150146
+int style Widget_AppCompat_RatingBar_Small 0x7f150147
+int style Widget_AppCompat_SearchView 0x7f150148
+int style Widget_AppCompat_SearchView_ActionBar 0x7f150149
+int style Widget_AppCompat_SeekBar 0x7f15014a
+int style Widget_AppCompat_SeekBar_Discrete 0x7f15014b
+int style Widget_AppCompat_Spinner 0x7f15014c
+int style Widget_AppCompat_Spinner_DropDown 0x7f15014d
+int style Widget_AppCompat_Spinner_DropDown_ActionBar 0x7f15014e
+int style Widget_AppCompat_Spinner_Underlined 0x7f15014f
+int style Widget_AppCompat_TextView_SpinnerItem 0x7f150150
+int style Widget_AppCompat_Toolbar 0x7f150151
+int style Widget_AppCompat_Toolbar_Button_Navigation 0x7f150152
+int style Widget_Compat_NotificationActionContainer 0x7f150153
+int style Widget_Compat_NotificationActionText 0x7f150154
+int style Widget_Support_CoordinatorLayout 0x7f150155
+int[] styleable ActionBar { 0x7f040032, 0x7f040033, 0x7f040034, 0x7f040058, 0x7f040059, 0x7f04005a, 0x7f04005b, 0x7f04005c, 0x7f04005d, 0x7f040060, 0x7f040064, 0x7f040065, 0x7f040070, 0x7f04007e, 0x7f04007f, 0x7f040080, 0x7f040081, 0x7f040082, 0x7f040087, 0x7f04008a, 0x7f04009e, 0x7f0400a5, 0x7f0400b0, 0x7f0400b3, 0x7f0400b4, 0x7f0400cf, 0x7f0400d2, 0x7f0400ed, 0x7f0400f6 }
+int styleable ActionBar_background 0
+int styleable ActionBar_backgroundSplit 1
+int styleable ActionBar_backgroundStacked 2
+int styleable ActionBar_contentInsetEnd 3
+int styleable ActionBar_contentInsetEndWithActions 4
+int styleable ActionBar_contentInsetLeft 5
+int styleable ActionBar_contentInsetRight 6
+int styleable ActionBar_contentInsetStart 7
+int styleable ActionBar_contentInsetStartWithNavigation 8
+int styleable ActionBar_customNavigationLayout 9
+int styleable ActionBar_displayOptions 10
+int styleable ActionBar_divider 11
+int styleable ActionBar_elevation 12
+int styleable ActionBar_height 13
+int styleable ActionBar_hideOnContentScroll 14
+int styleable ActionBar_homeAsUpIndicator 15
+int styleable ActionBar_homeLayout 16
+int styleable ActionBar_icon 17
+int styleable ActionBar_indeterminateProgressStyle 18
+int styleable ActionBar_itemPadding 19
+int styleable ActionBar_logo 20
+int styleable ActionBar_navigationMode 21
+int styleable ActionBar_popupTheme 22
+int styleable ActionBar_progressBarPadding 23
+int styleable ActionBar_progressBarStyle 24
+int styleable ActionBar_subtitle 25
+int styleable ActionBar_subtitleTextStyle 26
+int styleable ActionBar_title 27
+int styleable ActionBar_titleTextStyle 28
+int[] styleable ActionBarLayout { 0x10100b3 }
+int styleable ActionBarLayout_android_layout_gravity 0
+int[] styleable ActionMenuItemView { 0x101013f }
+int styleable ActionMenuItemView_android_minWidth 0
+int[] styleable ActionMode { 0x7f040032, 0x7f040033, 0x7f040048, 0x7f04007e, 0x7f0400d2, 0x7f0400f6 }
+int styleable ActionMode_background 0
+int styleable ActionMode_backgroundSplit 1
+int styleable ActionMode_closeItemLayout 2
+int styleable ActionMode_height 3
+int styleable ActionMode_subtitleTextStyle 4
+int styleable ActionMode_titleTextStyle 5
+int[] styleable ActivityChooserView { 0x7f040071, 0x7f040088 }
+int styleable ActivityChooserView_expandActivityOverflowButtonDrawable 0
+int styleable ActivityChooserView_initialActivityCount 1
+int[] styleable AlertDialog { 0x10100f2, 0x7f04003f, 0x7f040040, 0x7f040095, 0x7f040096, 0x7f0400a2, 0x7f0400c4, 0x7f0400c5 }
+int styleable AlertDialog_android_layout 0
+int styleable AlertDialog_buttonIconDimen 1
+int styleable AlertDialog_buttonPanelSideLayout 2
+int styleable AlertDialog_listItemLayout 3
+int styleable AlertDialog_listLayout 4
+int styleable AlertDialog_multiChoiceItemLayout 5
+int styleable AlertDialog_showTitle 6
+int styleable AlertDialog_singleChoiceItemLayout 7
+int[] styleable AppCompatImageView { 0x1010119, 0x7f0400ca, 0x7f0400eb, 0x7f0400ec }
+int styleable AppCompatImageView_android_src 0
+int styleable AppCompatImageView_srcCompat 1
+int styleable AppCompatImageView_tint 2
+int styleable AppCompatImageView_tintMode 3
+int[] styleable AppCompatSeekBar { 0x1010142, 0x7f0400e8, 0x7f0400e9, 0x7f0400ea }
+int styleable AppCompatSeekBar_android_thumb 0
+int styleable AppCompatSeekBar_tickMark 1
+int styleable AppCompatSeekBar_tickMarkTint 2
+int styleable AppCompatSeekBar_tickMarkTintMode 3
+int[] styleable AppCompatTextHelper { 0x101016e, 0x1010393, 0x101016f, 0x1010170, 0x1010392, 0x101016d, 0x1010034 }
+int styleable AppCompatTextHelper_android_drawableBottom 0
+int styleable AppCompatTextHelper_android_drawableEnd 1
+int styleable AppCompatTextHelper_android_drawableLeft 2
+int styleable AppCompatTextHelper_android_drawableRight 3
+int styleable AppCompatTextHelper_android_drawableStart 4
+int styleable AppCompatTextHelper_android_drawableTop 5
+int styleable AppCompatTextHelper_android_textAppearance 6
+int[] styleable AppCompatTextView { 0x1010034, 0x7f04002d, 0x7f04002e, 0x7f04002f, 0x7f040030, 0x7f040031, 0x7f040073, 0x7f0400d8 }
+int styleable AppCompatTextView_android_textAppearance 0
+int styleable AppCompatTextView_autoSizeMaxTextSize 1
+int styleable AppCompatTextView_autoSizeMinTextSize 2
+int styleable AppCompatTextView_autoSizePresetSizes 3
+int styleable AppCompatTextView_autoSizeStepGranularity 4
+int styleable AppCompatTextView_autoSizeTextType 5
+int styleable AppCompatTextView_fontFamily 6
+int styleable AppCompatTextView_textAllCaps 7
+int[] styleable AppCompatTheme { 0x7f040001, 0x7f040002, 0x7f040003, 0x7f040004, 0x7f040005, 0x7f040006, 0x7f040007, 0x7f040008, 0x7f040009, 0x7f04000a, 0x7f04000b, 0x7f04000c, 0x7f04000d, 0x7f04000f, 0x7f040010, 0x7f040011, 0x7f040012, 0x7f040013, 0x7f040014, 0x7f040015, 0x7f040016, 0x7f040017, 0x7f040018, 0x7f040019, 0x7f04001a, 0x7f04001b, 0x7f04001c, 0x7f04001d, 0x7f04001e, 0x7f04001f, 0x7f040022, 0x7f040023, 0x7f040024, 0x7f040025, 0x7f040026, 0x10100ae, 0x1010057, 0x7f04002c, 0x7f040038, 0x7f040039, 0x7f04003a, 0x7f04003b, 0x7f04003c, 0x7f04003d, 0x7f040041, 0x7f040042, 0x7f040045, 0x7f040046, 0x7f04004c, 0x7f04004d, 0x7f04004e, 0x7f04004f, 0x7f040050, 0x7f040051, 0x7f040052, 0x7f040053, 0x7f040054, 0x7f040055, 0x7f04005e, 0x7f040062, 0x7f040063, 0x7f040066, 0x7f040068, 0x7f04006b, 0x7f04006c, 0x7f04006d, 0x7f04006e, 0x7f04006f, 0x7f040080, 0x7f040086, 0x7f040093, 0x7f040094, 0x7f040097, 0x7f040098, 0x7f040099, 0x7f04009a, 0x7f04009b, 0x7f04009c, 0x7f04009d, 0x7f0400ac, 0x7f0400ad, 0x7f0400ae, 0x7f0400af, 0x7f0400b1, 0x7f0400b7, 0x7f0400b8, 0x7f0400b9, 0x7f0400ba, 0x7f0400bd, 0x7f0400be, 0x7f0400bf, 0x7f0400c0, 0x7f0400c7, 0x7f0400c8, 0x7f0400d6, 0x7f0400d9, 0x7f0400da, 0x7f0400db, 0x7f0400dc, 0x7f0400dd, 0x7f0400de, 0x7f0400df, 0x7f0400e0, 0x7f0400e1, 0x7f0400e2, 0x7f0400f7, 0x7f0400f8, 0x7f0400f9, 0x7f0400fa, 0x7f0400ff, 0x7f040101, 0x7f040102, 0x7f040103, 0x7f040104, 0x7f040105, 0x7f040106, 0x7f040107, 0x7f040108, 0x7f040109, 0x7f04010a }
+int styleable AppCompatTheme_actionBarDivider 0
+int styleable AppCompatTheme_actionBarItemBackground 1
+int styleable AppCompatTheme_actionBarPopupTheme 2
+int styleable AppCompatTheme_actionBarSize 3
+int styleable AppCompatTheme_actionBarSplitStyle 4
+int styleable AppCompatTheme_actionBarStyle 5
+int styleable AppCompatTheme_actionBarTabBarStyle 6
+int styleable AppCompatTheme_actionBarTabStyle 7
+int styleable AppCompatTheme_actionBarTabTextStyle 8
+int styleable AppCompatTheme_actionBarTheme 9
+int styleable AppCompatTheme_actionBarWidgetTheme 10
+int styleable AppCompatTheme_actionButtonStyle 11
+int styleable AppCompatTheme_actionDropDownStyle 12
+int styleable AppCompatTheme_actionMenuTextAppearance 13
+int styleable AppCompatTheme_actionMenuTextColor 14
+int styleable AppCompatTheme_actionModeBackground 15
+int styleable AppCompatTheme_actionModeCloseButtonStyle 16
+int styleable AppCompatTheme_actionModeCloseDrawable 17
+int styleable AppCompatTheme_actionModeCopyDrawable 18
+int styleable AppCompatTheme_actionModeCutDrawable 19
+int styleable AppCompatTheme_actionModeFindDrawable 20
+int styleable AppCompatTheme_actionModePasteDrawable 21
+int styleable AppCompatTheme_actionModePopupWindowStyle 22
+int styleable AppCompatTheme_actionModeSelectAllDrawable 23
+int styleable AppCompatTheme_actionModeShareDrawable 24
+int styleable AppCompatTheme_actionModeSplitBackground 25
+int styleable AppCompatTheme_actionModeStyle 26
+int styleable AppCompatTheme_actionModeWebSearchDrawable 27
+int styleable AppCompatTheme_actionOverflowButtonStyle 28
+int styleable AppCompatTheme_actionOverflowMenuStyle 29
+int styleable AppCompatTheme_activityChooserViewStyle 30
+int styleable AppCompatTheme_alertDialogButtonGroupStyle 31
+int styleable AppCompatTheme_alertDialogCenterButtons 32
+int styleable AppCompatTheme_alertDialogStyle 33
+int styleable AppCompatTheme_alertDialogTheme 34
+int styleable AppCompatTheme_android_windowAnimationStyle 35
+int styleable AppCompatTheme_android_windowIsFloating 36
+int styleable AppCompatTheme_autoCompleteTextViewStyle 37
+int styleable AppCompatTheme_borderlessButtonStyle 38
+int styleable AppCompatTheme_buttonBarButtonStyle 39
+int styleable AppCompatTheme_buttonBarNegativeButtonStyle 40
+int styleable AppCompatTheme_buttonBarNeutralButtonStyle 41
+int styleable AppCompatTheme_buttonBarPositiveButtonStyle 42
+int styleable AppCompatTheme_buttonBarStyle 43
+int styleable AppCompatTheme_buttonStyle 44
+int styleable AppCompatTheme_buttonStyleSmall 45
+int styleable AppCompatTheme_checkboxStyle 46
+int styleable AppCompatTheme_checkedTextViewStyle 47
+int styleable AppCompatTheme_colorAccent 48
+int styleable AppCompatTheme_colorBackgroundFloating 49
+int styleable AppCompatTheme_colorButtonNormal 50
+int styleable AppCompatTheme_colorControlActivated 51
+int styleable AppCompatTheme_colorControlHighlight 52
+int styleable AppCompatTheme_colorControlNormal 53
+int styleable AppCompatTheme_colorError 54
+int styleable AppCompatTheme_colorPrimary 55
+int styleable AppCompatTheme_colorPrimaryDark 56
+int styleable AppCompatTheme_colorSwitchThumbNormal 57
+int styleable AppCompatTheme_controlBackground 58
+int styleable AppCompatTheme_dialogPreferredPadding 59
+int styleable AppCompatTheme_dialogTheme 60
+int styleable AppCompatTheme_dividerHorizontal 61
+int styleable AppCompatTheme_dividerVertical 62
+int styleable AppCompatTheme_dropDownListViewStyle 63
+int styleable AppCompatTheme_dropdownListPreferredItemHeight 64
+int styleable AppCompatTheme_editTextBackground 65
+int styleable AppCompatTheme_editTextColor 66
+int styleable AppCompatTheme_editTextStyle 67
+int styleable AppCompatTheme_homeAsUpIndicator 68
+int styleable AppCompatTheme_imageButtonStyle 69
+int styleable AppCompatTheme_listChoiceBackgroundIndicator 70
+int styleable AppCompatTheme_listDividerAlertDialog 71
+int styleable AppCompatTheme_listMenuViewStyle 72
+int styleable AppCompatTheme_listPopupWindowStyle 73
+int styleable AppCompatTheme_listPreferredItemHeight 74
+int styleable AppCompatTheme_listPreferredItemHeightLarge 75
+int styleable AppCompatTheme_listPreferredItemHeightSmall 76
+int styleable AppCompatTheme_listPreferredItemPaddingLeft 77
+int styleable AppCompatTheme_listPreferredItemPaddingRight 78
+int styleable AppCompatTheme_panelBackground 79
+int styleable AppCompatTheme_panelMenuListTheme 80
+int styleable AppCompatTheme_panelMenuListWidth 81
+int styleable AppCompatTheme_popupMenuStyle 82
+int styleable AppCompatTheme_popupWindowStyle 83
+int styleable AppCompatTheme_radioButtonStyle 84
+int styleable AppCompatTheme_ratingBarStyle 85
+int styleable AppCompatTheme_ratingBarStyleIndicator 86
+int styleable AppCompatTheme_ratingBarStyleSmall 87
+int styleable AppCompatTheme_searchViewStyle 88
+int styleable AppCompatTheme_seekBarStyle 89
+int styleable AppCompatTheme_selectableItemBackground 90
+int styleable AppCompatTheme_selectableItemBackgroundBorderless 91
+int styleable AppCompatTheme_spinnerDropDownItemStyle 92
+int styleable AppCompatTheme_spinnerStyle 93
+int styleable AppCompatTheme_switchStyle 94
+int styleable AppCompatTheme_textAppearanceLargePopupMenu 95
+int styleable AppCompatTheme_textAppearanceListItem 96
+int styleable AppCompatTheme_textAppearanceListItemSecondary 97
+int styleable AppCompatTheme_textAppearanceListItemSmall 98
+int styleable AppCompatTheme_textAppearancePopupMenuHeader 99
+int styleable AppCompatTheme_textAppearanceSearchResultSubtitle 100
+int styleable AppCompatTheme_textAppearanceSearchResultTitle 101
+int styleable AppCompatTheme_textAppearanceSmallPopupMenu 102
+int styleable AppCompatTheme_textColorAlertDialogListItem 103
+int styleable AppCompatTheme_textColorSearchUrl 104
+int styleable AppCompatTheme_toolbarNavigationButtonStyle 105
+int styleable AppCompatTheme_toolbarStyle 106
+int styleable AppCompatTheme_tooltipForegroundColor 107
+int styleable AppCompatTheme_tooltipFrameBackground 108
+int styleable AppCompatTheme_viewInflaterClass 109
+int styleable AppCompatTheme_windowActionBar 110
+int styleable AppCompatTheme_windowActionBarOverlay 111
+int styleable AppCompatTheme_windowActionModeOverlay 112
+int styleable AppCompatTheme_windowFixedHeightMajor 113
+int styleable AppCompatTheme_windowFixedHeightMinor 114
+int styleable AppCompatTheme_windowFixedWidthMajor 115
+int styleable AppCompatTheme_windowFixedWidthMinor 116
+int styleable AppCompatTheme_windowMinWidthMajor 117
+int styleable AppCompatTheme_windowMinWidthMinor 118
+int styleable AppCompatTheme_windowNoTitle 119
+int[] styleable ButtonBarLayout { 0x7f040027 }
+int styleable ButtonBarLayout_allowStacking 0
+int[] styleable ColorStateListItem { 0x7f040028, 0x101031f, 0x10101a5 }
+int styleable ColorStateListItem_alpha 0
+int styleable ColorStateListItem_android_alpha 1
+int styleable ColorStateListItem_android_color 2
+int[] styleable CompoundButton { 0x1010107, 0x7f040043, 0x7f040044 }
+int styleable CompoundButton_android_button 0
+int styleable CompoundButton_buttonTint 1
+int styleable CompoundButton_buttonTintMode 2
+int[] styleable CoordinatorLayout { 0x7f04008b, 0x7f0400cc }
+int styleable CoordinatorLayout_keylines 0
+int styleable CoordinatorLayout_statusBarBackground 1
+int[] styleable CoordinatorLayout_Layout { 0x10100b3, 0x7f04008d, 0x7f04008e, 0x7f04008f, 0x7f040090, 0x7f040091, 0x7f040092 }
+int styleable CoordinatorLayout_Layout_android_layout_gravity 0
+int styleable CoordinatorLayout_Layout_layout_anchor 1
+int styleable CoordinatorLayout_Layout_layout_anchorGravity 2
+int styleable CoordinatorLayout_Layout_layout_behavior 3
+int styleable CoordinatorLayout_Layout_layout_dodgeInsetEdges 4
+int styleable CoordinatorLayout_Layout_layout_insetEdge 5
+int styleable CoordinatorLayout_Layout_layout_keyline 6
+int[] styleable DrawerArrowToggle { 0x7f04002a, 0x7f04002b, 0x7f040037, 0x7f04004b, 0x7f040069, 0x7f04007c, 0x7f0400c6, 0x7f0400e4 }
+int styleable DrawerArrowToggle_arrowHeadLength 0
+int styleable DrawerArrowToggle_arrowShaftLength 1
+int styleable DrawerArrowToggle_barLength 2
+int styleable DrawerArrowToggle_color 3
+int styleable DrawerArrowToggle_drawableSize 4
+int styleable DrawerArrowToggle_gapBetweenBars 5
+int styleable DrawerArrowToggle_spinBars 6
+int styleable DrawerArrowToggle_thickness 7
+int[] styleable FontFamily { 0x7f040074, 0x7f040075, 0x7f040076, 0x7f040077, 0x7f040078, 0x7f040079 }
+int styleable FontFamily_fontProviderAuthority 0
+int styleable FontFamily_fontProviderCerts 1
+int styleable FontFamily_fontProviderFetchStrategy 2
+int styleable FontFamily_fontProviderFetchTimeout 3
+int styleable FontFamily_fontProviderPackage 4
+int styleable FontFamily_fontProviderQuery 5
+int[] styleable FontFamilyFont { 0x1010532, 0x101053f, 0x1010533, 0x7f040072, 0x7f04007a, 0x7f04007b }
+int styleable FontFamilyFont_android_font 0
+int styleable FontFamilyFont_android_fontStyle 1
+int styleable FontFamilyFont_android_fontWeight 2
+int styleable FontFamilyFont_font 3
+int styleable FontFamilyFont_fontStyle 4
+int styleable FontFamilyFont_fontWeight 5
+int[] styleable LinearLayoutCompat { 0x1010126, 0x1010127, 0x10100af, 0x10100c4, 0x1010128, 0x7f040065, 0x7f040067, 0x7f0400a1, 0x7f0400c2 }
+int styleable LinearLayoutCompat_android_baselineAligned 0
+int styleable LinearLayoutCompat_android_baselineAlignedChildIndex 1
+int styleable LinearLayoutCompat_android_gravity 2
+int styleable LinearLayoutCompat_android_orientation 3
+int styleable LinearLayoutCompat_android_weightSum 4
+int styleable LinearLayoutCompat_divider 5
+int styleable LinearLayoutCompat_dividerPadding 6
+int styleable LinearLayoutCompat_measureWithLargestChild 7
+int styleable LinearLayoutCompat_showDividers 8
+int[] styleable LinearLayoutCompat_Layout { 0x10100b3, 0x10100f5, 0x1010181, 0x10100f4 }
+int styleable LinearLayoutCompat_Layout_android_layout_gravity 0
+int styleable LinearLayoutCompat_Layout_android_layout_height 1
+int styleable LinearLayoutCompat_Layout_android_layout_weight 2
+int styleable LinearLayoutCompat_Layout_android_layout_width 3
+int[] styleable ListPopupWindow { 0x10102ac, 0x10102ad }
+int styleable ListPopupWindow_android_dropDownHorizontalOffset 0
+int styleable ListPopupWindow_android_dropDownVerticalOffset 1
+int[] styleable MenuGroup { 0x10101e0, 0x101000e, 0x10100d0, 0x10101de, 0x10101df, 0x1010194 }
+int styleable MenuGroup_android_checkableBehavior 0
+int styleable MenuGroup_android_enabled 1
+int styleable MenuGroup_android_id 2
+int styleable MenuGroup_android_menuCategory 3
+int styleable MenuGroup_android_orderInCategory 4
+int styleable MenuGroup_android_visible 5
+int[] styleable MenuItem { 0x7f04000e, 0x7f040020, 0x7f040021, 0x7f040029, 0x10101e3, 0x10101e5, 0x1010106, 0x101000e, 0x1010002, 0x10100d0, 0x10101de, 0x10101e4, 0x101026f, 0x10101df, 0x10101e1, 0x10101e2, 0x1010194, 0x7f040057, 0x7f040083, 0x7f040084, 0x7f0400a6, 0x7f0400c1, 0x7f0400fb }
+int styleable MenuItem_actionLayout 0
+int styleable MenuItem_actionProviderClass 1
+int styleable MenuItem_actionViewClass 2
+int styleable MenuItem_alphabeticModifiers 3
+int styleable MenuItem_android_alphabeticShortcut 4
+int styleable MenuItem_android_checkable 5
+int styleable MenuItem_android_checked 6
+int styleable MenuItem_android_enabled 7
+int styleable MenuItem_android_icon 8
+int styleable MenuItem_android_id 9
+int styleable MenuItem_android_menuCategory 10
+int styleable MenuItem_android_numericShortcut 11
+int styleable MenuItem_android_onClick 12
+int styleable MenuItem_android_orderInCategory 13
+int styleable MenuItem_android_title 14
+int styleable MenuItem_android_titleCondensed 15
+int styleable MenuItem_android_visible 16
+int styleable MenuItem_contentDescription 17
+int styleable MenuItem_iconTint 18
+int styleable MenuItem_iconTintMode 19
+int styleable MenuItem_numericModifiers 20
+int styleable MenuItem_showAsAction 21
+int styleable MenuItem_tooltipText 22
+int[] styleable MenuView { 0x101012f, 0x101012d, 0x1010130, 0x1010131, 0x101012c, 0x101012e, 0x10100ae, 0x7f0400b2, 0x7f0400cd }
+int styleable MenuView_android_headerBackground 0
+int styleable MenuView_android_horizontalDivider 1
+int styleable MenuView_android_itemBackground 2
+int styleable MenuView_android_itemIconDisabledAlpha 3
+int styleable MenuView_android_itemTextAppearance 4
+int styleable MenuView_android_verticalDivider 5
+int styleable MenuView_android_windowAnimationStyle 6
+int styleable MenuView_preserveIconSpacing 7
+int styleable MenuView_subMenuArrow 8
+int[] styleable PopupWindow { 0x10102c9, 0x1010176, 0x7f0400a7 }
+int styleable PopupWindow_android_popupAnimationStyle 0
+int styleable PopupWindow_android_popupBackground 1
+int styleable PopupWindow_overlapAnchor 2
+int[] styleable PopupWindowBackgroundState { 0x7f0400cb }
+int styleable PopupWindowBackgroundState_state_above_anchor 0
+int[] styleable RecycleListView { 0x7f0400a8, 0x7f0400ab }
+int styleable RecycleListView_paddingBottomNoButtons 0
+int styleable RecycleListView_paddingTopNoTitle 1
+int[] styleable SearchView { 0x10100da, 0x1010264, 0x1010220, 0x101011f, 0x7f040047, 0x7f040056, 0x7f040061, 0x7f04007d, 0x7f040085, 0x7f04008c, 0x7f0400b5, 0x7f0400b6, 0x7f0400bb, 0x7f0400bc, 0x7f0400ce, 0x7f0400d3, 0x7f040100 }
+int styleable SearchView_android_focusable 0
+int styleable SearchView_android_imeOptions 1
+int styleable SearchView_android_inputType 2
+int styleable SearchView_android_maxWidth 3
+int styleable SearchView_closeIcon 4
+int styleable SearchView_commitIcon 5
+int styleable SearchView_defaultQueryHint 6
+int styleable SearchView_goIcon 7
+int styleable SearchView_iconifiedByDefault 8
+int styleable SearchView_layout 9
+int styleable SearchView_queryBackground 10
+int styleable SearchView_queryHint 11
+int styleable SearchView_searchHintIcon 12
+int styleable SearchView_searchIcon 13
+int styleable SearchView_submitBackground 14
+int styleable SearchView_suggestionRowLayout 15
+int styleable SearchView_voiceIcon 16
+int[] styleable Spinner { 0x1010262, 0x10100b2, 0x1010176, 0x101017b, 0x7f0400b0 }
+int styleable Spinner_android_dropDownWidth 0
+int styleable Spinner_android_entries 1
+int styleable Spinner_android_popupBackground 2
+int styleable Spinner_android_prompt 3
+int styleable Spinner_popupTheme 4
+int[] styleable SwitchCompat { 0x1010125, 0x1010124, 0x1010142, 0x7f0400c3, 0x7f0400c9, 0x7f0400d4, 0x7f0400d5, 0x7f0400d7, 0x7f0400e5, 0x7f0400e6, 0x7f0400e7, 0x7f0400fc, 0x7f0400fd, 0x7f0400fe }
+int styleable SwitchCompat_android_textOff 0
+int styleable SwitchCompat_android_textOn 1
+int styleable SwitchCompat_android_thumb 2
+int styleable SwitchCompat_showText 3
+int styleable SwitchCompat_splitTrack 4
+int styleable SwitchCompat_switchMinWidth 5
+int styleable SwitchCompat_switchPadding 6
+int styleable SwitchCompat_switchTextAppearance 7
+int styleable SwitchCompat_thumbTextPadding 8
+int styleable SwitchCompat_thumbTint 9
+int styleable SwitchCompat_thumbTintMode 10
+int styleable SwitchCompat_track 11
+int styleable SwitchCompat_trackTint 12
+int styleable SwitchCompat_trackTintMode 13
+int[] styleable TextAppearance { 0x10103ac, 0x1010161, 0x1010162, 0x1010163, 0x1010164, 0x1010098, 0x101009a, 0x101009b, 0x1010095, 0x1010097, 0x1010096, 0x7f040073, 0x7f0400d8 }
+int styleable TextAppearance_android_fontFamily 0
+int styleable TextAppearance_android_shadowColor 1
+int styleable TextAppearance_android_shadowDx 2
+int styleable TextAppearance_android_shadowDy 3
+int styleable TextAppearance_android_shadowRadius 4
+int styleable TextAppearance_android_textColor 5
+int styleable TextAppearance_android_textColorHint 6
+int styleable TextAppearance_android_textColorLink 7
+int styleable TextAppearance_android_textSize 8
+int styleable TextAppearance_android_textStyle 9
+int styleable TextAppearance_android_typeface 10
+int styleable TextAppearance_fontFamily 11
+int styleable TextAppearance_textAllCaps 12
+int[] styleable Toolbar { 0x10100af, 0x1010140, 0x7f04003e, 0x7f040049, 0x7f04004a, 0x7f040058, 0x7f040059, 0x7f04005a, 0x7f04005b, 0x7f04005c, 0x7f04005d, 0x7f04009e, 0x7f04009f, 0x7f0400a0, 0x7f0400a3, 0x7f0400a4, 0x7f0400b0, 0x7f0400cf, 0x7f0400d0, 0x7f0400d1, 0x7f0400ed, 0x7f0400ee, 0x7f0400ef, 0x7f0400f0, 0x7f0400f1, 0x7f0400f2, 0x7f0400f3, 0x7f0400f4, 0x7f0400f5 }
+int styleable Toolbar_android_gravity 0
+int styleable Toolbar_android_minHeight 1
+int styleable Toolbar_buttonGravity 2
+int styleable Toolbar_collapseContentDescription 3
+int styleable Toolbar_collapseIcon 4
+int styleable Toolbar_contentInsetEnd 5
+int styleable Toolbar_contentInsetEndWithActions 6
+int styleable Toolbar_contentInsetLeft 7
+int styleable Toolbar_contentInsetRight 8
+int styleable Toolbar_contentInsetStart 9
+int styleable Toolbar_contentInsetStartWithNavigation 10
+int styleable Toolbar_logo 11
+int styleable Toolbar_logoDescription 12
+int styleable Toolbar_maxButtonHeight 13
+int styleable Toolbar_navigationContentDescription 14
+int styleable Toolbar_navigationIcon 15
+int styleable Toolbar_popupTheme 16
+int styleable Toolbar_subtitle 17
+int styleable Toolbar_subtitleTextAppearance 18
+int styleable Toolbar_subtitleTextColor 19
+int styleable Toolbar_title 20
+int styleable Toolbar_titleMargin 21
+int styleable Toolbar_titleMarginBottom 22
+int styleable Toolbar_titleMarginEnd 23
+int styleable Toolbar_titleMarginStart 24
+int styleable Toolbar_titleMarginTop 25
+int styleable Toolbar_titleMargins 26
+int styleable Toolbar_titleTextAppearance 27
+int styleable Toolbar_titleTextColor 28
+int[] styleable View { 0x10100da, 0x1010000, 0x7f0400a9, 0x7f0400aa, 0x7f0400e3 }
+int styleable View_android_focusable 0
+int styleable View_android_theme 1
+int styleable View_paddingEnd 2
+int styleable View_paddingStart 3
+int styleable View_theme 4
+int[] styleable ViewBackgroundHelper { 0x10100d4, 0x7f040035, 0x7f040036 }
+int styleable ViewBackgroundHelper_android_background 0
+int styleable ViewBackgroundHelper_backgroundTint 1
+int styleable ViewBackgroundHelper_backgroundTintMode 2
+int[] styleable ViewStubCompat { 0x10100d0, 0x10100f3, 0x10100f2 }
+int styleable ViewStubCompat_android_id 0
+int styleable ViewStubCompat_android_inflatedId 1
+int styleable ViewStubCompat_android_layout 2

+ 1 - 0
ApexDrivers/racameralib/build/intermediates/transforms/mergeJniLibs/debug/__content__.json

@@ -0,0 +1 @@
+[{"name":"resources","index":0,"scopes":["PROJECT"],"types":["NATIVE_LIBS"],"format":"DIRECTORY","present":false}]

+ 63 - 0
ApexDrivers/racameralib/build/outputs/logs/manifest-merger-debug-report.txt

@@ -0,0 +1,63 @@
+-- Merging decision tree log ---
+manifest
+ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:1:1-25:12
+INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:1:1-25:12
+INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:1:1-25:12
+INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:1:1-25:12
+INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:1:1-25:12
+INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:1:1-25:12
+INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:1:1-25:12
+	package
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:2:11-48
+		INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+		INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+	android:versionName
+		INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:1:1-25:12
+		INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+	android:versionCode
+		INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:1:1-25:12
+		INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+	xmlns:android
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:1:11-69
+uses-permission#android.permission.CAMERA
+ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:4:5-64
+	android:name
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:4:22-62
+uses-feature#android.hardware.camera.autofocus
+ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:6:5-69
+	android:name
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:6:19-67
+uses-permission#android.permission.WRITE_EXTERNAL_STORAGE
+ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:8:5-80
+	android:name
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:8:22-78
+uses-permission#android.permission.RECORD_AUDIO
+ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:10:5-71
+	android:name
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:10:22-68
+application
+ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:13:5-23:19
+activity#redant.usai.com.racameralib.camera.CameraActivity
+ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:15:9-21:20
+	android:screenOrientation
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:17:13-49
+	android:theme
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:18:13-71
+	android:name
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml:16:13-50
+uses-sdk
+INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml reason: use-sdk injection requested
+INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+	android:targetSdkVersion
+		INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+		INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+	android:minSdkVersion
+		INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+		ADDED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml
+		INJECTED from /Users/macmini1/android project/RACamera/racameralib/src/main/AndroidManifest.xml

+ 21 - 0
ApexDrivers/racameralib/proguard-rules.pro

@@ -0,0 +1,21 @@
+# Add project specific ProGuard rules here.
+# You can control the set of applied configuration files using the
+# proguardFiles setting in build.gradle.
+#
+# For more details, see
+#   http://developer.android.com/guide/developing/tools/proguard.html
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+#   public *;
+#}
+
+# Uncomment this to preserve the line number information for
+# debugging stack traces.
+#-keepattributes SourceFile,LineNumberTable
+
+# If you keep the line number information, uncomment this to
+# hide the original source file name.
+#-renamesourcefileattribute SourceFile

+ 141 - 0
ApexDrivers/racameralib/racameralib.iml

@@ -0,0 +1,141 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module external.linked.project.id=":racameralib" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" type="JAVA_MODULE" version="4">
+  <component name="FacetManager">
+    <facet type="android-gradle" name="Android-Gradle">
+      <configuration>
+        <option name="GRADLE_PROJECT_PATH" value=":racameralib" />
+      </configuration>
+    </facet>
+    <facet type="android" name="Android">
+      <configuration>
+        <option name="SELECTED_BUILD_VARIANT" value="debug" />
+        <option name="ASSEMBLE_TASK_NAME" value="assembleDebug" />
+        <option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" />
+        <afterSyncTasks>
+          <task>generateDebugSources</task>
+        </afterSyncTasks>
+        <option name="ALLOW_USER_CONFIGURATION" value="false" />
+        <option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" />
+        <option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" />
+        <option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res" />
+        <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
+        <option name="PROJECT_TYPE" value="1" />
+      </configuration>
+    </facet>
+  </component>
+  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7">
+    <output url="file://$MODULE_DIR$/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes" />
+    <output-test url="file://$MODULE_DIR$/build/intermediates/javac/debugUnitTest/compileDebugUnitTestJavaWithJavac/classes" />
+    <exclude-output />
+    <content url="file://$MODULE_DIR$">
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/debug" isTestSource="false" generated="true" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debug/compileDebugAidl/out" isTestSource="false" generated="true" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debug/compileDebugRenderscript/out" isTestSource="false" generated="true" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/debug" type="java-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/debug" isTestSource="true" generated="true" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debugAndroidTest/compileDebugAndroidTestAidl/out" isTestSource="true" generated="true" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/debug" isTestSource="true" generated="true" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debugAndroidTest/compileDebugAndroidTestRenderscript/out" isTestSource="true" generated="true" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/test/debug" isTestSource="true" generated="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src/debug/shaders" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/res" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/resources" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/assets" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/aidl" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/java" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/rs" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/shaders" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/res" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/resources" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/assets" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/aidl" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/java" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/rs" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/shaders" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/main/res" type="java-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/main/assets" type="java-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
+      <excludeFolder url="file://$MODULE_DIR$/build/generated/not_namespaced_r_class_sources" />
+      <excludeFolder url="file://$MODULE_DIR$/build/generated/source/r" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/aapt_friendly_merged_manifests" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/annotation_processor_list" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/check_manifest_result" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/compile_only_not_namespaced_r_class_jar" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/full_jar" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/intermediate-jars" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/javac" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/library_assets" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/library_manifest" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint_jar" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_manifests" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/packaged_res" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/public_res" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/shader_assets" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
+      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
+      <excludeFolder url="file://$MODULE_DIR$/build/outputs" />
+      <excludeFolder url="file://$MODULE_DIR$/build/tmp" />
+    </content>
+    <orderEntry type="jdk" jdkName="Android API 27 Platform" jdkType="Android SDK" />
+    <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="library" name="Gradle: com.android.support:support-vector-drawable:27.1.1@aar" level="project" />
+    <orderEntry type="library" name="Gradle: com.android.support:support-core-utils:27.1.1@aar" level="project" />
+    <orderEntry type="library" name="Gradle: android.arch.lifecycle:livedata-core:1.1.0@aar" level="project" />
+    <orderEntry type="library" name="Gradle: android.arch.lifecycle:runtime:1.1.0@aar" level="project" />
+    <orderEntry type="library" name="Gradle: android.arch.lifecycle:common:1.1.0@jar" level="project" />
+    <orderEntry type="library" name="Gradle: com.android.support:support-annotations:27.1.1@jar" level="project" />
+    <orderEntry type="library" name="Gradle: android.arch.lifecycle:viewmodel:1.1.0@aar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: com.android.support.test.espresso:espresso-idling-resource:3.0.2@aar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: com.android.support.test:runner:1.0.2@aar" level="project" />
+    <orderEntry type="library" name="Gradle: android.arch.core:runtime:1.1.0@aar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: com.squareup:javawriter:2.1.1@jar" level="project" />
+    <orderEntry type="library" name="Gradle: com.android.support:animated-vector-drawable:27.1.1@aar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: com.android.support.test.espresso:espresso-core:3.0.2@aar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: com.google.code.findbugs:jsr305:2.0.1@jar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: javax.inject:javax.inject:1@jar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: junit:junit:4.12@jar" level="project" />
+    <orderEntry type="library" name="Gradle: com.android.support:support-core-ui:27.1.1@aar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: org.hamcrest:hamcrest-core:1.3@jar" level="project" />
+    <orderEntry type="library" name="Gradle: com.android.support:support-compat:27.1.1@aar" level="project" />
+    <orderEntry type="library" name="Gradle: com.android.support:support-fragment:27.1.1@aar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: com.android.support.test:monitor:1.0.2@aar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: org.hamcrest:hamcrest-library:1.3@jar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: org.hamcrest:hamcrest-integration:1.3@jar" level="project" />
+    <orderEntry type="library" name="Gradle: com.android.support:appcompat-v7:27.1.1@aar" level="project" />
+    <orderEntry type="library" name="Gradle: android.arch.core:common:1.1.0@jar" level="project" />
+    <orderEntry type="library" scope="TEST" name="Gradle: net.sf.kxml:kxml2:2.3.0@jar" level="project" />
+  </component>
+</module>

+ 26 - 0
ApexDrivers/racameralib/src/androidTest/java/redant/usai/com/racameralib/ExampleInstrumentedTest.java

@@ -0,0 +1,26 @@
+package redant.usai.com.racameralib;
+
+import android.content.Context;
+import android.support.test.InstrumentationRegistry;
+import android.support.test.runner.AndroidJUnit4;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import static org.junit.Assert.*;
+
+/**
+ * Instrumented test, which will execute on an Android device.
+ *
+ * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
+ */
+@RunWith(AndroidJUnit4.class)
+public class ExampleInstrumentedTest {
+    @Test
+    public void useAppContext() {
+        // Context of the app under test.
+        Context appContext = InstrumentationRegistry.getTargetContext();
+
+        assertEquals("redant.usai.com.racameralib.test", appContext.getPackageName());
+    }
+}

+ 25 - 0
ApexDrivers/racameralib/src/main/AndroidManifest.xml

@@ -0,0 +1,25 @@
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+          package="redant.usai.com.racameralib">
+
+    <uses-permission android:name="android.permission.CAMERA"/>
+
+    <uses-feature android:name="android.hardware.camera.autofocus"/>
+
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
+
+    <uses-permission android:name="android.permission.RECORD_AUDIO" />
+
+
+    <application>
+
+        <activity
+            android:name=".camera.CameraActivity"
+            android:screenOrientation="portrait"
+            android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
+            >
+
+        </activity>
+
+    </application>
+
+</manifest>

+ 317 - 0
ApexDrivers/racameralib/src/main/java/redant/usai/com/racameralib/camera/CameraActivity.java

@@ -0,0 +1,317 @@
+package redant.usai.com.racameralib.camera;
+
+import android.app.Activity;
+import android.content.Intent;
+import android.media.MediaRecorder;
+import android.os.Bundle;
+import android.util.Log;
+import android.view.View;
+import android.widget.ImageButton;
+import android.widget.TextView;
+
+import java.util.Date;
+import java.util.Timer;
+import java.util.TimerTask;
+
+import redant.usai.com.racameralib.R;
+
+import static android.content.ContentValues.TAG;
+
+public class CameraActivity extends Activity {
+
+    private static final String CAMERA_PICTURE_DIR_KEY = "CAMERA_PICTURE_DIR_KEY";
+    private static final String CAMERA_VIDEO_DIR_KEY = "CAMERA_VIDEO_DIR_KEY";
+
+    private static final String SDCARD = "/sdcard";
+
+    public static Intent buildCameraActivity(Activity activity, String pictureDir, String videoDir) {
+        if (activity != null) {
+
+            Intent intent = new Intent(activity, CameraActivity.class);
+            if (pictureDir == null) {
+                pictureDir = SDCARD;
+            }
+            if (videoDir == null) {
+                videoDir = SDCARD;
+            }
+
+            intent.putExtra(CAMERA_PICTURE_DIR_KEY, pictureDir);
+            intent.putExtra(CAMERA_VIDEO_DIR_KEY, videoDir);
+
+            return intent;
+        }
+        return null;
+    }
+
+
+    private ImageButton takeBtn;
+    private ImageButton modeSwitchBtn;
+    private ImageButton cameraSwitchBtn;
+    private CameraSurfaceView surfaceView;
+    private TextView timerTv;
+
+    private long  mRecordSeconds;
+    private Timer mRecordTimer;
+    private TimerTask mRecordTimerTask;
+
+    // region Timer
+
+    private void startTimer() {
+        mRecordTimer = new Timer();
+        mRecordTimerTask = new TimerTask() {
+            @Override
+            public void run() {
+                if (timerTv != null) {
+                    mRecordSeconds++;
+                    long second = mRecordSeconds % 60;
+                    long minute = mRecordSeconds / 60;
+                    final String time = String.format("%02d:%02d",minute,second);
+                    runOnUiThread(new Runnable() {
+                        @Override
+                        public void run() {
+                            timerTv.setText(time);
+                        }
+                    });
+                }
+            }
+        };
+        mRecordTimer.schedule(mRecordTimerTask, new Date(),1000);
+        if (timerTv != null) {
+            timerTv.setVisibility(View.VISIBLE);
+        }
+    }
+
+    private void stopTimer() {
+        if (mRecordTimer != null) {
+            mRecordTimer.cancel();
+            mRecordTimer = null;
+            mRecordTimerTask.cancel();
+            mRecordTimerTask = null;
+        }
+        if (timerTv != null) {
+            timerTv.setText("");
+            timerTv.setVisibility(View.GONE);
+        }
+        mRecordSeconds = 0;
+    }
+
+    // endregion
+
+    // region Override
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.camera_activity);
+
+        setup(savedInstanceState);
+    }
+
+    @Override
+    protected void onSaveInstanceState(Bundle outState) {
+        super.onSaveInstanceState(outState);
+
+        outState.putString(CAMERA_PICTURE_DIR_KEY, surfaceView.getPictureDir());
+        outState.putString(CAMERA_VIDEO_DIR_KEY, surfaceView.getVideoDir());
+    }
+
+    @Override
+    protected void onStop() {
+        super.onStop();
+
+        surfaceView.stopPreview();
+
+    }
+
+    @Override
+    protected void onStart() {
+        super.onStart();
+
+        surfaceView.startPreview();
+    }
+
+
+    @Override
+    protected void onResume() {
+        super.onResume();
+
+        surfaceView.startPreview();
+    }
+
+    @Override
+    protected void onPause() {
+        super.onPause();
+
+        surfaceView.stopPreview();
+    }
+
+    @Override
+    protected void onRestart() {
+        super.onRestart();
+
+        surfaceView.startPreview();
+    }
+
+    // end region
+
+    // region Setup
+
+    private void setup(Bundle savedInstanceState) {
+
+        modeSwitchBtn = (ImageButton)findViewById(R.id.cameraModeSwitchBtn);
+        takeBtn = (ImageButton)findViewById(R.id.takePhotoBtn);
+        cameraSwitchBtn = (ImageButton)findViewById(R.id.cameraSwitchBtn);
+        timerTv = (TextView)findViewById(R.id.timer_tv);
+
+        String picDir, videoDir;
+        if (savedInstanceState != null) {
+
+            picDir = savedInstanceState.getString(CAMERA_PICTURE_DIR_KEY);
+            videoDir = savedInstanceState.getString(CAMERA_VIDEO_DIR_KEY);
+        } else {
+            Intent intent = getIntent();
+            picDir = intent.getStringExtra(CAMERA_PICTURE_DIR_KEY);
+            videoDir = intent.getStringExtra(CAMERA_VIDEO_DIR_KEY);
+        }
+
+        if (picDir == null) {
+            picDir = SDCARD;
+        }
+        if (videoDir == null) {
+            videoDir = SDCARD;
+        }
+
+        surfaceView = (CameraSurfaceView)findViewById(R.id.cameraSurfaceView);
+        surfaceView.setup(picDir, videoDir, new CameraSurfaceView.CameraEventListener() {
+            @Override
+            public void cameraDidChangedToRecordVideo() {
+
+                modeSwitchBtn.setImageDrawable(getResources().getDrawable(R.drawable.photo_mode));
+                takeBtn.setImageDrawable(getResources().getDrawable(R.drawable.start_record));
+            }
+
+            @Override
+            public void cameraDidChangedToTakePicture() {
+
+                modeSwitchBtn.setImageDrawable(getResources().getDrawable(R.drawable.record_mode));
+                takeBtn.setImageDrawable(getResources().getDrawable(R.drawable.take_photo));
+            }
+
+            @Override
+            public void cameraDidChanged(boolean isFront) {
+
+            }
+
+            @Override
+            public void cameraDidStartRecordVideo() {
+
+                startTimer();
+                takeBtn.setImageDrawable(getResources().getDrawable(R.drawable.stop_record));
+            }
+
+            @Override
+            public void cameraDidStopRecordVideo() {
+
+                stopTimer();
+                takeBtn.setImageDrawable(getResources().getDrawable(R.drawable.start_record));
+            }
+
+            @Override
+            public void cameraDidTakePicture() {
+
+            }
+
+            @Override
+            public void cameraDidChangedFlashMode(int flashMode) {
+
+            }
+        });
+
+        surfaceView.errorHandler = new CameraSurfaceView.CameraErrorHandler() {
+            @Override
+            public void recordError(MediaRecorder mr) {
+                Log.d("Camera Record", "recordError: "+mr);
+            }
+
+            @Override
+            public void initCameraError(String error) {
+                Log.d("Camera init", "initCameraError: "+error);
+            }
+        };
+
+        modeSwitchBtn.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+
+                if (!surfaceView.isRecordVideo()) {
+
+                    surfaceView.switchToRecordVideo();
+
+                } else {
+
+                    surfaceView.switchToTakePhoto();
+                }
+            }
+        });
+
+
+        takeBtn.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+
+                if (surfaceView.isRecordVideo()) {
+
+                    if (surfaceView.isRecording()) {
+
+                        surfaceView.stopRecordVideo();
+
+
+                    } else  {
+                        surfaceView.recordVideo(new CameraSurfaceView.RecordVideoCallback() {
+                            @Override
+                            public void recordVideoCompletion(String path) {
+
+                                onVideoRecorded(path);
+                                Log.d(TAG, "recordVideoCompletion: " + path);
+                            }
+                        });
+
+                    }
+
+                } else {
+
+                    surfaceView.takePicture(new CameraSurfaceView.CaptureImageCallback() {
+                        @Override
+                        public void captureImageCompletion( byte[] data, String path) {
+
+                            onPictureTaken(path);
+                            Log.d(TAG, "captureImageCompletion: " + path);
+                        }
+                    });
+                }
+
+            }
+        });
+
+
+        cameraSwitchBtn.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                surfaceView.switchCamera();
+            }
+        });
+    }
+
+    private void onPictureTaken(String path) {
+
+        Intent intent = new Intent();
+        intent.putExtra("picturePath", path);
+        setResult(RESULT_OK, intent);
+        finish();
+    }
+
+    private void onVideoRecorded(String path) {
+
+    }
+
+    // endregion
+}

+ 764 - 0
ApexDrivers/racameralib/src/main/java/redant/usai/com/racameralib/camera/CameraSurfaceView.java

@@ -0,0 +1,764 @@
+package redant.usai.com.racameralib.camera;
+
+import android.content.Context;
+import android.graphics.ImageFormat;
+import android.hardware.Camera;
+import android.media.CamcorderProfile;
+import android.media.ExifInterface;
+import android.media.MediaRecorder;
+import android.util.AttributeSet;
+import android.util.DisplayMetrics;
+import android.util.Log;
+import android.view.SurfaceHolder;
+import android.view.SurfaceView;
+import android.view.WindowManager;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.List;
+
+
+public class CameraSurfaceView extends SurfaceView implements SurfaceHolder.Callback, Camera.AutoFocusCallback, MediaRecorder.OnErrorListener {
+
+
+    // region Callback && Const
+    public interface CaptureImageCallback {
+        void captureImageCompletion(byte[] data, String path);
+    }
+
+    public interface RecordVideoCallback {
+        void recordVideoCompletion(String path);
+    }
+
+    public interface CameraErrorHandler {
+        void recordError(MediaRecorder mr);
+        void initCameraError(String error);
+    }
+
+    public interface CameraEventListener {
+
+        void cameraDidChangedToRecordVideo();
+        void cameraDidChangedToTakePicture();
+        void cameraDidChanged(boolean isFront);
+        void cameraDidStartRecordVideo();
+        void cameraDidStopRecordVideo();
+        void cameraDidTakePicture();
+        void cameraDidChangedFlashMode(int flashMode);
+    }
+
+    // endregion
+
+    // region Property
+
+    private Context mCtx;
+    private SurfaceHolder mHolder;
+    private Camera mCamera;
+    private MediaRecorder recorder;
+    private int mCameraID;
+
+    private int mScreenWidth;
+    private int mScreenHeight;
+
+    public CameraErrorHandler errorHandler;
+    private int flashMode;
+
+    private boolean isRecordVideo; // record mode
+    private boolean isRecording; // recording
+    private boolean isFront;
+
+    private String pictureDir;
+    private String videoDir;
+
+    private RecordVideoCallback mVidCallback;
+    private String mVidPath;
+
+    private CameraEventListener mListener;
+
+    // endregion
+
+    // region Getter
+
+    public boolean isRecordVideo() {
+        return isRecordVideo;
+    }
+
+    public boolean isRecording() {
+        return isRecording;
+    }
+
+    public boolean isFront() {
+        return isFront;
+    }
+
+    public String getPictureDir() {
+        return pictureDir;
+    }
+
+    public String getVideoDir() {
+        return videoDir;
+    }
+
+    // endregion
+
+    // region Construction
+    public CameraSurfaceView(Context context) {
+        this(context,null);
+    }
+
+    public CameraSurfaceView(Context ctx, AttributeSet attrs) {
+        this(ctx,attrs,0);
+    }
+
+    public CameraSurfaceView(Context ctx, AttributeSet attrs, int defStyleAttr) {
+        super(ctx,attrs,defStyleAttr);
+        isRecordVideo = false;
+        mCtx = ctx;
+        getScreenMetrix(ctx);
+        initView();
+        setFlashMode(0);
+    }
+    // endregion
+
+    // region Preview
+    public void startPreview() {
+        if (mCamera != null) {
+            mCamera.startPreview();
+        } else  {
+            initView(); // 从Preview返回时
+        }
+    }
+
+    public void stopPreview() {
+        if (mCamera != null) {
+            mCamera.stopPreview();
+        }
+    }
+
+    // endregion
+
+    // region Initial
+
+    public void setup(String picDir, String vidDir, CameraEventListener listener) {
+        pictureDir = picDir;
+        videoDir = vidDir;
+        mListener = listener;
+    }
+
+    private void getScreenMetrix(Context ctx) {
+        WindowManager windowManager = (WindowManager)ctx.getSystemService(Context.WINDOW_SERVICE);
+        DisplayMetrics metrics = new DisplayMetrics();
+        windowManager.getDefaultDisplay().getMetrics(metrics);
+        mScreenWidth = metrics.widthPixels;
+        mScreenHeight = metrics.heightPixels;
+    }
+
+    private void initView() {
+        mHolder = getHolder();
+        mHolder.addCallback(this);
+        mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
+    }
+
+    public void freeResource() {
+
+        releaseRecorder();
+
+        releaseCamera();
+
+        releaseHolder();
+    }
+
+    private void releaseRecorder() {
+
+        if (recorder != null) {
+            stopRecordVideo();
+            recorder.release();
+            recorder = null;
+        }
+    }
+
+    private void releaseCamera() {
+
+        if (mCamera != null) {
+            mCamera.stopPreview();
+            mCamera.release();
+        }
+        mCamera = null;
+    }
+
+    private void releaseHolder() {
+
+        if (mHolder != null) {
+            mHolder.addCallback(null);
+            mHolder = null;
+        }
+    }
+
+    private void resetResource() {
+        freeResource();
+        initView();
+    }
+
+    // endregion
+
+    // region Switch Mode
+
+    public void switchToRecordVideo() {
+        isRecordVideo = true;
+        initRecorder();
+        if (mListener != null) {
+            mListener.cameraDidChangedToRecordVideo();
+        }
+    }
+
+    public void switchToTakePhoto() {
+        isRecordVideo = false;
+        releaseRecorder();
+        if (mListener != null) {
+            mListener.cameraDidChangedToTakePicture();
+        }
+    }
+
+    public void switchCamera() {
+        switchCamera(!isFront);
+    }
+
+    private void switchCamera(boolean isSwitchFront) {
+
+        if (isSwitchFront == isFront) {
+            return;
+        }
+
+        int cameraCount = Camera.getNumberOfCameras();
+        if (cameraCount <= 1) {
+            return;
+        }
+
+        resetResource();
+
+        mCamera = openCamera(isSwitchFront);
+        if (mCamera == null) {
+            return;
+        }
+
+        startCameraPreview();
+
+        if (mListener != null) {
+            mListener.cameraDidChanged(isFront);
+        }
+
+        if (isRecordVideo) {
+            switchToRecordVideo();
+        }
+
+    }
+
+    private void startCameraPreview() {
+
+        try {
+            setCameraParams(mCamera,getWidth(),getHeight());
+            mCamera.setPreviewDisplay(mHolder); // 通过surfaceview显示取景画面
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        mCamera.startPreview();//开始预览
+    }
+
+    private Camera openCamera(boolean isSwitchFront) {
+
+        int cameraCount = Camera.getNumberOfCameras();
+        Camera.CameraInfo cameraInfo = new Camera.CameraInfo();
+        Camera camera = null;
+        for (int i = 0; i < cameraCount; i++) {
+            Camera.getCameraInfo(i, cameraInfo);
+            if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT && isSwitchFront) {//获取前置摄像头
+                camera = Camera.open(i);
+                isFront = true;
+                mCameraID = i;
+                break;
+            } else if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_BACK && !isSwitchFront) {//获取后置摄像头
+                camera = Camera.open(i);
+                isFront = false;
+                mCameraID = i;
+                break;
+            }
+        }
+
+        if (camera == null) {
+
+            if (isSwitchFront) {
+                if (errorHandler != null) {
+                    errorHandler.initCameraError("Can't open front camera");
+                }
+            } else {
+                if (errorHandler != null) {
+                    errorHandler.initCameraError("Can't open back camera");
+                }
+            }
+        }
+
+        return camera;
+    }
+
+    // endregion
+
+    // region Setting
+    public void setFlashMode(int flashMode) {
+        if (this.flashMode == flashMode) {
+            return;
+        }
+        if (mCamera == null) {
+            return;
+        }
+
+        this.flashMode = flashMode;
+        Camera.Parameters params = mCamera.getParameters();
+        List<String> flashModes =  params.getSupportedFlashModes();
+        switch (flashMode) {
+            case -1: {
+                if (flashModes != null && flashModes.contains(Camera.Parameters.FLASH_MODE_OFF)) {
+                    params.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
+                }
+            }
+            break;
+            case 0: {
+                if (flashModes != null && flashModes.contains(Camera.Parameters.FLASH_MODE_AUTO)) {
+                    params.setFlashMode(Camera.Parameters.FLASH_MODE_AUTO);
+                }
+            }
+            break;
+            case 1: {
+                if (flashModes != null && flashModes.contains(Camera.Parameters.FLASH_MODE_ON)) {
+                    params.setFlashMode(Camera.Parameters.FLASH_MODE_ON);
+                }
+            }
+            break;
+            default: {
+                if (flashModes != null && flashModes.contains(Camera.Parameters.FLASH_MODE_AUTO)) {
+                    params.setFlashMode(Camera.Parameters.FLASH_MODE_AUTO);
+                }
+            }
+        }
+        mCamera.setParameters(params);
+
+        if (mListener != null) {
+            mListener.cameraDidChangedFlashMode(flashMode);
+        }
+    }
+
+    // 宽高 是 surface view 的宽高
+    private void setCameraParams(Camera camera, int width, int height) {
+
+        // 相机Sensor坐标为手机右上角为圆点,向下为x轴正方形,向左为y轴正方形。
+        // 这与视图坐标系是相反的,而surface与sensor保持一致。
+
+        Camera.Parameters params = camera.getParameters();
+        // 获取摄像头支持的PictureSize列表
+        List<Camera.Size> pictureSizeList = params.getSupportedPictureSizes();
+        // 选取适合的分辨率
+        Camera.Size pictureSize = getPictureSize(pictureSizeList,height, width);
+        if (pictureSize == null) {
+            pictureSize = params.getPictureSize();
+        }
+        // 设置图片大小,Size不正确保存的图像清晰度就不够,或者程序崩溃。
+        params.setPictureSize(pictureSize.width,pictureSize.height);
+
+        // 获取摄像头支持的PreviewSize列表
+        List<Camera.Size> previewSizeList = params.getSupportedPreviewSizes();
+        Camera.Size previewSize = getPreviewSize(previewSizeList,width, height);
+        if (previewSize == null) {
+            previewSize = params.getPreviewSize();
+        }
+        if (previewSize != null) {
+            params.setPreviewSize(previewSize.width,previewSize.height);
+        }
+
+        // 设置照片质量
+        params.setJpegQuality(100);
+
+        // 设置聚焦
+        if (params.getSupportedFocusModes().contains(Camera.Parameters.FOCUS_MODE_AUTO)) {
+            params.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE); // 自动聚焦模式
+        }
+
+        // 设置白平衡
+        if (params.getSupportedWhiteBalance().contains(Camera.Parameters.WHITE_BALANCE_AUTO)) {
+            params.setWhiteBalance(Camera.Parameters.WHITE_BALANCE_AUTO);
+        }
+
+//        // 设置曝光
+//        if (params.isAutoExposureLockSupported()) {
+//            params.setAutoExposureLock(true);
+//        }
+
+        // 设置Flash
+        List<String> flashModes =  params.getSupportedFlashModes();
+        if (flashModes != null && flashModes.contains(Camera.Parameters.FLASH_MODE_AUTO)) {
+            params.setFlashMode(Camera.Parameters.FLASH_MODE_AUTO);
+        }
+
+        // 设置图片保存格式
+        params.setPictureFormat(ImageFormat.JPEG);
+        camera.setDisplayOrientation(90); // 保持竖屏
+        camera.setParameters(params);
+        camera.cancelAutoFocus();
+
+    }
+
+    private void sortSizeList(List<Camera.Size> sizeList) {
+
+        Collections.sort(sizeList, new Comparator<Camera.Size>() {
+            @Override
+            public int compare(Camera.Size o1, Camera.Size o2) {
+
+                if (o1.width > o2.width) {
+
+                    return -1;
+                } else if (o1.height > o2.height) {
+
+                    return -1;
+                }
+
+                return 1;
+            }
+        });
+    }
+
+    private Camera.Size getPictureSize(List<Camera.Size> pictureSizeList, int w, int h) {
+
+        sortSizeList(pictureSizeList);
+        return pictureSizeList.get(0);
+    }
+
+    private Camera.Size getVideoSize(List<Camera.Size> videoSizeList, int w, int h) {
+
+        sortSizeList(videoSizeList);
+        return videoSizeList.get(0);
+    }
+
+    // w h 取 surface view的宽高
+    private Camera.Size getPreviewSize(List<Camera.Size> pictureSizeList, int w, int h) {
+
+        sortSizeList(pictureSizeList);
+
+        final double ASPECT_TOLERANCE = 0.1;
+        double targetRatio = (double) h / w; // 由于保持竖屏,所以使用 h / w,横屏 w / h
+        if (pictureSizeList == null) return null;
+
+        Camera.Size optimalSize = null;
+        double minDiff = Double.MAX_VALUE;
+
+        int targetHeight = h;
+
+        // Try to find an size match aspect ratio and size
+        for (Camera.Size size : pictureSizeList) {
+            double ratio = (double) size.width / size.height;
+            if (Math.abs(ratio - targetRatio) > ASPECT_TOLERANCE) continue;
+            if (Math.abs(size.height - targetHeight) < minDiff) {
+                optimalSize = size;
+                minDiff = Math.abs(size.height - targetHeight);
+            }
+        }
+
+        // Cannot find the one match the aspect ratio, ignore the requirement
+        if (optimalSize == null) {
+            minDiff = Double.MAX_VALUE;
+            for (Camera.Size size : pictureSizeList) {
+                if (Math.abs(size.height - targetHeight) < minDiff) {
+                    optimalSize = size;
+                    minDiff = Math.abs(size.height - targetHeight);
+                }
+            }
+        }
+        return optimalSize;
+    }
+
+    // endregion
+
+    // region Override
+
+    @Override
+    public void surfaceCreated(SurfaceHolder holder) {
+        if (mCamera == null) {
+//            mCamera = Camera.open();
+//            isFront = false;
+
+            mCamera = openCamera(false);
+            if (mCamera == null) {
+//                // 后置摄像头打不开
+//                if (errorHandler != null) {
+//                    errorHandler.initCameraError("Can't open back camera");
+//                }
+                return;
+            }
+
+        }
+        try {
+            mCamera.setPreviewDisplay(mHolder);
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+    }
+
+    @Override
+    public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
+        setCameraParams(mCamera,getWidth(),getHeight());
+        mCamera.startPreview();
+
+    }
+
+    @Override
+    public void surfaceDestroyed(SurfaceHolder holder) {
+        freeResource();
+    }
+
+    @Override
+    public void onAutoFocus(boolean success, android.hardware.Camera camera) {
+        if (success) {
+            Log.d("CameraSurfaceView", "onAutoFocus: success" + success);
+        }
+    }
+
+    @Override
+    public void onError(MediaRecorder mr, int what, int extra) {
+        Log.d("Media Error", "onError: " + mr);
+        if (errorHandler != null) {
+            errorHandler.recordError(mr);
+        }
+    }
+
+    // endregion
+
+    // region Take Picture
+
+    public void takePicture(final CaptureImageCallback callback) {
+
+        mCamera.takePicture(null, null, new Camera.PictureCallback() {
+            @Override
+            public void onPictureTaken(byte[] data, Camera camera) {
+                dealWithCameraData(data, callback);
+                if (mListener != null) {
+                    mListener.cameraDidTakePicture();
+                }
+            }
+        });
+
+    }
+
+
+    private void dealWithCameraData(byte[] data, CaptureImageCallback callback) {
+        if (data == null) {
+            if (callback != null) {
+                callback.captureImageCompletion(null, null);
+            }
+            return;
+        }
+
+        if (pictureDir == null) {
+            if (callback != null) {
+
+                // 调用camera.takePiture方法后,camera关闭了预览,这时需要调用startPreview()来重新开启预览。
+                // 如果不再次开启预览,则会一直停留在拍摄照片画面。
+                mCamera.stopPreview();
+                mCamera.startPreview();
+
+                callback.captureImageCompletion(data, null);
+            }
+            return;
+        }
+
+        File dirF = new File(pictureDir);
+        if (!dirF.exists()) {
+            dirF.mkdirs();
+        }
+
+        String date = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
+        String pictureName = String.format("IMG_%s.jpg",date);
+        File picF = new File(dirF, pictureName);
+
+        if (picF != null) {
+
+            // 保存的相片仍然是摄像头成像,需要做旋转。前置摄像头翻转270,后翻转90
+//            Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length);
+//            Matrix matrix = new Matrix();
+//            if (isFront) {
+//                matrix.postRotate(270);
+//            } else {
+//                matrix.postRotate(90);
+//            }
+//            bitmap = Bitmap.createBitmap(bitmap,0,0,bitmap.getWidth(),bitmap.getHeight(),matrix,true);
+
+            int rotate = 90;
+            if (isFront) {
+                rotate = 270;
+            } else {
+                rotate = 90;
+            }
+
+            FileOutputStream fos = null;
+            try {
+
+                fos = new FileOutputStream(picF);
+                fos.write(data);
+                fos.flush();
+                fos.close();
+
+                setPictureOrientation(picF.getAbsolutePath(), rotate);// 旋转图片,调整方向
+
+                if (callback != null) {
+                    callback.captureImageCompletion(data, picF.getAbsolutePath());
+                }
+
+            } catch (IOException e) {
+                e.printStackTrace();
+
+                if (callback != null) {
+                    callback.captureImageCompletion(data, null);
+                }
+
+            } finally {
+                try {
+
+                    fos.flush();
+                    fos.close();
+//                    bitmap.recycle(); // 回收bitmap空间
+
+                    // 调用camera.takePiture方法后,camera关闭了预览,这时需要调用startPreview()来重新开启预览。
+                    // 如果不再次开启预览,则会一直停留在拍摄照片画面。
+                    mCamera.stopPreview();
+                    mCamera.startPreview();
+
+
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+    }
+
+
+    private static void setPictureOrientation(String path, int orientation) {
+        try {
+            ExifInterface exifInterface = new ExifInterface(path);
+            // 修正图片的旋转角度,设置其不旋转。这里也可以设置其旋转的角度,可以传值过去,
+            // 例如旋转90度,传值ExifInterface.ORIENTATION_ROTATE_90,需要将这个值转换为String类型的
+            int rotate = ExifInterface.ORIENTATION_ROTATE_90;
+            if (orientation == 90) {
+                rotate = ExifInterface.ORIENTATION_ROTATE_90;
+            } else if (orientation == 270) {
+                rotate = ExifInterface.ORIENTATION_ROTATE_270;
+            }
+            exifInterface.setAttribute(ExifInterface.TAG_ORIENTATION, String.valueOf(rotate));
+            exifInterface.saveAttributes();
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+    }
+
+    // endregion
+
+
+    // region Record Video
+    private void initRecorder() {
+        if (recorder != null) {
+            recorder.release();
+            recorder = null;
+        }
+        recorder = new MediaRecorder(); // Create MediaRecorder
+
+        // Step 1: Unlock and set camera to MediaRecorder
+        recorder.setCamera(mCamera);
+
+        // Step 2: Set sources
+        recorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
+        recorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
+
+        // Step 3: Set a CamcorderProfile (requires API Level 8 or higher)
+        // 注意这里,最好和预览设置的尺寸保持一直,否则录制时的视频会出现放大或缩小的情况
+        recorder.setProfile(CamcorderProfile.get(mCameraID, CamcorderProfile.QUALITY_1080P));
+
+        // Step 4: Set the preview output
+        recorder.setPreviewDisplay(mHolder.getSurface());
+
+        // Orientation
+        if (isFront) {
+            recorder.setOrientationHint(270);
+        } else {
+            recorder.setOrientationHint(90);
+        }
+    }
+
+    private File createVideoFile() {
+
+        File dirF = new File(videoDir);
+        if (!dirF.exists()) {
+            dirF.mkdirs();
+        }
+
+        String date = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
+        String pictureName = String.format("VID_%s.mp4",date);
+        File vidF = new File(dirF, pictureName);
+
+        return vidF;
+    }
+
+    public void recordVideo(RecordVideoCallback callback) {
+        if (isRecording) {
+            return;
+        }
+
+        File vidF = createVideoFile();
+        mVidPath = vidF.getAbsolutePath();
+
+        try {
+            mCamera.unlock();
+            recorder.setOutputFile(mVidPath);
+            recorder.prepare();
+            recorder.start();
+            isRecording = true;
+
+            mVidCallback = callback;
+
+            if (mListener != null) {
+                mListener.cameraDidStartRecordVideo();
+            }
+
+            Log.d("Record", "recordVideo: ");
+        } catch (Exception e) {
+            e.printStackTrace();
+            mVidCallback = null;
+            mVidPath = null;
+            mCamera.lock();
+        }
+    }
+
+    public void stopRecordVideo() {
+        if (recorder != null && isRecording) {
+            recorder.stop();
+            isRecording = false;
+            mCamera.lock();
+
+            if (mVidCallback != null) {
+                mVidCallback.recordVideoCompletion(mVidPath);
+            }
+
+            recorder.release();
+            recorder = null;
+
+            if (mListener != null) {
+                mListener.cameraDidStopRecordVideo();
+            }
+
+            Log.d("Record", "stopRecordVideo: ");
+        }
+        mVidCallback = null;
+        mVidPath = null;
+
+        initRecorder();
+    }
+    // endregion
+}

BIN
ApexDrivers/racameralib/src/main/res/drawable-hdpi/camera_switch.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-hdpi/photo_mode.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-hdpi/record_mode.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-hdpi/start_record.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-hdpi/stop_record.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-hdpi/take_photo.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-mdpi/camera_switch.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-mdpi/photo_mode.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-mdpi/record_mode.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-mdpi/start_record.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-mdpi/stop_record.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-mdpi/take_photo.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xhdpi/camera_switch.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xhdpi/photo_mode.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xhdpi/record_mode.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xhdpi/start_record.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xhdpi/stop_record.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xhdpi/take_photo.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/camera_switch.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/photo_mode.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/record_mode.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/start_record.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/stop_record.png


BIN
ApexDrivers/racameralib/src/main/res/drawable-xxhdpi/take_photo.png


+ 81 - 0
ApexDrivers/racameralib/src/main/res/layout/camera_activity.xml

@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<FrameLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    tools:context=".camera.CameraActivity">
+
+    <redant.usai.com.racameralib.camera.CameraSurfaceView
+        android:id="@+id/cameraSurfaceView"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        />
+
+    <RelativeLayout
+        android:id="@+id/camera_control_view"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:background="#00000000"
+        >
+
+        <TextView
+            android:id="@+id/timer_tv"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_centerHorizontal="true"
+            android:layout_margin="10dp"
+            android:textSize="14sp"
+            android:textColor="#ffffff"
+            android:textAlignment="center"
+            android:visibility="gone"
+            />
+
+        <RelativeLayout
+            android:id="@+id/controlView"
+            android:layout_width="match_parent"
+            android:layout_height="100dp"
+            android:background="#00000000"
+            android:layout_alignParentBottom="true"
+            >
+
+            <ImageButton
+                android:id="@+id/cameraModeSwitchBtn"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_centerVertical="true"
+                android:layout_marginStart="20dp"
+                android:layout_marginLeft="20dp"
+                android:src="@drawable/record_mode"
+                android:background="#00000000"
+                />
+
+            <ImageButton
+                android:id="@+id/takePhotoBtn"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_centerInParent="true"
+                android:src="@drawable/take_photo"
+                android:background="#00000000"
+                />
+
+            <ImageButton
+                android:id="@+id/cameraSwitchBtn"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_centerVertical="true"
+                android:layout_marginEnd="20dp"
+                android:layout_marginRight="20dp"
+                android:layout_alignParentRight="true"
+                android:src="@drawable/camera_switch"
+                android:background="#00000000"
+                />
+
+        </RelativeLayout>
+
+    </RelativeLayout>
+
+
+
+</FrameLayout>

+ 3 - 0
ApexDrivers/racameralib/src/main/res/values/strings.xml

@@ -0,0 +1,3 @@
+<resources>
+    <string name="app_name">RACameraLib</string>
+</resources>

+ 17 - 0
ApexDrivers/racameralib/src/test/java/redant/usai/com/racameralib/ExampleUnitTest.java

@@ -0,0 +1,17 @@
+package redant.usai.com.racameralib;
+
+import org.junit.Test;
+
+import static org.junit.Assert.*;
+
+/**
+ * Example local unit test, which will execute on the development machine (host).
+ *
+ * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
+ */
+public class ExampleUnitTest {
+    @Test
+    public void addition_isCorrect() {
+        assertEquals(4, 2 + 2);
+    }
+}

Bu fark içinde çok fazla dosya değişikliği olduğu için bazı dosyalar gösterilmiyor