wennjie 6 years ago
parent
commit
69745c5600
100 changed files with 283 additions and 165 deletions
  1. 27 9
      huiliaoAPP/android/app/build.gradle
  2. 3 0
      huiliaoAPP/android/app/src/main/AndroidManifest.xml
  3. 2 0
      huiliaoAPP/android/app/src/main/java/com/huiliaoapp/MainApplication.java
  4. BIN
      huiliaoAPP/android/app/src/main/res/drawable-hdpi/node_modules_reactnavigation_src_views_assets_backicon.png
  5. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_code.png
  6. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_codebg.png
  7. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_add.png
  8. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_addclick.png
  9. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_close.png
  10. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_code.png
  11. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_groupchaticon.png
  12. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_newfriendicon.png
  13. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_phone.png
  14. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_phonecall.png
  15. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_phoneclick.png
  16. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_scan.png
  17. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_search.png
  18. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_searchbg.png
  19. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_in.png
  20. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_bg.png
  21. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_line.png
  22. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_lock.png
  23. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_lockclick.png
  24. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_phone.png
  25. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_phoneclick.png
  26. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_message_add.png
  27. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_set.png
  28. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_icon.png
  29. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_mine.png
  30. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_mineclick.png
  31. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_news.png
  32. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_newsclick.png
  33. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_phone.png
  34. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_phoneclick.png
  35. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/node_modules_reactnativecamerarollpicker_circlecheck.png
  36. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/node_modules_reactnavigation_src_views_assets_backicon.png
  37. BIN
      huiliaoAPP/android/app/src/main/res/drawable-mdpi/node_modules_reactnavigation_src_views_assets_backiconmask.png
  38. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/assets_2x_return.png
  39. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_accordion_style_assets_down.png
  40. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_accordion_style_assets_up.png
  41. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_checkbox_image_checked.png
  42. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_checkbox_image_checked_disable.png
  43. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_checkbox_image_normal.png
  44. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_checkbox_image_normal_disable.png
  45. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_radio_image_checked.png
  46. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_radio_image_checked_disable.png
  47. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_arrow.png
  48. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_arrowdown.png
  49. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_arrowup.png
  50. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_check.png
  51. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_check_w.png
  52. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_cross.png
  53. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_cross_w.png
  54. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_error.png
  55. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_more.png
  56. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_more_w.png
  57. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_search.png
  58. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_toast_images_fail.png
  59. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_toast_images_offline.png
  60. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_toast_images_success.png
  61. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_reactnavigation_src_views_assets_backicon.png
  62. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_accordion_style_assets_down.png
  63. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_accordion_style_assets_up.png
  64. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_checkbox_image_checked.png
  65. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_checkbox_image_checked_disable.png
  66. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_checkbox_image_normal.png
  67. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_checkbox_image_normal_disable.png
  68. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_radio_image_checked.png
  69. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_radio_image_checked_disable.png
  70. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_arrow.png
  71. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_arrowdown.png
  72. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_arrowup.png
  73. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_check.png
  74. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_check_w.png
  75. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_cross.png
  76. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_cross_w.png
  77. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_error.png
  78. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_more.png
  79. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_more_w.png
  80. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_search.png
  81. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_toast_images_fail.png
  82. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_toast_images_offline.png
  83. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_toast_images_success.png
  84. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_reactnavigation_src_views_assets_backicon.png
  85. BIN
      huiliaoAPP/android/app/src/main/res/drawable-xxxhdpi/node_modules_reactnavigation_src_views_assets_backicon.png
  86. 2 1
      huiliaoAPP/android/build.gradle
  87. 2 1
      huiliaoAPP/android/gradle/wrapper/gradle-wrapper.properties
  88. 2 0
      huiliaoAPP/android/settings.gradle
  89. 46 0
      huiliaoAPP/ios/huiliaoAPP.xcodeproj/project.pbxproj
  90. 1 0
      huiliaoAPP/package.json
  91. 1 1
      huiliaoAPP/src/navigators/BottomTabNavigator.js
  92. 5 0
      huiliaoAPP/src/navigators/StackNavigator.js
  93. 1 1
      huiliaoAPP/src/navigators/SwitchNavigator.js
  94. 58 56
      huiliaoAPP/src/pages/Contact/AddFriend/index.js
  95. 29 29
      huiliaoAPP/src/pages/Contact/CheckValidation/index.js
  96. 26 25
      huiliaoAPP/src/pages/Contact/DetailedInfo/index.js
  97. 11 23
      huiliaoAPP/src/pages/Contact/FriendsValidation/index.js
  98. 10 19
      huiliaoAPP/src/pages/Contact/NewFriend/index.js
  99. 57 0
      huiliaoAPP/src/pages/Contact/QRScannerView/index.js
  100. 0 0
      huiliaoAPP/src/pages/Contact/QRScannerView/qr.js

+ 27 - 9
huiliaoAPP/android/app/build.gradle

@@ -94,10 +94,20 @@ def enableSeparateBuildPerCPUArchitecture = false
 def enableProguardInReleaseBuilds = false
 
 android {
+    signingConfigs {
+        reless {
+            keyAlias '/Users/wenjie/Desktop/'
+            keyPassword '871010'
+        }
+    }
+    lintOptions {
+        checkReleaseBuilds false
+        abortOnError false
+    }
     compileSdkVersion 27
     buildToolsVersion "27.0.3"
-
     defaultConfig {
+        multiDexEnabled true
         applicationId "com.huiliaoapp"
         minSdkVersion rootProject.ext.minSdkVersion
         targetSdkVersion 27
@@ -118,8 +128,9 @@ android {
     }
     buildTypes {
         release {
-            minifyEnabled enableProguardInReleaseBuilds
+//            minifyEnabled enableProguardInReleaseBuilds
             proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
+            minifyEnabled false
         }
     }
     // applicationVariants are e.g. debug, release
@@ -127,7 +138,7 @@ android {
         variant.outputs.each { output ->
             // For each separate APK per architecture, set a unique version code as described here:
             // http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits
-            def versionCodes = ["armeabi-v7a":1, "x86":2]
+            def versionCodes = ["armeabi-v7a": 1, "x86": 2]
             def abi = output.getFilter(OutputFile.ABI)
             if (abi != null) {  // null for the universal-debug, universal-release variants
                 output.versionCodeOverride =
@@ -138,12 +149,19 @@ android {
 }
 
 dependencies {
-    compile project(':react-native-contacts-wrapper')
-    compile project(':react-native-contacts-picker')
-    compile project(':react-native-image-crop-picker')
-    compile fileTree(dir: "libs", include: ["*.jar"])
-    compile "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
-    compile "com.facebook.react:react-native:+"  // From node_modules
+    implementation(project(':react-native-camera')) {
+        exclude group: "com.google.android.gms"
+    }
+    implementation('com.google.android.gms:play-services-vision:10.2.0') {
+        force = true;
+    }
+    implementation project(':react-native-contacts-wrapper')
+    implementation project(':react-native-contacts-picker')
+    implementation project(':react-native-image-crop-picker')
+    implementation fileTree(include: ['*.jar'], dir: 'libs')
+    implementation 'com.android.support:appcompat-v7:26.1.0'
+    implementation 'com.facebook.react:react-native:+'
+    // From node_modules
 }
 
 // Run this once to be able to run the application with BUCK

+ 3 - 0
huiliaoAPP/android/app/src/main/AndroidManifest.xml

@@ -7,6 +7,9 @@
     <uses-permission android:name="android.permission.READ_CONTACTS" />
     <uses-permission android:name="android.permission.WRITE_CONTACTS" />
     <uses-permission android:name="android.permission.GET_ACCOUNTS" />
+    <uses-permission android:name="android.permission.RECORD_AUDIO"/>
+    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
 
     <application
       android:name=".MainApplication"

+ 2 - 0
huiliaoAPP/android/app/src/main/java/com/huiliaoapp/MainApplication.java

@@ -3,6 +3,7 @@ package com.huiliaoapp;
 import android.app.Application;
 
 import com.facebook.react.ReactApplication;
+import org.reactnative.camera.RNCameraPackage;
 import com.lynxit.contactswrapper.ContactsWrapperPackage;
 import com.xb.contactpicker.ReactNativeContacts;
 import com.reactnative.ivpusic.imagepicker.PickerPackage;
@@ -26,6 +27,7 @@ public class MainApplication extends Application implements ReactApplication {
     protected List<ReactPackage> getPackages() {
       return Arrays.<ReactPackage>asList(
           new MainReactPackage(),
+            new RNCameraPackage(),
             new ContactsWrapperPackage(),
             new ReactNativeContacts(),
             new PickerPackage()

BIN
huiliaoAPP/android/app/src/main/res/drawable-hdpi/node_modules_reactnavigation_src_views_assets_backicon.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_code.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_codebg.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_add.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_addclick.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_close.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_code.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_groupchaticon.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_newfriendicon.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_phone.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_phonecall.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_phoneclick.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_scan.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_search.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_contact_searchbg.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_in.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_bg.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_line.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_lock.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_lockclick.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_phone.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_login_phoneclick.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_message_add.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_2x_set.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_icon.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_mine.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_mineclick.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_news.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_newsclick.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_phone.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/assets_tabicon_phoneclick.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/node_modules_reactnativecamerarollpicker_circlecheck.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/node_modules_reactnavigation_src_views_assets_backicon.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-mdpi/node_modules_reactnavigation_src_views_assets_backiconmask.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/assets_2x_return.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_accordion_style_assets_down.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_accordion_style_assets_up.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_checkbox_image_checked.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_checkbox_image_checked_disable.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_checkbox_image_normal.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_checkbox_image_normal_disable.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_radio_image_checked.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_radio_image_checked_disable.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_arrow.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_arrowdown.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_arrowup.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_check.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_check_w.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_cross.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_cross_w.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_error.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_more.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_more_w.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_style_images_search.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_toast_images_fail.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_toast_images_offline.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_antdmobilern_lib_toast_images_success.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xhdpi/node_modules_reactnavigation_src_views_assets_backicon.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_accordion_style_assets_down.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_accordion_style_assets_up.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_checkbox_image_checked.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_checkbox_image_checked_disable.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_checkbox_image_normal.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_checkbox_image_normal_disable.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_radio_image_checked.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_radio_image_checked_disable.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_arrow.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_arrowdown.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_arrowup.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_check.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_check_w.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_cross.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_cross_w.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_error.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_more.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_more_w.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_style_images_search.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_toast_images_fail.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_toast_images_offline.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_antdmobilern_lib_toast_images_success.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxhdpi/node_modules_reactnavigation_src_views_assets_backicon.png


BIN
huiliaoAPP/android/app/src/main/res/drawable-xxxhdpi/node_modules_reactnavigation_src_views_assets_backicon.png


+ 2 - 1
huiliaoAPP/android/build.gradle

@@ -7,9 +7,10 @@ buildscript {
             url 'https://maven.google.com/'
             name 'Google'
         }
+        google()
     }
     dependencies {
-        classpath 'com.android.tools.build:gradle:2.3.3'
+        classpath 'com.android.tools.build:gradle:3.1.2'
 
         // NOTE: Do not place your application dependencies here; they belong
         // in the individual module build.gradle files

+ 2 - 1
huiliaoAPP/android/gradle/wrapper/gradle-wrapper.properties

@@ -1,5 +1,6 @@
+#Tue Aug 28 11:19:47 CST 2018
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-3.5.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip

+ 2 - 0
huiliaoAPP/android/settings.gradle

@@ -1,4 +1,6 @@
 rootProject.name = 'huiliaoAPP'
+include ':react-native-camera'
+project(':react-native-camera').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-camera/android')
 include ':react-native-contacts-wrapper'
 project(':react-native-contacts-wrapper').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-contacts-wrapper/android/app')
 include ':react-native-contacts-picker'

+ 46 - 0
huiliaoAPP/ios/huiliaoAPP.xcodeproj/project.pbxproj

@@ -22,6 +22,7 @@
 		140ED2AC1D01E1AD002B40FF /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; };
 		146834051AC3E58100842450 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; };
 		22FA7E94BA01484D85CF4080 /* libRCTContactsWrapper.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F4E8CB53ED554B1CB24E57F9 /* libRCTContactsWrapper.a */; };
+		2C1F4425C44A495DB39A2CC3 /* libRNCamera.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2166474F6CB8470497E126B1 /* libRNCamera.a */; };
 		2D02E4BC1E0B4A80006451C7 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; };
 		2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
 		2D02E4C21E0B4AEC006451C7 /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E9157351DD0AC6500FF2AA8 /* libRCTAnimation.a */; };
@@ -327,6 +328,13 @@
 			remoteGlobalIDString = 2B58405A1D10DE8700235F31;
 			remoteInfo = RCTContactsWrapper;
 		};
+		AE81389C21351B160081B250 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 4209115BA512474B952551EB /* RNCamera.xcodeproj */;
+			proxyType = 2;
+			remoteGlobalIDString = 4107012F1ACB723B00C6AA39;
+			remoteInfo = RNCamera;
+		};
 		AE9332AB212FD00E00A82ECC /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = DDD93A23D5194D9E8D22AB47 /* imageCropPicker.xcodeproj */;
@@ -378,11 +386,13 @@
 		13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = huiliaoAPP/Info.plist; sourceTree = "<group>"; };
 		13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = huiliaoAPP/main.m; sourceTree = "<group>"; };
 		146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = "<group>"; };
+		2166474F6CB8470497E126B1 /* libRNCamera.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNCamera.a; sourceTree = "<group>"; };
 		268208B1EC93416CB5EA17A7 /* RNContactsPicker.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNContactsPicker.xcodeproj; path = "../node_modules/react-native-contacts-picker/ios/RNContactsPicker.xcodeproj"; sourceTree = "<group>"; };
 		2D02E47B1E0B4A5D006451C7 /* huiliaoAPP-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "huiliaoAPP-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; };
 		2D02E4901E0B4A5D006451C7 /* huiliaoAPP-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "huiliaoAPP-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
 		2D16E6891FA4F8E400B85C8A /* libReact.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libReact.a; sourceTree = BUILT_PRODUCTS_DIR; };
 		3B01B1EB32104611B4BD75FB /* libimageCropPicker.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libimageCropPicker.a; sourceTree = "<group>"; };
+		4209115BA512474B952551EB /* RNCamera.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNCamera.xcodeproj; path = "../node_modules/react-native-camera/ios/RNCamera.xcodeproj"; sourceTree = "<group>"; };
 		5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTAnimation.xcodeproj; path = "../node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj"; sourceTree = "<group>"; };
 		78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = "<group>"; };
 		79CCA97F54174204BA6D55E9 /* ContactsWrapper.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = ContactsWrapper.xcodeproj; path = "../node_modules/react-native-contacts-wrapper/ios/ContactsWrapper.xcodeproj"; sourceTree = "<group>"; };
@@ -426,6 +436,7 @@
 				AC0E38A9407146FD97D072A4 /* libimageCropPicker.a in Frameworks */,
 				3A467E62F5A64656A979023B /* libRNContactsPicker.a in Frameworks */,
 				22FA7E94BA01484D85CF4080 /* libRCTContactsWrapper.a in Frameworks */,
+				2C1F4425C44A495DB39A2CC3 /* libRNCamera.a in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -615,6 +626,7 @@
 				DDD93A23D5194D9E8D22AB47 /* imageCropPicker.xcodeproj */,
 				268208B1EC93416CB5EA17A7 /* RNContactsPicker.xcodeproj */,
 				79CCA97F54174204BA6D55E9 /* ContactsWrapper.xcodeproj */,
+				4209115BA512474B952551EB /* RNCamera.xcodeproj */,
 			);
 			name = Libraries;
 			sourceTree = "<group>";
@@ -673,12 +685,21 @@
 			name = Products;
 			sourceTree = "<group>";
 		};
+		AE81389921351B160081B250 /* Products */ = {
+			isa = PBXGroup;
+			children = (
+				AE81389D21351B160081B250 /* libRNCamera.a */,
+			);
+			name = Products;
+			sourceTree = "<group>";
+		};
 		AE933280212FD00D00A82ECC /* Recovered References */ = {
 			isa = PBXGroup;
 			children = (
 				3B01B1EB32104611B4BD75FB /* libimageCropPicker.a */,
 				B67DBD86D72F4F5596A86A19 /* libRNContactsPicker.a */,
 				F4E8CB53ED554B1CB24E57F9 /* libRCTContactsWrapper.a */,
+				2166474F6CB8470497E126B1 /* libRNCamera.a */,
 			);
 			name = "Recovered References";
 			sourceTree = "<group>";
@@ -871,6 +892,10 @@
 					ProjectRef = 146833FF1AC3E56700842450 /* React.xcodeproj */;
 				},
 				{
+					ProductGroup = AE81389921351B160081B250 /* Products */;
+					ProjectRef = 4209115BA512474B952551EB /* RNCamera.xcodeproj */;
+				},
+				{
 					ProductGroup = AEAADD0E213263FF00FED8AE /* Products */;
 					ProjectRef = 268208B1EC93416CB5EA17A7 /* RNContactsPicker.xcodeproj */;
 				},
@@ -1152,6 +1177,13 @@
 			remoteRef = AE3B4CFF2132995A006E0B16 /* PBXContainerItemProxy */;
 			sourceTree = BUILT_PRODUCTS_DIR;
 		};
+		AE81389D21351B160081B250 /* libRNCamera.a */ = {
+			isa = PBXReferenceProxy;
+			fileType = archive.ar;
+			path = libRNCamera.a;
+			remoteRef = AE81389C21351B160081B250 /* PBXContainerItemProxy */;
+			sourceTree = BUILT_PRODUCTS_DIR;
+		};
 		AE9332AC212FD00E00A82ECC /* libimageCropPicker.a */ = {
 			isa = PBXReferenceProxy;
 			fileType = archive.ar;
@@ -1308,6 +1340,7 @@
 					"$(SRCROOT)/../node_modules/react-native-image-crop-picker/ios/**",
 					"$(SRCROOT)/../node_modules/react-native-contacts-picker/ios/RNContactsPicker",
 					"$(SRCROOT)/../node_modules/react-native-contacts-wrapper/ios/RCTContactsWrapper",
+					"$(SRCROOT)/../node_modules/react-native-camera/ios/**",
 				);
 				INFOPLIST_FILE = huiliaoAPPTests/Info.plist;
 				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
@@ -1316,6 +1349,7 @@
 					"$(inherited)",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
+					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 				);
 				OTHER_LDFLAGS = (
 					"-ObjC",
@@ -1336,6 +1370,7 @@
 					"$(SRCROOT)/../node_modules/react-native-image-crop-picker/ios/**",
 					"$(SRCROOT)/../node_modules/react-native-contacts-picker/ios/RNContactsPicker",
 					"$(SRCROOT)/../node_modules/react-native-contacts-wrapper/ios/RCTContactsWrapper",
+					"$(SRCROOT)/../node_modules/react-native-camera/ios/**",
 				);
 				INFOPLIST_FILE = huiliaoAPPTests/Info.plist;
 				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
@@ -1344,6 +1379,7 @@
 					"$(inherited)",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
+					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 				);
 				OTHER_LDFLAGS = (
 					"-ObjC",
@@ -1367,6 +1403,7 @@
 					"$(SRCROOT)/../node_modules/react-native-image-crop-picker/ios/**",
 					"$(SRCROOT)/../node_modules/react-native-contacts-picker/ios/RNContactsPicker",
 					"$(SRCROOT)/../node_modules/react-native-contacts-wrapper/ios/RCTContactsWrapper",
+					"$(SRCROOT)/../node_modules/react-native-camera/ios/**",
 				);
 				INFOPLIST_FILE = huiliaoAPP/Info.plist;
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
@@ -1393,6 +1430,7 @@
 					"$(SRCROOT)/../node_modules/react-native-image-crop-picker/ios/**",
 					"$(SRCROOT)/../node_modules/react-native-contacts-picker/ios/RNContactsPicker",
 					"$(SRCROOT)/../node_modules/react-native-contacts-wrapper/ios/RCTContactsWrapper",
+					"$(SRCROOT)/../node_modules/react-native-camera/ios/**",
 				);
 				INFOPLIST_FILE = huiliaoAPP/Info.plist;
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
@@ -1424,6 +1462,7 @@
 					"$(SRCROOT)/../node_modules/react-native-image-crop-picker/ios/**",
 					"$(SRCROOT)/../node_modules/react-native-contacts-picker/ios/RNContactsPicker",
 					"$(SRCROOT)/../node_modules/react-native-contacts-wrapper/ios/RCTContactsWrapper",
+					"$(SRCROOT)/../node_modules/react-native-camera/ios/**",
 				);
 				INFOPLIST_FILE = "huiliaoAPP-tvOS/Info.plist";
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
@@ -1431,6 +1470,7 @@
 					"$(inherited)",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
+					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 				);
 				OTHER_LDFLAGS = (
 					"-ObjC",
@@ -1461,6 +1501,7 @@
 					"$(SRCROOT)/../node_modules/react-native-image-crop-picker/ios/**",
 					"$(SRCROOT)/../node_modules/react-native-contacts-picker/ios/RNContactsPicker",
 					"$(SRCROOT)/../node_modules/react-native-contacts-wrapper/ios/RCTContactsWrapper",
+					"$(SRCROOT)/../node_modules/react-native-camera/ios/**",
 				);
 				INFOPLIST_FILE = "huiliaoAPP-tvOS/Info.plist";
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
@@ -1468,6 +1509,7 @@
 					"$(inherited)",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
+					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 				);
 				OTHER_LDFLAGS = (
 					"-ObjC",
@@ -1497,6 +1539,7 @@
 					"$(SRCROOT)/../node_modules/react-native-image-crop-picker/ios/**",
 					"$(SRCROOT)/../node_modules/react-native-contacts-picker/ios/RNContactsPicker",
 					"$(SRCROOT)/../node_modules/react-native-contacts-wrapper/ios/RCTContactsWrapper",
+					"$(SRCROOT)/../node_modules/react-native-camera/ios/**",
 				);
 				INFOPLIST_FILE = "huiliaoAPP-tvOSTests/Info.plist";
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
@@ -1504,6 +1547,7 @@
 					"$(inherited)",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
+					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 				);
 				OTHER_LDFLAGS = (
 					"-ObjC",
@@ -1533,6 +1577,7 @@
 					"$(SRCROOT)/../node_modules/react-native-image-crop-picker/ios/**",
 					"$(SRCROOT)/../node_modules/react-native-contacts-picker/ios/RNContactsPicker",
 					"$(SRCROOT)/../node_modules/react-native-contacts-wrapper/ios/RCTContactsWrapper",
+					"$(SRCROOT)/../node_modules/react-native-camera/ios/**",
 				);
 				INFOPLIST_FILE = "huiliaoAPP-tvOSTests/Info.plist";
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
@@ -1540,6 +1585,7 @@
 					"$(inherited)",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 					"\"$(SRCROOT)/$(TARGET_NAME)\"",
+					"\"$(SRCROOT)/$(TARGET_NAME)\"",
 				);
 				OTHER_LDFLAGS = (
 					"-ObjC",

+ 1 - 0
huiliaoAPP/package.json

@@ -17,6 +17,7 @@
     "prop-types": "^15.5.10",
     "react": "16.4.1",
     "react-native": "0.56.0",
+    "react-native-camera": "^1.2.0",
     "react-native-contacts-picker": "^0.0.7",
     "react-native-contacts-wrapper": "^0.2.4",
     "react-native-filesystem": "^0.1.0",

+ 1 - 1
huiliaoAPP/src/navigators/BottomTabNavigator.js

@@ -66,7 +66,7 @@ const BottomTabNavigator = createBottomTabNavigator(
   {
     tabBarPosition: 'bottom',
     animationEnabled: false,
-    initialRouteName:'ContactTab',
+    initialRouteName:'MessageTab',
     tabBarOptions:{
       activeTintColor:'#1c8ff5',
       inactiveTintColor:'#828383',

+ 5 - 0
huiliaoAPP/src/navigators/StackNavigator.js

@@ -43,6 +43,9 @@ import DetailedInfo from '../pages/Contact/DetailedInfo'
 import FriendsValidation from '../pages/Contact/FriendsValidation'
 import NewFriend from '../pages/Contact/NewFriend'
 import Search from '../pages/Contact/Search'
+import QRScannerView from '../pages/Contact/QRScannerView'
+import CheckValidation from '../pages/Contact/CheckValidation'
+
 
 
 let  headerStyle={}
@@ -81,6 +84,8 @@ const StackNavigator = createStackNavigator({
   FriendsValidation:{screen:FriendsValidation},
   NewFriend:{screen:NewFriend},
   Search:{screen:Search},
+  QRScannerView:{screen:QRScannerView},
+  CheckValidation:{screen:CheckValidation},
   
 },{
   // headerMode: 'none', // 此参数设置不渲染顶部的导航条

+ 1 - 1
huiliaoAPP/src/navigators/SwitchNavigator.js

@@ -12,7 +12,7 @@ const SwitchNavigator = createSwitchNavigator({
   StackNavigator
 },
 {
-  initialRouteName:'StackNavigator'
+  initialRouteName:'Login'
 })
 
 

+ 58 - 56
huiliaoAPP/src/pages/Contact/AddFriend/index.js

@@ -1,8 +1,8 @@
 import React from 'react';
-import { Image, ScrollView, Alert ,StyleSheet, Text, View,TextInput } from 'react-native';
+import { Image, ScrollView, Alert ,StyleSheet, Text, View,TextInput ,TouchableOpacity} from 'react-native';
 import Button from 'antd-mobile-rn/lib/button';
 import { List,Switch,SearchBar } from 'antd-mobile-rn';
-
+import commonStyles from '../../../styles/styles'
 import {Icon,Device} from '../../../tool'
 
 const Item = List.Item;
@@ -26,8 +26,9 @@ export default class AddFriend extends React.Component {
   }
 
   render() {
+    const {navigation} =this.props
     return (
-      <View style={{backgroundColor:"#f0f0f0" }}>
+      <View style={commonStyles.page}>
         <View style={styles.searchBarWrap}>
           <View style={styles.serchWrap}>
              <Image style={styles.searchImg} source={Icon.Contact.search}/>
@@ -40,11 +41,19 @@ export default class AddFriend extends React.Component {
         </View>
         <View style={styles.idTitle}>
           <Text style={styles.idLabel}>我的ID号:12345</Text>
+          <TouchableOpacity onPress={()=>{
+            navigation.navigate({ routeName:"QrCode" })
+          }}>
           <Image style={styles.idEWM}  source={Icon.Contact.code}/>
+          </TouchableOpacity>
+          
         </View>
        
         <View style={styles.listWrap}>
-          <View style={styles.list}>
+        <TouchableOpacity onPress={()=>{
+          navigation.navigate({ routeName:"QRScannerView" })
+        }}>
+        <View style={styles.list}>
              <Image style={styles.scanImg} source={Icon.Contact.scan}/>
              <View style={styles.listTitle}>
                <Text style={styles.listOne}>扫一扫</Text>
@@ -52,6 +61,8 @@ export default class AddFriend extends React.Component {
              </View>
              <Image style={styles.inImg} source={Icon.in}/>
           </View>
+        </TouchableOpacity>
+          
           <View style={styles.list}>
              <Image style={styles.scanImg} source={Icon.Contact.phoneCall}/>
              <View style={styles.listTitle}>
@@ -67,72 +78,63 @@ export default class AddFriend extends React.Component {
 }
 
 const styles = StyleSheet.create({
-  view:{
-    backgroundColor:"#000",
-    height:50,
-  },
 
-  container: {
-    flex: 1,
-    backgroundColor: '#fff',
-    alignItems: 'center',
-    justifyContent: 'center',
-  },
+
   searchBarWrap:{
     backgroundColor:'#f0f0f0',
-    height:58,
+    height:Device.scale(58),
     // paddingLeft:8,
     // paddingRight:8,
     // paddingTop:11,
     // paddingBottom:11,
   },
   serchWrap:{
-    borderRadius:8,
-    height:36,
+    borderRadius:Device.scale(8),
+    height:Device.scale(36),
     backgroundColor:"#fff",
     flexDirection:"row",
     alignItems:"center",
-    marginBottom:11,
-    marginTop:11,
-    marginLeft:8,
-    marginRight:8,
+    marginBottom:Device.scale(11),
+    marginTop:Device.scale(11),
+    marginLeft:Device.scale(8),
+    marginRight:Device.scale(8),
   },
   searchImg:{
-    width:17,
-    height:17,
-     marginLeft:8,
-     marginRight:6,
+    width:Device.scale(17),
+    height:Device.scale(17),
+     marginLeft:Device.scale(8),
+     marginRight:Device.scale(6),
   },
   searchBar:{
-    width:320,
+    width:Device.scale(320),
     paddingBottom:0,
     padding:0,
-    height:36,
+    height:Device.scale(36),
   },
   idTitle:{
     flexDirection:"row",
     justifyContent:"center",
     alignItems:"center",
-    height:58,
-    paddingBottom:24
+    height:Device.scale(58),
+    paddingBottom:Device.scale(24)
   },
   idLabel:{
-    fontSize:10,
+    fontSize:Device.scale(10),
     color:"#9b9a9a",
-    paddingRight:5
+    paddingRight:Device.scale(5)
   },
   idEWM:{
-    width:17,
-    height:17,
+    width:Device.scale(17),
+    height:Device.scale(17),
   },
   phoneImg:{
-    width:23,
-    height:32,
-    marginBottom:8,
-    marginTop:23,
+    width:Device.scale(23),
+    height:Device.scale(32),
+    marginBottom:Device.scale(8),
+    marginTop:Device.scale(23),
   },
   phoneCont:{  
-    height:99,
+    height:Device.scale(99),
     backgroundColor:"#fff",
     flexDirection:"column",
     alignItems: 'center',
@@ -144,14 +146,14 @@ const styles = StyleSheet.create({
     borderBottomColor:"#d8d8d8",
   },
   labelName:{
-    fontSize:11,
+    fontSize:Device.scale(11),
     color:'#858484',
     
    
   },
   listWrap:{
-    paddingLeft:10,
-    marginTop:10,
+    paddingLeft:Device.scale(10),
+    marginTop:Device.scale(10),
     backgroundColor:"#FFF",
     borderBottomColor:"#e5e5e5",
     borderBottomWidth:1,
@@ -159,44 +161,44 @@ const styles = StyleSheet.create({
     borderTopWidth:1,
   },
   list:{
-    height:55,
+    height:Device.scale(55),
     borderBottomColor:"#e5e5e5",
     borderBottomWidth:1,
     flexDirection:"row",
     justifyContent:"center",
     alignItems:"center",
-    paddingRight:10,
+    paddingRight:Device.scale(10),
     },
   scanImg:{
-    width:38,
-    height:38,
+    width:Device.scale(38),
+    height:Device.scale(38),
   },
   inImg:{
-    width:9,
-    height:14,
+    width:Device.scale(9),
+    height:Device.scale(14),
   },
   listTitle:{
     flex:1,
-    paddingLeft:10,
+    paddingLeft:Device.scale(10),
   },
   listOne:{
-    fontSize:14,
+    fontSize:Device.scale(14),
     color:"#000",
   },
   listTwo:{
-    fontSize:10,
+    fontSize:Device.scale(10),
     color:"#000",
-    marginTop:8,
+    marginTop:Device.scale(8),
     opacity:0.6
   },
   isAdd:{
-    width:55,
-    height:26,
+    width:Device.scale(55),
+    height:Device.scale(26),
     backgroundColor:"#1bc3fa",
-    borderRadius:5,
-    fontSize:13,
+    borderRadius:Device.scale(5),
+    fontSize:Device.scale(13),
     color:"#fff",
-    lineHeight:26,
+    lineHeight:Device.scale(26),
     textAlign:"center"
   }
 });

+ 29 - 29
huiliaoAPP/src/pages/Contact/CheckValidation/index.js

@@ -2,7 +2,7 @@ import React from 'react';
 import { Image, ScrollView, Alert ,StyleSheet, Text, View,TextInput } from 'react-native';
 import { List,Switch,SearchBar,Button } from 'antd-mobile-rn';
 import {Icon,Device} from '../../../tool'
-
+import commonStyles from '../../../styles/styles'
 const Item = List.Item;
 const Brief = Item.Brief;
 
@@ -24,7 +24,7 @@ export default class App extends React.Component {
 
   render() {
     return (
-      <View style={{ marginTop: 30,backgroundColor:"#f0f0f0",flex:1 }}>
+      <View style={commonStyles.page}>
         <View style={styles.listWrap}>
            <Image style={styles.scanImg} source={Icon.Contact.code}/>
            <View style={styles.info}>
@@ -52,7 +52,7 @@ export default class App extends React.Component {
 const styles = StyleSheet.create({
   view:{
     backgroundColor:"#000",
-    height:50,
+    height:Device.scale(50),
   },
 
   container: {
@@ -62,8 +62,8 @@ const styles = StyleSheet.create({
     justifyContent: 'center',
   },
   listWrap:{
-    paddingLeft:10,
-    height:80,
+    paddingLeft:Device.scale(10),
+    height:Device.scale(80),
     backgroundColor:"#FFF",
     borderBottomColor:"#e5e5e5",
     borderBottomWidth:1,
@@ -75,53 +75,53 @@ const styles = StyleSheet.create({
   },
 
   scanImg:{
-    width:49,
-    height:49,
-    borderRadius:5,
-    marginLeft:10,
-    marginRight:12,
+    width:Device.scale(49),
+    height:Device.scale(49),
+    borderRadius:Device.scale(5),
+    marginLeft:Device.scale(10),
+    marginRight:Device.scale(12),
   },
   info:{
     flex:1
   },
   infoName:{
     color:"#000",
-    fontSize:16
+    fontSize:Device.scale(16)
   },
   infoId:{
     color:"#7e7e7e",
-    fontSize:14,
-    marginTop:13,
+    fontSize:Device.scale(14),
+    marginTop:Device.scale(13),
   },
   addTitle:{
-    marginLeft:15,
-    marginRight:15,
+    marginLeft:Device.scale(15),
+    marginRight:Device.scale(15),
     backgroundColor:"#1bc3fa",
-    height:40,
-    borderRadius:5,
+    height:Device.scale(40),
+    borderRadius:Device.scale(5),
   },
   addfriendBotton:{
     color:"#fff",
-    fontSize:17,
+    fontSize:Device.scale(17),
     textAlign:"center",
-    lineHeight:40,
+    lineHeight:Device.scale(40),
   },
   textWrap:{
-    paddingLeft:10,
-    paddingRight:10,
-    paddingTop:10,
-    paddingBottom:20,
+    paddingLeft:Device.scale(10),
+    paddingRight:Device.scale(10),
+    paddingTop:Device.scale(10),
+    paddingBottom:Device.scale(20),
   },
   input:{
-    borderRadius:5,
+    borderRadius:Device.scale(5),
     borderWidth:1,
     borderColor:"#cecece",
-    fontSize:13,
+    fontSize:Device.scale(13),
     color:"#333333",
-    paddingTop:5,
-    paddingLeft:10,
-    height:115,
-    lineHeight:23,
+    paddingTop:Device.scale(5),
+    paddingLeft:Device.scale(10),
+    height:Device.scale(115),
+    lineHeight:Device.scale(23),
   }
 
 });

+ 26 - 25
huiliaoAPP/src/pages/Contact/DetailedInfo/index.js

@@ -2,6 +2,7 @@ import React from 'react';
 import { Image, ScrollView, Alert ,StyleSheet, Text, View,TextInput } from 'react-native';
 import { List,Switch,SearchBar,Button } from 'antd-mobile-rn';
 import {Icon,Device} from '../../../tool'
+import commonStyles from '../../../styles/styles'
 
 const Item = List.Item;
 const Brief = Item.Brief;
@@ -27,7 +28,7 @@ export default class App extends React.Component {
     const {navigation } =this.props
 
     return (
-      <View style={{backgroundColor:"#f0f0f0",flex:1 }}>
+      <View style={commonStyles.page}>
         <View style={styles.listWrap}>
            <Image style={styles.scanImg} source={Icon.Contact.search}/>
            <View style={styles.info}>
@@ -62,8 +63,8 @@ export default class App extends React.Component {
 
 const styles = StyleSheet.create({
   listWrap:{
-    paddingLeft:10,
-    height:80,
+    paddingLeft:Device.scale(10),
+    height:Device.scale(80),
     backgroundColor:"#FFF",
     borderBottomColor:"#e5e5e5",
     borderBottomWidth:1,
@@ -75,52 +76,52 @@ const styles = StyleSheet.create({
   },
 
   scanImg:{
-    width:49,
-    height:49,
-    borderRadius:5,
-    marginLeft:10,
-    marginRight:12,
+    width:Device.scale(49),
+    height:Device.scale(49),
+    borderRadius:Device.scale(5),
+    marginLeft:Device.scale(10),
+    marginRight:Device.scale(12),
   },
   info:{
     flex:1
   },
   infoName:{
     color:"#000",
-    fontSize:16
+    fontSize:Device.scale(16)
   },
   infoId:{
     color:"#7e7e7e",
-    fontSize:14,
-    marginTop:13,
+    fontSize:Device.scale(14),
+    marginTop:Device.scale(13),
   },
   addTitle:{
-    marginLeft:15,
-    marginRight:15,
+    marginLeft:Device.scale(15),
+    marginRight:Device.scale(15),
     backgroundColor:"#1bc3fa",
-    height:40,
-    borderRadius:5,
-    marginTop:45,
-    marginBottom:11,
+    height:Device.scale(40),
+    borderRadius:Device.scale(5),
+    marginTop:Device.scale(45),
+    marginBottom:Device.scale(11),
   },
   addfriendBotton:{
     color:"#fff",
-    fontSize:17,
+    fontSize:Device.scale(17),
     textAlign:"center",
-    lineHeight:40,
+    lineHeight:Device.scale(40),
   },
   addTitle1:{
-    marginLeft:15,
-    marginRight:15,
+    marginLeft:Device.scale(15),
+    marginRight:Device.scale(15),
     backgroundColor:"#fff",
-    height:40,
-    borderRadius:5,
+    height:Device.scale(40),
+    borderRadius:Device.scale(5),
     borderWidth:1,
     borderColor:"#1bc3fa"
   },
   addfriendBotton1:{
     color:"#1ac5f8",
-    fontSize:17,
+    fontSize:Device.scale(17),
     textAlign:"center",
-    lineHeight:40,
+    lineHeight:Device.scale(40),
   },
 });

+ 11 - 23
huiliaoAPP/src/pages/Contact/FriendsValidation/index.js

@@ -1,7 +1,9 @@
 import React from 'react';
 import { Image, ScrollView, Alert ,StyleSheet, Text, View,TextInput,TouchableOpacity } from 'react-native';
 import { List,Switch,SearchBar,Button,InputItem } from 'antd-mobile-rn';
+import {Device} from '../../../tool'
 
+import commonStyles from '../../../styles/styles'
 
 
 const Item = List.Item;
@@ -19,8 +21,8 @@ export default class App extends React.Component {
   static navigationOptions ={
     title:'详细资料',
     headerRight:(
-      <TouchableOpacity style={{paddingRigth:11}}>
-        <Text style={{fontSize:15,marginRight:11,color:'#053a6b'}}>发送</Text>
+      <TouchableOpacity style={{paddingRigth:Device.scale(11)}}>
+        <Text style={{fontSize:Device.scale(15),marginRight:Device.scale(11),color:'#053a6b'}}>发送</Text>
       </TouchableOpacity>
     )
     
@@ -28,7 +30,7 @@ export default class App extends React.Component {
   render() {
    
     return (
-      <View style={{backgroundColor:"#f0f0f0",flex:1 }}>
+      <View style={commonStyles.page}>
         <View style={styles.label}>
           <Text style={styles.labelName}>你需要发送验证申请,等待对方通过</Text>
         </View>
@@ -53,38 +55,24 @@ export default class App extends React.Component {
 }
 
 const styles = StyleSheet.create({
-  view:{
-    backgroundColor:"#000",
-    height:50,
-  },
-
-  container: {
-    flex: 1,
-    backgroundColor: '#fff',
-    alignItems: 'center',
-    justifyContent: 'center',
-  },
   label:{
     flexDirection:"row",
-    height:35,
+    height:Device.scale(35),
     alignItems:"center",
     backgroundColor:"#f0f0f0"
   },
   labelName:{
-    fontSize:13,
+    fontSize:Device.scale(13),
     color:"#a7a7a7",
-    paddingLeft:11,
+    paddingLeft:Device.scale(11),
   },
   listWrap:{
-    height:50,
+    height:Device.scale(50),
     backgroundColor:"#ffffff",
   },
   input:{
-    height:50,
-    fontSize:16,
+    height:Device.scale(50),
+    fontSize:Device.scale(16),
     color:"#343434"
-  },
-  rightText:{
-    
   }
 });

+ 10 - 19
huiliaoAPP/src/pages/Contact/NewFriend/index.js

@@ -1,5 +1,5 @@
 import React from 'react';
-import { Image, ScrollView, Alert ,StyleSheet, Text, View,TextInput } from 'react-native';
+import { Image, ScrollView, Alert ,StyleSheet, Text, View,TextInput,TouchableOpacity } from 'react-native';
 import Button from 'antd-mobile-rn/lib/button';
 import { List,Switch,SearchBar } from 'antd-mobile-rn';
 import {Icon,Device} from '../../../tool'
@@ -25,20 +25,7 @@ export default class App extends React.Component {
   }
 
   render() {
-    const btn=(hasClick)=>{
-      if(hasClick){
-        return (
-          // <Button></Button>
-          <Text>2345</Text>
-        )
-      }else{
-        return(
-          <Text>123</Text>
-        )
-        
-      }
-    
-    }
+    const {navigation} =this.props
     return (
       <View style={commonStyles.page}>
         <View style={styles.searchBarWrap}>
@@ -57,13 +44,17 @@ export default class App extends React.Component {
         </View>
         <View style={styles.listWrap}>
           <View style={styles.list}>
-             <Image 
+          <TouchableOpacity
+          onPress={()=>{
+            navigation.navigate({ routeName:"CheckValidation" })
+          }}>
+          <Image 
               style={styles.scanImg}
               source={Icon.Contact.scan}
-              onPress={()=>{
-                alert(1)
-              }}
+              
               />
+          </TouchableOpacity>
+             
              <View style={styles.listTitle}>
                <Text style={styles.listOne}>胡桃夹子</Text>
                <Text style={styles.listTwo}>可以加好友吗可以加好友吗可以加好友吗可以加好友吗</Text>

+ 57 - 0
huiliaoAPP/src/pages/Contact/QRScannerView/index.js

@@ -0,0 +1,57 @@
+/**
+ * Sample React Native App
+ * https://github.com/facebook/react-native
+ *
+ * @format
+ * @flow
+ */
+
+import React, {Component} from 'react';
+import {Platform, StyleSheet, Text, View,TouchableOpacity,Toast} from 'react-native';
+import QRScannerView from './qr';
+
+export default class DefaultScreen extends Component {
+    static navigationOptions ={
+        title:'二维码',
+        // header:null
+       }
+    render() {
+        return (
+
+            < QRScannerView
+                onScanResultReceived={this.barcodeReceived.bind(this)}
+                renderTopBarView={() => this._renderTitleBar()}
+                renderBottomMenuView={() => this._renderMenu()}
+                cornerColor='#1bc3fb'
+                cornerBorderWidth={2}
+                scanBarColor='#1bc3fb'
+                hintText='将二维码放入框内,即可自动扫描'
+                maskColor='rgba(0,0,0,0.7)'
+                borderColor='#1bc3fb'
+                rectHeight={252}
+                rectWidth={252}
+                hintTextPosition={120}
+                // isLoading={false}
+                
+            />
+        )
+    }
+    _renderTitleBar(){
+        return(
+            <Text/>
+        );
+    }
+
+    _renderMenu() {
+        return (
+            <Text
+                style={{color:'#1bc3fb',textAlignVertical:'center', textAlign:'center',fontSize:10}}
+            >我的二维码</Text>
+        )
+    }
+
+    barcodeReceived(e) {
+        Toast.show('Type: ' + e.type + '\nData: ' + e.data);
+        //console.log(e)
+    }
+}

+ 0 - 0
huiliaoAPP/src/pages/Contact/QRScannerView/qr.js


Some files were not shown because too many files changed in this diff