Commit 5465ea3ac36dd602093f45c7ca72b9054894f18d

Authored by xiongwei
1 parent 0034c56ebb
Exists in master

解决版本升级功能

Showing 25 changed files with 6162 additions and 174 deletions   Show diff stats
PersonalCenter/.idea/gradle.xml
1 <?xml version="1.0" encoding="UTF-8"?> 1 <?xml version="1.0" encoding="UTF-8"?>
2 <project version="4"> 2 <project version="4">
3 <component name="GradleSettings"> 3 <component name="GradleSettings">
4 <option name="linkedExternalProjectsSettings"> 4 <option name="linkedExternalProjectsSettings">
5 <GradleProjectSettings> 5 <GradleProjectSettings>
6 <option name="distributionType" value="LOCAL" /> 6 <option name="distributionType" value="LOCAL" />
7 <option name="externalProjectPath" value="$PROJECT_DIR$" /> 7 <option name="externalProjectPath" value="$PROJECT_DIR$" />
8 <option name="gradleHome" value="C:\Program Files\Android\Android Studio\gradle\gradle-2.14.1" /> 8 <option name="gradleHome" value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1" />
9 <option name="modules"> 9 <option name="modules">
10 <set> 10 <set>
11 <option value="$PROJECT_DIR$" /> 11 <option value="$PROJECT_DIR$" />
12 <option value="$PROJECT_DIR$/app" /> 12 <option value="$PROJECT_DIR$/app" />
13 <option value="$PROJECT_DIR$/circledialog" /> 13 <option value="$PROJECT_DIR$/circledialog" />
14 <option value="$PROJECT_DIR$/mypresonallibrary" /> 14 <option value="$PROJECT_DIR$/mypresonallibrary" />
15 <option value="$PROJECT_DIR$/pickerview" /> 15 <option value="$PROJECT_DIR$/pickerview" />
16 </set> 16 </set>
17 </option> 17 </option>
18 <option name="resolveModulePerSourceSet" value="false" /> 18 <option name="resolveModulePerSourceSet" value="false" />
19 </GradleProjectSettings> 19 </GradleProjectSettings>
20 </option> 20 </option>
21 </component> 21 </component>
22 </project> 22 </project>
PersonalCenter/app/build.gradle
1 apply plugin: 'com.android.application' 1 apply plugin: 'com.android.application'
2 2
3 android { 3 android {
4 compileSdkVersion 25 4 compileSdkVersion 25
5 buildToolsVersion "25.0.3" 5 buildToolsVersion "25.0.3"
6 defaultConfig { 6 defaultConfig {
7 applicationId "com.hjx.personalcenter" 7 applicationId "com.hjx.personalcenter"
8 minSdkVersion 15 8 minSdkVersion 15
9 targetSdkVersion 25 9 targetSdkVersion 25
10 versionCode 1 10 versionCode 1
11 versionName "1.0.0" 11 versionName "1.0.1"
12 testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 12 testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
13 } 13 }
14 buildTypes { 14 buildTypes {
15 release { 15 release {
16 minifyEnabled false 16 minifyEnabled false
17 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 17 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18 } 18 }
19 } 19 }
20 useLibrary 'org.apache.http.legacy' 20 useLibrary 'org.apache.http.legacy'
21 lintOptions{
22 checkReleaseBuilds false
23 abortOnError false
24 }
21 sourceSets { 25 sourceSets {
22 main { 26 main {
23 jniLibs.srcDirs = ['libs'] 27 jniLibs.srcDirs = ['libs']
24 } 28 }
25 } 29 }
26 } 30 }
27 31
28 dependencies { 32 dependencies {
29 compile fileTree(include: ['*.jar'], dir: 'libs') 33 compile fileTree(include: ['*.jar'], dir: 'libs')
30 androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 34 androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
31 exclude group: 'com.android.support', module: 'support-annotations' 35 exclude group: 'com.android.support', module: 'support-annotations'
32 }) 36 })
33 compile 'com.tencent.bugly:crashreport:latest.release' 37 compile 'com.tencent.bugly:crashreport:latest.release'
34 compile 'org.apache.httpcomponents:httpcore:4.4.1' 38 compile 'org.apache.httpcomponents:httpcore:4.4.1'
35 compile 'org.apache.httpcomponents:httpclient:4.5' 39 compile 'org.apache.httpcomponents:httpclient:4.5'
36 compile 'com.android.support:appcompat-v7:25.3.1' 40 compile 'com.android.support:appcompat-v7:25.3.1'
37 testCompile 'junit:junit:4.12' 41 testCompile 'junit:junit:4.12'
38 compile project(':circledialog') 42 compile project(':circledialog')
39 compile project(':pickerview') 43 compile project(':pickerview')
40 compile files('libs/android-async-http-1.4.8.jar') 44 compile files('libs/android-async-http-1.4.8.jar')
41 compile 'com.google.code.gson:gson:2.7' 45 compile 'com.google.code.gson:gson:2.7'
42 compile 'com.zaaach:toprightmenu:1.0' 46 compile 'com.zaaach:toprightmenu:1.0'
43 compile 'com.facebook.fresco:fresco:1.1.0' 47 compile 'com.facebook.fresco:fresco:1.1.0'
44 compile 'com.android.support:recyclerview-v7:25.+' 48 compile 'com.android.support:recyclerview-v7:25.+'
45 debugCompile 'com.squareup.leakcanary:leakcanary-android:1.3' 49 debugCompile 'com.squareup.leakcanary:leakcanary-android:1.3'
46 releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.3' 50 releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.3'
47 compile 'com.google.zxing:core:3.3.0' 51 compile 'com.google.zxing:core:3.3.0'
48 compile 'com.google.zxing:android-core:3.3.0' 52 compile 'com.google.zxing:android-core:3.3.0'
49 compile project(path: ':mypresonallibrary') 53 compile project(path: ':mypresonallibrary')
50 } 54 }
51 55
PersonalCenter/app/src/main/AndroidManifest.xml
1 <?xml version="1.0" encoding="utf-8"?> 1 <?xml version="1.0" encoding="utf-8"?>
2 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
3 package="com.hjx.personalcenter"> 3 package="com.hjx.personalcenter">
4 4
5 <application 5 <application
6 android:name=".activity.MyApplication" 6 android:name=".activity.MyApplication"
7 android:allowBackup="true" 7 android:allowBackup="true"
8 android:icon="@mipmap/ic_launcher" 8 android:icon="@mipmap/ic_launcher"
9 android:label="@string/app_name" 9 android:label="@string/app_name"
10 android:supportsRtl="true" 10 android:supportsRtl="true"
11 android:theme="@style/Theme.AppCompat.Light.NoActionBar"> 11 android:theme="@style/Theme.AppCompat.Light.NoActionBar">
12 <activity 12 <activity
13 android:name=".activity.MainActivity" 13 android:name=".activity.MainActivity"
14 android:launchMode="singleTask" 14 android:launchMode="singleTask"
15 android:screenOrientation="landscape"> 15 android:screenOrientation="landscape">
16 </activity> 16 </activity>
17 <activity 17 <activity
18 android:name=".activity.LoginAndRegisterActivity" 18 android:name=".activity.LoginAndRegisterActivity"
19 android:launchMode="singleTask" 19 android:launchMode="singleTask"
20 20
21 android:screenOrientation="landscape"> 21 android:screenOrientation="landscape">
22 <intent-filter> 22 <intent-filter>
23 <action android:name="android.intent.action.MAIN" /> 23 <action android:name="android.intent.action.MAIN" />
24 24
25 <category android:name="android.intent.category.LAUNCHER" /> 25 <category android:name="android.intent.category.LAUNCHER" />
26 </intent-filter> 26 </intent-filter>
27 27
28 </activity> 28 </activity>
29 <activity 29 <activity
30 android:name=".activity.ForgotPasswordActivity" 30 android:name=".activity.ForgotPasswordActivity"
31 android:launchMode="singleTask" 31 android:launchMode="singleTask"
32 android:screenOrientation="landscape"> 32 android:screenOrientation="landscape">
33 33
34 </activity> 34 </activity>
35 <activity 35 <activity
36 android:name=".activity.ChangePasswordActivity" 36 android:name=".activity.ChangePasswordActivity"
37 android:launchMode="singleTask" 37 android:launchMode="singleTask"
38 android:screenOrientation="landscape"> 38 android:screenOrientation="landscape">
39 39
40 </activity> 40 </activity>
41 <activity 41 <activity
42 android:name=".activity.RegisterInfoActivity" 42 android:name=".activity.RegisterInfoActivity"
43 android:launchMode="singleTask" 43 android:launchMode="singleTask"
44 android:screenOrientation="landscape"> 44 android:screenOrientation="landscape">
45 45
46 </activity> 46 </activity>
47 <activity 47 <activity
48 android:name=".activity.ElectronicCardValidationActivity" 48 android:name=".activity.ElectronicCardValidationActivity"
49 android:launchMode="singleTask" 49 android:launchMode="singleTask"
50 android:screenOrientation="landscape"> 50 android:screenOrientation="landscape">
51 51
52 </activity> 52 </activity>
53 <activity 53 <activity
54 android:name=".activity.ChangeBangDingActivity" 54 android:name=".activity.ChangeBangDingActivity"
55 android:launchMode="singleTask" 55 android:launchMode="singleTask"
56 android:screenOrientation="landscape"> 56 android:screenOrientation="landscape">
57 57
58 </activity> 58 </activity>
59 <activity 59 <activity
60 android:name=".activity.ChangeElectronicCardAdressInfoActivity" 60 android:name=".activity.ChangeElectronicCardAdressInfoActivity"
61 android:launchMode="singleTask" 61 android:launchMode="singleTask"
62 android:screenOrientation="landscape"> 62 android:screenOrientation="landscape">
63 63
64 </activity> 64 </activity>
65 <activity 65 <activity
66 android:name=".activity.ChangeEletronicCardPhoneActivity" 66 android:name=".activity.ChangeEletronicCardPhoneActivity"
67 android:launchMode="singleTask" 67 android:launchMode="singleTask"
68 android:screenOrientation="landscape"> 68 android:screenOrientation="landscape">
69 69
70 </activity> 70 </activity>
71 <activity 71 <activity
72 android:name=".activity.ChoiseTextBookActivity" 72 android:name=".activity.ChoiseTextBookActivity"
73 android:launchMode="singleTask" 73 android:launchMode="singleTask"
74 android:screenOrientation="landscape"> 74 android:screenOrientation="landscape">
75 75
76 </activity> 76 </activity>
77 <activity 77 <activity
78 android:name=".activity.TheStartPageActivity" 78 android:name=".activity.TheStartPageActivity"
79 android:launchMode="singleTask" 79 android:launchMode="singleTask"
80 android:screenOrientation="landscape"> 80 android:screenOrientation="landscape">
81 81
82 </activity> 82 </activity>
83 <activity 83 <activity
84 android:name=".activity.ElectronicCardEditInfoActivity" 84 android:name=".activity.ElectronicCardEditInfoActivity"
85 android:launchMode="singleTask" 85 android:launchMode="singleTask"
86 android:screenOrientation="landscape"> 86 android:screenOrientation="landscape">
87 87
88 </activity> 88 </activity>
89 <activity 89 <activity
90 android:name=".activity.ElectronicCardInfoOKActivity" 90 android:name=".activity.ElectronicCardInfoOKActivity"
91 android:launchMode="singleTask" 91 android:launchMode="singleTask"
92 android:screenOrientation="landscape"> 92 android:screenOrientation="landscape">
93 93
94 </activity> 94 </activity>
95 <activity 95 <activity
96 android:name=".activity.ElectronicCardLookInfoActivity" 96 android:name=".activity.ElectronicCardLookInfoActivity"
97 android:launchMode="singleTask" 97 android:launchMode="singleTask"
98 android:screenOrientation="landscape"> 98 android:screenOrientation="landscape">
99 99
100 </activity> 100 </activity>
101 <activity 101 <activity
102 android:name=".activity.FeedBackActivity" 102 android:name=".activity.FeedBackActivity"
103 android:launchMode="singleTask" 103 android:launchMode="singleTask"
104 android:screenOrientation="landscape"> 104 android:screenOrientation="landscape">
105 105
106 </activity> 106 </activity>
107 <activity 107 <activity
108 android:name=".activity.AccountManagementActivity" 108 android:name=".activity.AccountManagementActivity"
109 android:launchMode="singleTask" 109 android:launchMode="singleTask"
110 android:screenOrientation="landscape"> 110 android:screenOrientation="landscape">
111 111
112 </activity> 112 </activity>
113 <activity 113 <activity
114 android:name=".activity.ChangePresonalInfoActivity" 114 android:name=".activity.ChangePresonalInfoActivity"
115 android:launchMode="singleTask" 115 android:launchMode="singleTask"
116 android:screenOrientation="landscape"> 116 android:screenOrientation="landscape">
117 117
118 </activity> 118 </activity>
119 <activity 119 <activity
120 android:name=".activity.BangDingCode" 120 android:name=".activity.BangDingCode"
121 android:launchMode="singleTask" 121 android:launchMode="singleTask"
122 android:screenOrientation="landscape"> 122 android:screenOrientation="landscape">
123 123
124 </activity> 124 </activity>
125 <service android:name="com.hjx.personalcenter.service.CenterService" 125 <service android:name="com.hjx.personalcenter.service.CenterService"
126 android:enabled="true" 126 android:enabled="true"
127 android:exported="true"> 127 android:exported="true">
128 <intent-filter> 128 <intent-filter>
129 <action android:name="com.hjx.mypresonallibrary.ICenterService"/> 129 <action android:name="com.hjx.mypresonallibrary.ICenterService"/>
130 </intent-filter> 130 </intent-filter>
131 </service> 131 </service>
132 <service
133 android:name="com.hjx.personalcenter.update.DownloadService"
134 android:enabled="true"/>
132 135
133 </application> 136 </application>
134 <!--权限--> 137 <!--权限-->
135 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 138 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
136 <uses-permission android:name="android.permission.CAMERA" /> 139 <uses-permission android:name="android.permission.CAMERA" />
137 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 140 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
138 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 141 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
139 <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> 142 <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
140 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 143 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
141 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 144 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
142 <uses-permission android:name="android.permission.CALL_PHONE" /> 145 <uses-permission android:name="android.permission.CALL_PHONE" />
143 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 146 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
144 <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> 147 <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
145 <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> 148 <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
146 <uses-permission android:name="android.permission.INTERNET" /> 149 <uses-permission android:name="android.permission.INTERNET" />
147 <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 150 <uses-permission android:name="android.permission.READ_PHONE_STATE" />
148 <uses-permission android:name="android.permission.READ_LOGS" /> 151 <uses-permission android:name="android.permission.READ_LOGS" />
149 <uses-permission android:name="android.permission.RESTART_PACKAGES\"/> 152 <uses-permission android:name="android.permission.RESTART_PACKAGES\"/>
150 153
151 </manifest> 154 </manifest>
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/ChoiseTextBookActivity.java
1 package com.hjx.personalcenter.activity; 1 package com.hjx.personalcenter.activity;
2 2
3 import android.content.Intent; 3 import android.content.Intent;
4 import android.os.Bundle; 4 import android.os.Bundle;
5 import android.os.Handler; 5 import android.os.Handler;
6 import android.os.Message; 6 import android.os.Message;
7 import android.support.v7.app.AppCompatActivity; 7 import android.support.v7.app.AppCompatActivity;
8 import android.util.Log; 8 import android.util.Log;
9 import android.view.View; 9 import android.view.View;
10 import android.widget.AdapterView; 10 import android.widget.AdapterView;
11 import android.widget.Button; 11 import android.widget.Button;
12 import android.widget.GridView; 12 import android.widget.GridView;
13 import android.widget.ImageView; 13 import android.widget.ImageView;
14 import android.widget.TextView; 14 import android.widget.TextView;
15 import android.widget.Toast; 15 import android.widget.Toast;
16 16
17 import com.facebook.drawee.view.SimpleDraweeView; 17 import com.facebook.drawee.view.SimpleDraweeView;
18 import com.hjx.personalcenter.R; 18 import com.hjx.personalcenter.R;
19 import com.hjx.personalcenter.adapter.GridAdapter; 19 import com.hjx.personalcenter.adapter.GridAdapter;
20 import com.hjx.personalcenter.customdialog.ElectronicCardDialog; 20 import com.hjx.personalcenter.customdialog.ElectronicCardDialog;
21 import com.hjx.personalcenter.customdialog.VerSionDialog; 21 import com.hjx.personalcenter.customdialog.VerSionDialog;
22 import com.hjx.personalcenter.db.SaveParam; 22 import com.hjx.personalcenter.db.SaveParam;
23 import com.hjx.personalcenter.http.HttpCode; 23 import com.hjx.personalcenter.http.HttpCode;
24 import com.hjx.personalcenter.http.HttpManager; 24 import com.hjx.personalcenter.http.HttpManager;
25 import com.hjx.personalcenter.interfaces.DialogCallBack; 25 import com.hjx.personalcenter.interfaces.DialogCallBack;
26 import com.hjx.personalcenter.model.DefautPublishInfo; 26 import com.hjx.personalcenter.model.DefautPublishInfo;
27 import com.hjx.personalcenter.model.VersionInfo; 27 import com.hjx.personalcenter.model.VersionInfo;
28 import com.hjx.personalcenter.util.AlertUtils; 28 import com.hjx.personalcenter.util.AlertUtils;
29 import com.hjx.personalcenter.util.GetDevicesUtil; 29 import com.hjx.personalcenter.util.GetDevicesUtil;
30 30
31 import org.json.JSONException; 31 import org.json.JSONException;
32 import org.json.JSONObject; 32 import org.json.JSONObject;
33 33
34 import java.util.ArrayList; 34 import java.util.ArrayList;
35 import java.util.List; 35 import java.util.List;
36 36
37 /** 37 /**
38 * 选择教材 38 * 选择教材
39 * Created by h on 2017/8/10. 39 * Created by h on 2017/8/10.
40 */ 40 */
41 41
42 public class ChoiseTextBookActivity extends AppCompatActivity implements View.OnClickListener, AdapterView.OnItemClickListener, DialogCallBack.VersionCallBack { 42 public class ChoiseTextBookActivity extends AppCompatActivity implements View.OnClickListener, AdapterView.OnItemClickListener, DialogCallBack.VersionCallBack {
43 private GridView gridView; 43 private GridView gridView;
44 private Button btn_ok; 44 private Button btn_ok;
45 private ImageView cancel; 45 private ImageView cancel;
46 private ArrayList<DefautPublishInfo.DataBean> defautPublishInfos = new ArrayList<>(); 46 private ArrayList<DefautPublishInfo.DataBean> defautPublishInfos = new ArrayList<>();
47 private GridAdapter sim_adapter; 47 private GridAdapter sim_adapter;
48 private SimpleDraweeView simpleDraweeView; 48 private SimpleDraweeView simpleDraweeView;
49 private TextView publish; 49 private TextView publish;
50 private String chinese, math, english, physics, chemistry, history, geography, political, biology, science; 50 private String chinese, math, english, physics, chemistry, history, geography, political, biology, science;
51 51
52 52
53 Handler handler = new Handler() { 53 Handler handler = new Handler() {
54 @Override 54 @Override
55 public void handleMessage(Message msg) { 55 public void handleMessage(Message msg) {
56 super.handleMessage(msg); 56 super.handleMessage(msg);
57 JSONObject jsonObject; 57 JSONObject jsonObject;
58 String status; 58 String status;
59 switch (msg.what) { 59 switch (msg.what) {
60 case HttpCode.CHECKCARD: 60 case HttpCode.CHECKCARD:
61 try { 61 try {
62 jsonObject = new JSONObject((String) msg.obj); 62 jsonObject = new JSONObject((String) msg.obj);
63 status = jsonObject.optString("status"); 63 status = jsonObject.optString("status");
64 if (status.equals("1")) { 64 if (status.equals("1")) {
65 AlertUtils.showToast(ChoiseTextBookActivity.this, "您已经填写了保卡信息,请到主界面确认您的保卡信息是否正确!"); 65 AlertUtils.showToast(ChoiseTextBookActivity.this, "您已经填写了保卡信息,请到主界面确认您的保卡信息是否正确!");
66 Intent intent = new Intent(); 66 Intent intent = new Intent();
67 intent.setClass(ChoiseTextBookActivity.this, TheStartPageActivity.class); 67 intent.setClass(ChoiseTextBookActivity.this, TheStartPageActivity.class);
68 ChoiseTextBookActivity.this.startActivity(intent); 68 ChoiseTextBookActivity.this.startActivity(intent);
69 overridePendingTransition(R.anim.rightin, R.anim.rightout); 69 overridePendingTransition(R.anim.rightin, R.anim.rightout);
70 } else if (status.equals("2001")) { 70 } else if (status.equals("2001")) {
71 ElectronicCardDialog.getInstance().show(getSupportFragmentManager(), "ElectronicCardDialog"); 71 ElectronicCardDialog.getInstance().show(getSupportFragmentManager(), "ElectronicCardDialog");
72 } else if (status.equals("2002")) { 72 } else if (status.equals("2002")) {
73 AlertUtils.showToast(ChoiseTextBookActivity.this, "您的机器为样机,可直接使用!"); 73 AlertUtils.showToast(ChoiseTextBookActivity.this, "您的机器为样机,可直接使用!");
74 Intent intent = new Intent(); 74 Intent intent = new Intent();
75 intent.setClass(ChoiseTextBookActivity.this, TheStartPageActivity.class); 75 intent.setClass(ChoiseTextBookActivity.this, TheStartPageActivity.class);
76 ChoiseTextBookActivity.this.startActivity(intent); 76 ChoiseTextBookActivity.this.startActivity(intent);
77 overridePendingTransition(R.anim.rightin, R.anim.rightout); 77 overridePendingTransition(R.anim.rightin, R.anim.rightout);
78 } 78 }
79 79
80 } catch (JSONException e) { 80 } catch (JSONException e) {
81 e.printStackTrace(); 81 e.printStackTrace();
82 } 82 }
83 83
84 break; 84 break;
85 case HttpCode.PUBLISH_SUCESS: 85 case HttpCode.PUBLISH_SUCESS:
86 defautPublishInfos.clear(); 86 defautPublishInfos.clear();
87 defautPublishInfos.addAll((List<DefautPublishInfo.DataBean>) msg.obj); 87 defautPublishInfos.addAll((List<DefautPublishInfo.DataBean>) msg.obj);
88 sim_adapter.notifyDataSetChanged(); 88 sim_adapter.notifyDataSetChanged();
89 for (int i = 0; i < defautPublishInfos.size(); i++) { 89 for (int i = 0; i < defautPublishInfos.size(); i++) {
90 String subject = defautPublishInfos.get(i).getSubject(); 90 String subject = defautPublishInfos.get(i).getSubject();
91 if (subject.equals("语文")) { 91 if (subject.equals("语文")) {
92 chinese = defautPublishInfos.get(i).getPress(); 92 chinese = defautPublishInfos.get(i).getPress();
93 } else if (subject.equals("数学")) { 93 } else if (subject.equals("数学")) {
94 math = defautPublishInfos.get(i).getPress(); 94 math = defautPublishInfos.get(i).getPress();
95 } else if (subject.equals("英语")) { 95 } else if (subject.equals("英语")) {
96 english = defautPublishInfos.get(i).getPress(); 96 english = defautPublishInfos.get(i).getPress();
97 } else if (subject.equals("物理")) { 97 } else if (subject.equals("物理")) {
98 physics = defautPublishInfos.get(i).getPress(); 98 physics = defautPublishInfos.get(i).getPress();
99 } else if (subject.equals("化学")) { 99 } else if (subject.equals("化学")) {
100 chemistry = defautPublishInfos.get(i).getPress(); 100 chemistry = defautPublishInfos.get(i).getPress();
101 } else if (subject.equals("历史")) { 101 } else if (subject.equals("历史")) {
102 history = defautPublishInfos.get(i).getPress(); 102 history = defautPublishInfos.get(i).getPress();
103 } else if (subject.equals("地理")) { 103 } else if (subject.equals("地理")) {
104 geography = defautPublishInfos.get(i).getPress(); 104 geography = defautPublishInfos.get(i).getPress();
105 } else if (subject.equals("政治")) { 105 } else if (subject.equals("政治")) {
106 political = defautPublishInfos.get(i).getPress(); 106 political = defautPublishInfos.get(i).getPress();
107 } else if (subject.equals("生物")) { 107 } else if (subject.equals("生物")) {
108 biology = defautPublishInfos.get(i).getPress(); 108 biology = defautPublishInfos.get(i).getPress();
109 } else if (subject.equals("科学")) { 109 } else if (subject.equals("科学")) {
110 science = defautPublishInfos.get(i).getPress(); 110 science = defautPublishInfos.get(i).getPress();
111 } 111 }
112 } 112 }
113 break; 113 break;
114 case HttpCode.REGISTERINFO_SUCESS: 114 case HttpCode.REGISTERINFO_SUCESS:
115 try { 115 try {
116 jsonObject = new JSONObject((String) msg.obj); 116 jsonObject = new JSONObject((String) msg.obj);
117 String statusregister = jsonObject.optString("status"); 117 String statusregister = jsonObject.optString("status");
118 if (statusregister.equals("1")) { 118 if (statusregister.equals("1")) {
119 Toast.makeText(ChoiseTextBookActivity.this, "注册信息上传成功", Toast.LENGTH_LONG).show(); 119 Toast.makeText(ChoiseTextBookActivity.this, "注册信息上传成功", Toast.LENGTH_LONG).show();
120 String deviceNumber = GetDevicesUtil.getDevicesInfo(ChoiseTextBookActivity.this).getDeviceNumber(); 120 String deviceNumber = GetDevicesUtil.getDevicesInfo(ChoiseTextBookActivity.this).getDeviceNumber();
121 if (deviceNumber == null) { 121 if (deviceNumber == null) {
122 AlertUtils.showToast(ChoiseTextBookActivity.this, "连接超时请重新登录!"); 122 AlertUtils.showToast(ChoiseTextBookActivity.this, "连接超时请重新登录!");
123 123
124 } else { 124 } else {
125 //验证保卡信息 125 //验证保卡信息
126 HttpManager.getInstance().cardinfocheck(ChoiseTextBookActivity.this, deviceNumber, handler); 126 HttpManager.getInstance().cardinfocheck(ChoiseTextBookActivity.this, deviceNumber, handler);
127 } 127 }
128 128
129 } else { 129 } else {
130 AlertUtils.showToast(ChoiseTextBookActivity.this, "您好,服务器异常,请稍后重试"); 130 AlertUtils.showToast(ChoiseTextBookActivity.this, "您好,服务器异常,请稍后重试");
131 } 131 }
132 } catch (JSONException e) { 132 } catch (JSONException e) {
133 e.printStackTrace(); 133 e.printStackTrace();
134 } 134 }
135 135
136 136
137 break; 137 break;
138 138
139 } 139 }
140 140
141 } 141 }
142 }; 142 };
143 143
144 @Override 144 @Override
145 protected void onCreate(Bundle savedInstanceState) { 145 protected void onCreate(Bundle savedInstanceState) {
146 super.onCreate(savedInstanceState); 146 super.onCreate(savedInstanceState);
147 String userID = SaveParam.getInstance().getLoginParam(this, "userId"); 147 String userID = SaveParam.getInstance().getLoginParam(this, "userId");
148 String graderid = SaveParam.getInstance().getCustomizeParam(this, SaveParam.GRADENS); 148 String graderid = SaveParam.getInstance().getLoginParam(this, SaveParam.CHILDSGRADENS);
149 String accounts = SaveParam.getInstance().getCustomizeParam(ChoiseTextBookActivity.this,SaveParam.ACCOUNT); 149 String accounts = SaveParam.getInstance().getCustomizeParam(ChoiseTextBookActivity.this,SaveParam.ACCOUNT);
150 try { 150 try {
151 long auserID = Long.parseLong(userID); 151 long auserID = Long.parseLong(userID);
152 int graderID = Integer.parseInt(graderid); 152 int graderID = Integer.parseInt(graderid);
153 int accountss = Integer.parseInt(accounts); 153 int accountss = Integer.parseInt(accounts);
154 //获取版本信息 154 //获取版本信息
155 HttpManager.getInstance().getpublishinfo(this, auserID, graderID,accountss, handler); 155 HttpManager.getInstance().getpublishinfo(this, auserID, graderID,accountss, handler);
156 156
157 } catch (NumberFormatException e) { 157 } catch (NumberFormatException e) {
158 e.printStackTrace(); 158 e.printStackTrace();
159 } 159 }
160 setContentView(R.layout.activity_choisetextbook); 160 setContentView(R.layout.activity_choisetextbook);
161 SysApplication.getInstance().addActivity(this); 161 SysApplication.getInstance().addActivity(this);
162 initView(); 162 initView();
163 initData(); 163 initData();
164 initLister(); 164 initLister();
165 } 165 }
166 166
167 private void initView() { 167 private void initView() {
168 gridView = (GridView) findViewById(R.id.grideview); 168 gridView = (GridView) findViewById(R.id.grideview);
169 cancel = (ImageView) findViewById(R.id.cancel); 169 cancel = (ImageView) findViewById(R.id.cancel);
170 btn_ok = (Button) findViewById(R.id.btn_ok); 170 btn_ok = (Button) findViewById(R.id.btn_ok);
171 } 171 }
172 172
173 private void initData() { 173 private void initData() {
174 sim_adapter = new GridAdapter(defautPublishInfos, this); 174 sim_adapter = new GridAdapter(defautPublishInfos, this);
175 //配置适配器 175 //配置适配器
176 gridView.setAdapter(sim_adapter); 176 gridView.setAdapter(sim_adapter);
177 177
178 } 178 }
179 179
180 private void initLister() { 180 private void initLister() {
181 btn_ok.setOnClickListener(this); 181 btn_ok.setOnClickListener(this);
182 cancel.setOnClickListener(this); 182 cancel.setOnClickListener(this);
183 gridView.setOnItemClickListener(this); 183 gridView.setOnItemClickListener(this);
184 184
185 } 185 }
186 186
187 @Override 187 @Override
188 public void onClick(View v) { 188 public void onClick(View v) {
189 switch (v.getId()) { 189 switch (v.getId()) {
190 case R.id.btn_ok: 190 case R.id.btn_ok:
191 String userID = SaveParam.getInstance().getLoginParam(this, "userId"); 191 String userID = SaveParam.getInstance().getLoginParam(this, "userId");
192 String regionId = SaveParam.getInstance().getLoginParam(ChoiseTextBookActivity.this, SaveParam.COUNTRY); 192 String regionId = SaveParam.getInstance().getsaveCityParam(ChoiseTextBookActivity.this, SaveParam.COUNTRY);
193 String regionId1 = SaveParam.getInstance().getLoginParam(ChoiseTextBookActivity.this, SaveParam.CITYS); 193 String regionId1 = SaveParam.getInstance().getsaveCityParam(ChoiseTextBookActivity.this, SaveParam.CITYS);
194 if (regionId == null) { 194 if (regionId == null) {
195 regionId = regionId1; 195 regionId = regionId1;
196 } 196 }
197 String grade = SaveParam.getInstance().getCustomizeParam(ChoiseTextBookActivity.this, SaveParam.GRADENS); 197 String grade = SaveParam.getInstance().getLoginParam(ChoiseTextBookActivity.this, SaveParam.CHILDSGRADENS);
198 String schoolid = SaveParam.getInstance().getLoginParam(ChoiseTextBookActivity.this, SaveParam.SCHOOOlID); 198 String schoolid = SaveParam.getInstance().getLoginParam(ChoiseTextBookActivity.this, SaveParam.SCHOOOlID);
199 String name = SaveParam.getInstance().getLoginParam(ChoiseTextBookActivity.this, SaveParam.USERNAME); 199 String name = SaveParam.getInstance().getLoginParam(ChoiseTextBookActivity.this, SaveParam.USERNAME);
200 String regeionname = SaveParam.getInstance().getLoginParam(ChoiseTextBookActivity.this, SaveParam.ADRESS); 200 String regeionname = SaveParam.getInstance().getLoginParam(ChoiseTextBookActivity.this, SaveParam.ADRESS);
201 201
202 try { 202 try {
203 if (userID == null) { 203 if (userID == null) {
204 AlertUtils.showToast(ChoiseTextBookActivity.this, "连接超时请重新登录!"); 204 AlertUtils.showToast(ChoiseTextBookActivity.this, "连接超时请重新登录!");
205 205
206 } else { 206 } else {
207 Object schoolID; 207 Object schoolID;
208 long auserID = Long.parseLong(userID); 208 long auserID = Long.parseLong(userID);
209 int gradeID = Integer.parseInt(grade); 209 int gradeID = Integer.parseInt(grade);
210 long regionID = Long.parseLong(regionId); 210 long regionID = Long.parseLong(regionId);
211 if (schoolid == null) { 211 if (schoolid == null) {
212 schoolID = null; 212 schoolID = null;
213 } else { 213 } else {
214 schoolID = Long.parseLong(schoolid); 214 schoolID = Long.parseLong(schoolid);
215 } 215 }
216 216
217 //提交注册信息 217 //提交注册信息
218 HttpManager.getInstance().subregisterinfo(ChoiseTextBookActivity.this, auserID, 218 HttpManager.getInstance().subregisterinfo(ChoiseTextBookActivity.this, auserID,
219 name, gradeID, regionID, regeionname, schoolID, math, english, chinese, physics, chemistry, history, geography, political, biology, science, handler); 219 name, gradeID, regionID, regeionname, schoolID, math, english, chinese, physics, chemistry, history, geography, political, biology, science, handler);
220 } 220 }
221 221
222 } catch (NumberFormatException e) { 222 } catch (NumberFormatException e) {
223 e.printStackTrace(); 223 e.printStackTrace();
224 } 224 }
225 225
226 break; 226 break;
227 case R.id.cancel: 227 case R.id.cancel:
228 finish(); 228 finish();
229 break; 229 break;
230 } 230 }
231 231
232 } 232 }
233 233
234 @Override 234 @Override
235 public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 235 public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
236 SaveParam.getInstance().saveLoginParam(this, SaveParam.SUBJECT, defautPublishInfos.get(position).getSubject()); 236 SaveParam.getInstance().saveLoginParam(this, SaveParam.SUBJECT, defautPublishInfos.get(position).getSubject());
237 VerSionDialog.getInstance(this).show(getSupportFragmentManager(), "VerSionDialog"); 237 VerSionDialog.getInstance(this).show(getSupportFragmentManager(), "VerSionDialog");
238 simpleDraweeView = (SimpleDraweeView) view.findViewById(R.id.image_publish); 238 simpleDraweeView = (SimpleDraweeView) view.findViewById(R.id.image_publish);
239 publish = (TextView) view.findViewById(R.id.tv_publish); 239 publish = (TextView) view.findViewById(R.id.tv_publish);
240 240
241 } 241 }
242 242
243 @Override 243 @Override
244 public void versionOnItemClick(ArrayList<VersionInfo.DataBean> data, int position, int type) { 244 public void versionOnItemClick(ArrayList<VersionInfo.DataBean> data, int position, int type) {
245 String imageurl = data.get(position).getPressCover(); 245 String imageurl = data.get(position).getPressCover();
246 String publishs = data.get(position).getPressName(); 246 String publishs = data.get(position).getPressName();
247 simpleDraweeView.setImageURI(imageurl); 247 simpleDraweeView.setImageURI(imageurl);
248 publish.setText(publishs); 248 publish.setText(publishs);
249 String subject = SaveParam.getInstance().getLoginParam(this, SaveParam.SUBJECT); 249 String subject = SaveParam.getInstance().getLoginParam(this, SaveParam.SUBJECT);
250 Log.e("test", "选择的科目" + subject); 250 Log.e("test", "选择的科目" + subject);
251 if ("语文".equals(subject)) { 251 if ("语文".equals(subject)) {
252 chinese = publishs; 252 chinese = publishs;
253 } else if ("数学".equals(subject)) { 253 } else if ("数学".equals(subject)) {
254 math = publishs; 254 math = publishs;
255 } else if ("英语".equals(subject)) { 255 } else if ("英语".equals(subject)) {
256 english = publishs; 256 english = publishs;
257 } else if ("物理".equals(subject)) { 257 } else if ("物理".equals(subject)) {
258 physics = publishs; 258 physics = publishs;
259 } else if ("化学".equals(subject)) { 259 } else if ("化学".equals(subject)) {
260 chemistry = publishs; 260 chemistry = publishs;
261 } else if ("历史".equals(subject)) { 261 } else if ("历史".equals(subject)) {
262 history = publishs; 262 history = publishs;
263 } else if ("地理".equals(subject)) { 263 } else if ("地理".equals(subject)) {
264 geography = publishs; 264 geography = publishs;
265 } else if ("政治".equals(subject)) { 265 } else if ("政治".equals(subject)) {
266 political = publishs; 266 political = publishs;
267 } else if ("生物".equals(subject)) { 267 } else if ("生物".equals(subject)) {
268 biology = publishs; 268 biology = publishs;
269 } else if ("科学".equals(subject)) { 269 } else if ("科学".equals(subject)) {
270 science = publishs; 270 science = publishs;
271 } 271 }
272 272
273 } 273 }
274 } 274 }
275 275
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/FeedBackActivity.java
1 package com.hjx.personalcenter.activity; 1 package com.hjx.personalcenter.activity;
2 2
3 import android.content.Intent; 3 import android.content.Intent;
4 import android.content.pm.PackageManager; 4 import android.content.pm.PackageManager;
5 import android.graphics.Color; 5 import android.graphics.Color;
6 import android.net.Uri; 6 import android.net.Uri;
7 import android.os.Build; 7 import android.os.Build;
8 import android.os.Bundle; 8 import android.os.Bundle;
9 import android.provider.MediaStore; 9 import android.provider.MediaStore;
10 import android.support.annotation.NonNull; 10 import android.support.annotation.NonNull;
11 import android.support.v4.content.FileProvider; 11 import android.support.v4.content.FileProvider;
12 import android.support.v7.app.AppCompatActivity; 12 import android.support.v7.app.AppCompatActivity;
13 import android.text.TextUtils; 13 import android.text.TextUtils;
14 import android.view.Gravity; 14 import android.view.Gravity;
15 import android.view.View; 15 import android.view.View;
16 import android.widget.AdapterView; 16 import android.widget.AdapterView;
17 import android.widget.EditText; 17 import android.widget.EditText;
18 import android.widget.ImageView; 18 import android.widget.ImageView;
19 import android.widget.TextView; 19 import android.widget.TextView;
20 import android.widget.Toast; 20 import android.widget.Toast;
21 21
22 import com.facebook.drawee.backends.pipeline.Fresco; 22 import com.facebook.drawee.backends.pipeline.Fresco;
23 import com.facebook.drawee.generic.GenericDraweeHierarchy; 23 import com.facebook.drawee.generic.GenericDraweeHierarchy;
24 import com.facebook.drawee.generic.GenericDraweeHierarchyBuilder; 24 import com.facebook.drawee.generic.GenericDraweeHierarchyBuilder;
25 import com.facebook.drawee.generic.RoundingParams; 25 import com.facebook.drawee.generic.RoundingParams;
26 import com.facebook.drawee.interfaces.DraweeController; 26 import com.facebook.drawee.interfaces.DraweeController;
27 import com.facebook.drawee.view.SimpleDraweeView; 27 import com.facebook.drawee.view.SimpleDraweeView;
28 import com.hjx.personalcenter.R; 28 import com.hjx.personalcenter.R;
29 import com.hjx.personalcenter.db.SaveParam; 29 import com.hjx.personalcenter.db.SaveParam;
30 import com.hjx.personalcenter.http.HttpManager; 30 import com.hjx.personalcenter.http.HttpManager;
31 import com.hjx.personalcenter.util.AlertUtils; 31 import com.hjx.personalcenter.util.AlertUtils;
32 import com.hjx.personalcenter.util.CropUtils; 32 import com.hjx.personalcenter.util.CropUtils;
33 import com.hjx.personalcenter.util.DialogPermission; 33 import com.hjx.personalcenter.util.DialogPermission;
34 import com.hjx.personalcenter.util.FileUtil; 34 import com.hjx.personalcenter.util.FileUtil;
35 import com.hjx.personalcenter.util.PermissionUtil; 35 import com.hjx.personalcenter.util.PermissionUtil;
36 import com.hjx.personalcenter.util.SharedPreferenceMark; 36 import com.hjx.personalcenter.util.SharedPreferenceMark;
37 import com.mylhyl.circledialog.CircleDialog; 37 import com.mylhyl.circledialog.CircleDialog;
38 import com.mylhyl.circledialog.callback.ConfigButton; 38 import com.mylhyl.circledialog.callback.ConfigButton;
39 import com.mylhyl.circledialog.callback.ConfigDialog; 39 import com.mylhyl.circledialog.callback.ConfigDialog;
40 import com.mylhyl.circledialog.params.ButtonParams; 40 import com.mylhyl.circledialog.params.ButtonParams;
41 import com.mylhyl.circledialog.params.DialogParams; 41 import com.mylhyl.circledialog.params.DialogParams;
42 42
43 import java.io.File; 43 import java.io.File;
44 44
45 /** 45 /**
46 * Created by h on 2017/8/11. 46 * Created by h on 2017/8/11.
47 */ 47 */
48 48
49 public class FeedBackActivity extends AppCompatActivity implements View.OnClickListener { 49 public class FeedBackActivity extends AppCompatActivity implements View.OnClickListener {
50 private ImageView iv_cance, iv_show, iv_take; 50 private ImageView iv_cance, iv_show, iv_take;
51 private EditText content, phone; 51 private EditText content, phone;
52 private TextView tv_sub; 52 private TextView tv_sub;
53 private static final int REQUEST_CODE_TAKE_PHOTO = 1; 53 private static final int REQUEST_CODE_TAKE_PHOTO = 1;
54 private static final int REQUEST_CODE_ALBUM = 2; 54 private static final int REQUEST_CODE_ALBUM = 2;
55 private static final int REQUEST_CODE_CROUP_PHOTO = 3; 55 private static final int REQUEST_CODE_CROUP_PHOTO = 3;
56 SimpleDraweeView mSimpleDraweeView; 56 SimpleDraweeView mSimpleDraweeView;
57 String type = "个人中心"; 57 String type = "个人中心";
58 private File file; 58 private File file;
59 private Uri uri; 59 private Uri uri;
60 60
61 @Override 61 @Override
62 protected void onCreate(Bundle savedInstanceState) { 62 protected void onCreate(Bundle savedInstanceState) {
63 super.onCreate(savedInstanceState); 63 super.onCreate(savedInstanceState);
64 Fresco.initialize(this); 64 Fresco.initialize(this);
65 setContentView(R.layout.activity_feedback); 65 setContentView(R.layout.activity_feedback);
66 initView(); 66 initView();
67 initData(); 67 initData();
68 initLister(); 68 initLister();
69 } 69 }
70 70
71 private void initView() { 71 private void initView() {
72 iv_cance = (ImageView) findViewById(R.id.cancel); 72 iv_cance = (ImageView) findViewById(R.id.cancel);
73 mSimpleDraweeView = (SimpleDraweeView) findViewById(R.id.show_iv); 73 mSimpleDraweeView = (SimpleDraweeView) findViewById(R.id.show_iv);
74 iv_take = (ImageView) findViewById(R.id.iv_take); 74 iv_take = (ImageView) findViewById(R.id.iv_take);
75 content = (EditText) findViewById(R.id.feedback_content); 75 content = (EditText) findViewById(R.id.feedback_content);
76 phone = (EditText) findViewById(R.id.feedback_phone); 76 phone = (EditText) findViewById(R.id.feedback_phone);
77 tv_sub = (TextView) findViewById(R.id.feedback_sub); 77 tv_sub = (TextView) findViewById(R.id.feedback_sub);
78 78
79 } 79 }
80 80
81 private void initData() { 81 private void initData() {
82 file = new File(FileUtil.getCachePath(this), "user-feedback.jpg"); 82 file = new File(FileUtil.getCachePath(this), "user-feedback.jpg");
83 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) { 83 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
84 uri = Uri.fromFile(file); 84 uri = Uri.fromFile(file);
85 } else { 85 } else {
86 //通过FileProvider创建一个content类型的Uri(android 7.0需要这样的方法跨应用访问) 86 //通过FileProvider创建一个content类型的Uri(android 7.0需要这样的方法跨应用访问)
87 uri = FileProvider.getUriForFile(MyApplication.getContext(), "com.hjx.personalcenter", file); 87 uri = FileProvider.getUriForFile(MyApplication.getContext(), "com.hjx.personalcenter", file);
88 } 88 }
89 89
90 } 90 }
91 91
92 private void initLister() { 92 private void initLister() {
93 iv_cance.setOnClickListener(this); 93 iv_cance.setOnClickListener(this);
94 iv_take.setOnClickListener(this); 94 iv_take.setOnClickListener(this);
95 tv_sub.setOnClickListener(this); 95 tv_sub.setOnClickListener(this);
96 mSimpleDraweeView.setOnClickListener(this); 96 mSimpleDraweeView.setOnClickListener(this);
97 97
98 } 98 }
99 99
100 @Override 100 @Override
101 public void onClick(View v) { 101 public void onClick(View v) {
102 String contents = content.getText().toString().trim(); 102 String contents = content.getText().toString().trim();
103 String contants = phone.getText().toString().trim(); 103 String contants = phone.getText().toString().trim();
104 switch (v.getId()) { 104 switch (v.getId()) {
105 case R.id.cancel: 105 case R.id.cancel:
106 finish(); 106 finish();
107 break; 107 break;
108 case R.id.iv_take: 108 case R.id.iv_take:
109 choiceAvatar(); 109 choiceAvatar();
110 break; 110 break;
111 case R.id.feedback_sub: 111 case R.id.feedback_sub:
112 //提交用户反馈 112 //提交用户反馈
113 if (TextUtils.isEmpty(contents)) { 113 if (TextUtils.isEmpty(contents)) {
114 AlertUtils.showToast(FeedBackActivity.this, "请将必填项填写完整"); 114 AlertUtils.showToast(FeedBackActivity.this, "写下两点宝贵的意见或建议吧");
115 return; 115 return;
116 } 116 }
117 String userID = SaveParam.getInstance().getLoginParam(this, "userId"); 117 String userID = SaveParam.getInstance().getLoginParam(this, "userId");
118 try { 118 try {
119 HttpManager.getInstance().feedback(FeedBackActivity.this, userID, 119 HttpManager.getInstance().feedback(FeedBackActivity.this, userID,
120 contents,contants,file.getPath(),type); 120 contents,contants,file.getPath(),type);
121 } catch (Exception e) { 121 } catch (Exception e) {
122 e.printStackTrace(); 122 e.printStackTrace();
123 } 123 }
124 break; 124 break;
125 case R.id.show_iv: 125 case R.id.show_iv:
126 126
127 127
128 break; 128 break;
129 } 129 }
130 } 130 }
131 131
132 //拍摄头像 132 //拍摄头像
133 private void choiceAvatar() { 133 private void choiceAvatar() {
134 final String[] items = {"拍照", "从相册选择"}; 134 final String[] items = {"拍照", "从相册选择"};
135 new CircleDialog.Builder(this) 135 new CircleDialog.Builder(this)
136 .configDialog(new ConfigDialog() { 136 .configDialog(new ConfigDialog() {
137 @Override 137 @Override
138 public void onConfig(DialogParams params) { 138 public void onConfig(DialogParams params) {
139 //增加弹出动画 139 //增加弹出动画
140 params.gravity = Gravity.CENTER; 140 params.gravity = Gravity.CENTER;
141 } 141 }
142 }) 142 })
143 .setTitle("请选择图片来源") 143 .setTitle("请选择图片来源")
144 .setWidth(0.5f) 144 .setWidth(0.5f)
145 .setItems(items, new AdapterView.OnItemClickListener() { 145 .setItems(items, new AdapterView.OnItemClickListener() {
146 @Override 146 @Override
147 public void onItemClick(AdapterView<?> parent, View view, int 147 public void onItemClick(AdapterView<?> parent, View view, int
148 position, long id) { 148 position, long id) {
149 switch (position) { 149 switch (position) {
150 case 0: 150 case 0:
151 if (PermissionUtil.hasCameraPermission(FeedBackActivity.this)) { 151 if (PermissionUtil.hasCameraPermission(FeedBackActivity.this)) {
152 uploadAvatarFromPhotoRequest(); 152 uploadAvatarFromPhotoRequest();
153 } 153 }
154 break; 154 break;
155 case 1: 155 case 1:
156 uploadAvatarFromAlbumRequest(); 156 uploadAvatarFromAlbumRequest();
157 break; 157 break;
158 } 158 }
159 159
160 } 160 }
161 }) 161 })
162 .setNegative("取消", null) 162 .setNegative("取消", null)
163 .configNegative(new ConfigButton() { 163 .configNegative(new ConfigButton() {
164 @Override 164 @Override
165 public void onConfig(ButtonParams params) { 165 public void onConfig(ButtonParams params) {
166 //取消按钮字体颜色 166 //取消按钮字体颜色
167 params.textColor = Color.RED; 167 params.textColor = Color.RED;
168 } 168 }
169 }) 169 })
170 .show(); 170 .show();
171 171
172 172
173 } 173 }
174 174
175 //照相 175 //照相
176 private void uploadAvatarFromPhotoRequest() { 176 private void uploadAvatarFromPhotoRequest() {
177 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 177 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
178 intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 178 intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
179 intent.putExtra(MediaStore.Images.Media.ORIENTATION, 0); 179 intent.putExtra(MediaStore.Images.Media.ORIENTATION, 0);
180 intent.putExtra(MediaStore.EXTRA_OUTPUT, uri); 180 intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
181 startActivityForResult(intent, REQUEST_CODE_TAKE_PHOTO); 181 startActivityForResult(intent, REQUEST_CODE_TAKE_PHOTO);
182 } 182 }
183 183
184 //选择图库 184 //选择图库
185 private void uploadAvatarFromAlbumRequest() { 185 private void uploadAvatarFromAlbumRequest() {
186 Intent photoPickerIntent = new Intent(Intent.ACTION_PICK); 186 Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
187 photoPickerIntent.setType("image/*"); 187 photoPickerIntent.setType("image/*");
188 startActivityForResult(photoPickerIntent, REQUEST_CODE_ALBUM); 188 startActivityForResult(photoPickerIntent, REQUEST_CODE_ALBUM);
189 } 189 }
190 190
191 //回掉 191 //回掉
192 @Override 192 @Override
193 protected void onActivityResult(int requestCode, int resultCode, Intent data) { 193 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
194 super.onActivityResult(requestCode, resultCode, data); 194 super.onActivityResult(requestCode, resultCode, data);
195 if (resultCode != -1) { 195 if (resultCode != -1) {
196 return; 196 return;
197 } 197 }
198 if (requestCode == REQUEST_CODE_ALBUM && data != null) { 198 if (requestCode == REQUEST_CODE_ALBUM && data != null) {
199 Uri newUri; 199 Uri newUri;
200 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) { 200 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
201 newUri = Uri.parse("file:///" + CropUtils.getPath(this, data.getData())); 201 newUri = Uri.parse("file:///" + CropUtils.getPath(this, data.getData()));
202 } else { 202 } else {
203 newUri = data.getData(); 203 newUri = data.getData();
204 } 204 }
205 if (newUri != null) { 205 if (newUri != null) {
206 //uploadAvatarFromPhoto(); 206 //uploadAvatarFromPhoto();
207 //裁剪图片 207 //裁剪图片
208 startPhotoZoom(newUri); 208 startPhotoZoom(newUri);
209 } else { 209 } else {
210 Toast.makeText(this, "没有得到相册图片", Toast.LENGTH_LONG).show(); 210 Toast.makeText(this, "没有得到相册图片", Toast.LENGTH_LONG).show();
211 } 211 }
212 } else if (requestCode == REQUEST_CODE_TAKE_PHOTO) { 212 } else if (requestCode == REQUEST_CODE_TAKE_PHOTO) {
213 uploadAvatarFromPhoto(); 213 uploadAvatarFromPhoto();
214 } else if (requestCode == REQUEST_CODE_CROUP_PHOTO) { 214 } else if (requestCode == REQUEST_CODE_CROUP_PHOTO) {
215 uploadAvatarFromPhoto(); 215 uploadAvatarFromPhoto();
216 } 216 }
217 } 217 }
218 218
219 private void uploadAvatarFromPhoto() { 219 private void uploadAvatarFromPhoto() {
220 compressAndUploadAvatar(file.getPath()); 220 compressAndUploadAvatar(file.getPath());
221 221
222 } 222 }
223 223
224 private void compressAndUploadAvatar(String fileSrc) { 224 private void compressAndUploadAvatar(String fileSrc) {
225 225
226 226
227 //上传到服务器 227 //上传到服务器
228 228
229 final File cover = FileUtil.getSmallBitmap(this, fileSrc); 229 final File cover = FileUtil.getSmallBitmap(this, fileSrc);
230 String mimeType = "image/*"; 230 String mimeType = "image/*";
231 //requestBody = RequestBody.create(MediaType.parse(mimeType), file); 231 //requestBody = RequestBody.create(MediaType.parse(mimeType), file);
232 //String fileName = cover.getName(); 232 //String fileName = cover.getName();
233 //HttpManager.getInstance().header(this, fileSrc); 233 //HttpManager.getInstance().header(this, fileSrc);
234 //photo = MultipartBody.Part.createFormData("portrait", fileName.substring(fileName.lastIndexOf("/") + 1, fileName.length()), requestBody); 234 //photo = MultipartBody.Part.createFormData("portrait", fileName.substring(fileName.lastIndexOf("/") + 1, fileName.length()), requestBody);
235 //Fresco设置圆形头像 235 //Fresco设置圆形头像
236 GenericDraweeHierarchyBuilder builder = new GenericDraweeHierarchyBuilder(getResources()); 236 GenericDraweeHierarchyBuilder builder = new GenericDraweeHierarchyBuilder(getResources());
237 GenericDraweeHierarchy hierarchy = builder 237 GenericDraweeHierarchy hierarchy = builder
238 .setDesiredAspectRatio(1f) 238 .setDesiredAspectRatio(1f)
239 .setFailureImage(R.mipmap.blank) 239 .setFailureImage(R.mipmap.blank)
240 //圆形头像 240 //圆形头像
241 .setRoundingParams(RoundingParams.fromCornersRadius(0.7f)) 241 .setRoundingParams(RoundingParams.fromCornersRadius(0.7f))
242 .build(); 242 .build();
243 243
244 //加载本地图片 244 //加载本地图片
245 Uri uri = Uri.fromFile(cover); 245 Uri uri = Uri.fromFile(cover);
246 DraweeController controller = Fresco.newDraweeControllerBuilder() 246 DraweeController controller = Fresco.newDraweeControllerBuilder()
247 .setOldController(mSimpleDraweeView.getController()) 247 .setOldController(mSimpleDraweeView.getController())
248 .setUri(uri) 248 .setUri(uri)
249 .build(); 249 .build();
250 mSimpleDraweeView.setHierarchy(hierarchy); 250 mSimpleDraweeView.setHierarchy(hierarchy);
251 mSimpleDraweeView.setController(controller); 251 mSimpleDraweeView.setController(controller);
252 252
253 } 253 }
254 254
255 public void startPhotoZoom(Uri uri) { 255 public void startPhotoZoom(Uri uri) {
256 Intent intent = new Intent("com.android.camera.action.CROP"); 256 Intent intent = new Intent("com.android.camera.action.CROP");
257 intent.setDataAndType(uri, "image/*"); 257 intent.setDataAndType(uri, "image/*");
258 intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 258 intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
259 intent.putExtra("crop", "true");// crop=true 有这句才能出来最后的裁剪页面. 259 intent.putExtra("crop", "true");// crop=true 有这句才能出来最后的裁剪页面.
260 intent.putExtra("aspectX", 1);// 这两项为裁剪框的比例. 260 intent.putExtra("aspectX", 1);// 这两项为裁剪框的比例.
261 intent.putExtra("aspectY", 1);// x:y=1:1 261 intent.putExtra("aspectY", 1);// x:y=1:1
262 // intent.putExtra("outputX", 400);//图片输出大小 262 // intent.putExtra("outputX", 400);//图片输出大小
263 // intent.putExtra("outputY", 400); 263 // intent.putExtra("outputY", 400);
264 intent.putExtra("output", Uri.fromFile(file)); 264 intent.putExtra("output", Uri.fromFile(file));
265 intent.putExtra("outputFormat", "JPEG");// 返回格式 265 intent.putExtra("outputFormat", "JPEG");// 返回格式
266 startActivityForResult(intent, REQUEST_CODE_CROUP_PHOTO); 266 startActivityForResult(intent, REQUEST_CODE_CROUP_PHOTO);
267 } 267 }
268 268
269 @Override 269 @Override
270 public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { 270 public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
271 switch (requestCode) { 271 switch (requestCode) {
272 272
273 case PermissionUtil.REQUEST_SHOWCAMERA: 273 case PermissionUtil.REQUEST_SHOWCAMERA:
274 if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { 274 if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
275 // Permission Granted 275 // Permission Granted
276 uploadAvatarFromPhotoRequest(); 276 uploadAvatarFromPhotoRequest();
277 277
278 } else { 278 } else {
279 if (!SharedPreferenceMark.getHasShowCamera()) { 279 if (!SharedPreferenceMark.getHasShowCamera()) {
280 SharedPreferenceMark.setHasShowCamera(true); 280 SharedPreferenceMark.setHasShowCamera(true);
281 new DialogPermission(this, "关闭摄像头权限影响扫描功能"); 281 new DialogPermission(this, "关闭摄像头权限影响扫描功能");
282 282
283 } else { 283 } else {
284 Toast.makeText(this, "未获取摄像头权限", Toast.LENGTH_SHORT) 284 Toast.makeText(this, "未获取摄像头权限", Toast.LENGTH_SHORT)
285 .show(); 285 .show();
286 } 286 }
287 } 287 }
288 break; 288 break;
289 default: 289 default:
290 super.onRequestPermissionsResult(requestCode, permissions, grantResults); 290 super.onRequestPermissionsResult(requestCode, permissions, grantResults);
291 } 291 }
292 } 292 }
293 } 293 }
294 294
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/MainActivity.java
1 package com.hjx.personalcenter.activity; 1 package com.hjx.personalcenter.activity;
2 2
3 import android.content.Context; 3 import android.content.Context;
4 import android.content.Intent; 4 import android.content.Intent;
5 import android.content.pm.PackageManager; 5 import android.content.pm.PackageManager;
6 import android.net.Uri; 6 import android.net.Uri;
7 import android.os.Build; 7 import android.os.Build;
8 import android.os.Bundle; 8 import android.os.Bundle;
9 import android.os.Handler; 9 import android.os.Handler;
10 import android.os.Message; 10 import android.os.Message;
11 import android.provider.MediaStore; 11 import android.provider.MediaStore;
12 import android.support.annotation.NonNull; 12 import android.support.annotation.NonNull;
13 import android.support.v4.content.FileProvider; 13 import android.support.v4.content.FileProvider;
14 import android.support.v7.app.AppCompatActivity; 14 import android.support.v7.app.AppCompatActivity;
15 import android.support.v7.widget.LinearLayoutManager; 15 import android.support.v7.widget.LinearLayoutManager;
16 import android.support.v7.widget.RecyclerView; 16 import android.support.v7.widget.RecyclerView;
17 import android.util.Log;
17 import android.view.KeyEvent; 18 import android.view.KeyEvent;
18 import android.view.View; 19 import android.view.View;
19 import android.widget.ImageView; 20 import android.widget.ImageView;
20 import android.widget.LinearLayout; 21 import android.widget.LinearLayout;
21 import android.widget.TextView; 22 import android.widget.TextView;
22 import android.widget.Toast; 23 import android.widget.Toast;
23 24
24 import com.facebook.drawee.backends.pipeline.Fresco; 25 import com.facebook.drawee.backends.pipeline.Fresco;
25 import com.facebook.drawee.generic.GenericDraweeHierarchy; 26 import com.facebook.drawee.generic.GenericDraweeHierarchy;
26 import com.facebook.drawee.generic.GenericDraweeHierarchyBuilder; 27 import com.facebook.drawee.generic.GenericDraweeHierarchyBuilder;
27 import com.facebook.drawee.generic.RoundingParams; 28 import com.facebook.drawee.generic.RoundingParams;
28 import com.facebook.drawee.interfaces.DraweeController; 29 import com.facebook.drawee.interfaces.DraweeController;
29 import com.facebook.drawee.view.SimpleDraweeView; 30 import com.facebook.drawee.view.SimpleDraweeView;
30 import com.hjx.personalcenter.R; 31 import com.hjx.personalcenter.R;
31 import com.hjx.personalcenter.adapter.GalleryAdapter; 32 import com.hjx.personalcenter.adapter.GalleryAdapter;
32 import com.hjx.personalcenter.adapter.VideoAdapter; 33 import com.hjx.personalcenter.adapter.VideoAdapter;
33 import com.hjx.personalcenter.customdialog.HeadDialog; 34 import com.hjx.personalcenter.customdialog.HeadDialog;
34 import com.hjx.personalcenter.customdialog.RecyclerViewSpaceItem; 35 import com.hjx.personalcenter.customdialog.RecyclerViewSpaceItem;
35 import com.hjx.personalcenter.db.SaveParam; 36 import com.hjx.personalcenter.db.SaveParam;
36 import com.hjx.personalcenter.http.HttpCode; 37 import com.hjx.personalcenter.http.HttpCode;
37 import com.hjx.personalcenter.http.HttpManager; 38 import com.hjx.personalcenter.http.HttpManager;
38 import com.hjx.personalcenter.interfaces.DialogCallBack; 39 import com.hjx.personalcenter.interfaces.DialogCallBack;
39 import com.hjx.personalcenter.model.DefautPublishInfo; 40 import com.hjx.personalcenter.model.DefautPublishInfo;
40 import com.hjx.personalcenter.model.PesonalInfo; 41 import com.hjx.personalcenter.model.PesonalInfo;
41 import com.hjx.personalcenter.model.SignInfo; 42 import com.hjx.personalcenter.model.SignInfo;
42 import com.hjx.personalcenter.model.VideoInfo; 43 import com.hjx.personalcenter.model.VideoInfo;
43 import com.hjx.personalcenter.update.UpdateChecker; 44 import com.hjx.personalcenter.update.UpdateChecker;
44 import com.hjx.personalcenter.util.AlertUtils; 45 import com.hjx.personalcenter.util.AlertUtils;
45 import com.hjx.personalcenter.util.BrithdayStar; 46 import com.hjx.personalcenter.util.BrithdayStar;
46 import com.hjx.personalcenter.util.CropUtils; 47 import com.hjx.personalcenter.util.CropUtils;
47 import com.hjx.personalcenter.util.DialogPermission; 48 import com.hjx.personalcenter.util.DialogPermission;
48 import com.hjx.personalcenter.util.FileUtil; 49 import com.hjx.personalcenter.util.FileUtil;
49 import com.hjx.personalcenter.util.GetDevicesUtil; 50 import com.hjx.personalcenter.util.GetDevicesUtil;
50 import com.hjx.personalcenter.util.PermissionUtil; 51 import com.hjx.personalcenter.util.PermissionUtil;
51 import com.hjx.personalcenter.util.SharedPreferenceMark; 52 import com.hjx.personalcenter.util.SharedPreferenceMark;
52 import com.mylhyl.circledialog.CircleDialog; 53 import com.mylhyl.circledialog.CircleDialog;
53 import com.mylhyl.circledialog.callback.ConfigInput; 54 import com.mylhyl.circledialog.callback.ConfigInput;
54 import com.mylhyl.circledialog.params.InputParams; 55 import com.mylhyl.circledialog.params.InputParams;
55 import com.mylhyl.circledialog.view.listener.OnInputClickListener; 56 import com.mylhyl.circledialog.view.listener.OnInputClickListener;
56 import com.zaaach.toprightmenu.MenuItem; 57 import com.zaaach.toprightmenu.MenuItem;
57 import com.zaaach.toprightmenu.TopRightMenu; 58 import com.zaaach.toprightmenu.TopRightMenu;
58 59
59 import org.json.JSONException; 60 import org.json.JSONException;
60 import org.json.JSONObject; 61 import org.json.JSONObject;
61 62
62 import java.io.File; 63 import java.io.File;
63 import java.io.UnsupportedEncodingException; 64 import java.io.UnsupportedEncodingException;
64 import java.util.ArrayList; 65 import java.util.ArrayList;
65 import java.util.List; 66 import java.util.List;
66 67
67 public class MainActivity extends AppCompatActivity implements View.OnClickListener, DialogCallBack.CallBackView { 68 public class MainActivity extends AppCompatActivity implements View.OnClickListener, DialogCallBack.CallBackView {
68 private ImageView iv_imformatioan, iv_look_card, iv_setting, iv_sign, iv_sex; 69 private ImageView iv_imformatioan, iv_look_card, iv_setting, iv_sign, iv_sex;
69 private TextView tv_edit_presoninfo, tv_sign, 70 private TextView tv_edit_presoninfo, tv_sign,
70 tv_username, tv_username1, tv_mygad, tv_sex, tv_useinfo_adress, tv_useinfo_birthday, 71 tv_username, tv_username1, tv_mygad, tv_sex, tv_useinfo_adress, tv_useinfo_birthday,
71 tv_useinfo_qq, tv_useinfo_school, tv_useinfo_gender, tv_yangji; 72 tv_useinfo_qq, tv_useinfo_school, tv_useinfo_gender, tv_yangji;
72 private LinearLayout linel_mycuoti, linel_mynote, linel_mycollege, linel_myclass; 73 private LinearLayout linel_mycuoti, linel_mynote, linel_mycollege, linel_myclass;
73 private TopRightMenu mTopRightMenu; 74 private TopRightMenu mTopRightMenu;
74 //水平滑动 75 //水平滑动
75 private RecyclerView mRecyclerView; 76 private RecyclerView mRecyclerView;
76 private RecyclerView mRecyclerViewpublish; 77 private RecyclerView mRecyclerViewpublish;
77 private VideoAdapter RecyclerViewadapter; 78 private VideoAdapter RecyclerViewadapter;
78 private GalleryAdapter RecyclerViewadapterpublish; 79 private GalleryAdapter RecyclerViewadapterpublish;
79 private ArrayList<DefautPublishInfo.DataBean> defautPublishInfos = new ArrayList<>(); 80 private ArrayList<DefautPublishInfo.DataBean> defautPublishInfos = new ArrayList<>();
80 81
81 private ArrayList<VideoInfo.DataBean> videoinfo = new ArrayList<>(); 82 private ArrayList<VideoInfo.DataBean> videoinfo = new ArrayList<>();
82 private boolean showIcon = true; 83 private boolean showIcon = true;
83 private boolean dimBg = true; 84 private boolean dimBg = true;
84 private boolean needAnim = true; 85 private boolean needAnim = true;
85 private static final int REQUEST_CODE_TAKE_PHOTO = 1; 86 private static final int REQUEST_CODE_TAKE_PHOTO = 1;
86 private static final int REQUEST_CODE_ALBUM = 2; 87 private static final int REQUEST_CODE_ALBUM = 2;
87 private static final int REQUEST_CODE_CROUP_PHOTO = 3; 88 private static final int REQUEST_CODE_CROUP_PHOTO = 3;
88 SimpleDraweeView mSimpleDraweeView; 89 SimpleDraweeView mSimpleDraweeView;
89 private File file; 90 private File file;
90 private Uri uri; 91 private Uri uri;
91 Handler handler = new Handler() { 92 Handler handler = new Handler() {
92 @Override 93 @Override
93 public void handleMessage(Message msg) { 94 public void handleMessage(Message msg) {
94 super.handleMessage(msg); 95 super.handleMessage(msg);
95 switch (msg.what) { 96 switch (msg.what) {
96 case HttpCode.GETINFO: 97 case HttpCode.GETINFO:
97 PesonalInfo.DataBean cardinfoBean = (PesonalInfo.DataBean) msg.obj; 98 PesonalInfo.DataBean cardinfoBean = (PesonalInfo.DataBean) msg.obj;
98 tv_username.setText(cardinfoBean.getNickName()); 99 tv_username.setText(cardinfoBean.getNickName());
99 tv_username1.setText(cardinfoBean.getNickName()); 100 tv_username1.setText(cardinfoBean.getNickName());
100 tv_useinfo_adress.setText(cardinfoBean.getRegion().getRegionName()); 101 tv_useinfo_adress.setText(cardinfoBean.getRegion().getRegionName());
101 tv_useinfo_birthday.setText(cardinfoBean.getBirthday()); 102 tv_useinfo_birthday.setText(cardinfoBean.getBirthday());
102 tv_useinfo_qq.setText(cardinfoBean.getQq()); 103 tv_useinfo_qq.setText(cardinfoBean.getQq());
103 tv_useinfo_school.setText(cardinfoBean.getSchool().getSchoolName()); 104 tv_useinfo_school.setText(cardinfoBean.getSchool().getSchoolName());
104 tv_useinfo_gender.setText(cardinfoBean.getGrade().getGradeName()); 105 tv_useinfo_gender.setText(cardinfoBean.getGrade().getGradeName());
105 String sex = cardinfoBean.getGender(); 106 String sex = cardinfoBean.getGender();
106 if ("0".equals(sex)) { 107 if ("0".equals(sex)) {
107 tv_sex.setText("男"); 108 tv_sex.setText("男");
108 iv_sex.setImageResource(R.mipmap.men); 109 iv_sex.setImageResource(R.mipmap.men);
109 } else { 110 } else {
110 tv_sex.setText("女"); 111 tv_sex.setText("女");
111 iv_sex.setImageResource(R.mipmap.women); 112 iv_sex.setImageResource(R.mipmap.women);
112 } 113 }
113 mSimpleDraweeView.setImageURI(cardinfoBean.getPortrait()); 114 mSimpleDraweeView.setImageURI(cardinfoBean.getPortrait());
114 //加载星座 115 //加载星座
115 BrithdayStar brithdayStar = new BrithdayStar(); 116 BrithdayStar brithdayStar = new BrithdayStar();
116 if (cardinfoBean.getBirthday() ==null||"".equals(cardinfoBean.getBirthday())) { 117 if (cardinfoBean.getBirthday() ==null||"".equals(cardinfoBean.getBirthday())) {
117 tv_mygad.setText(""); 118 tv_mygad.setText("");
118 } else { 119 } else {
119 String xiongzuo = brithdayStar.getConstellations(cardinfoBean.getBirthday()); 120 String xiongzuo = brithdayStar.getConstellations(cardinfoBean.getBirthday());
120 tv_mygad.setText(xiongzuo); 121 tv_mygad.setText(xiongzuo);
121 } 122 }
122 //保存个人信息 123 //保存个人信息
123 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTUSERNAME,cardinfoBean.getNickName()); 124 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTUSERNAME,cardinfoBean.getNickName());
124 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTGRADES,cardinfoBean.getGrade().getGradeName()); 125 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTGRADES,cardinfoBean.getGrade().getGradeName());
125 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTSCHOOL,cardinfoBean.getSchool().getSchoolName()); 126 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTSCHOOL,cardinfoBean.getSchool().getSchoolName());
126 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTCONSTELLATION,cardinfoBean.getBirthday()); 127 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTCONSTELLATION,cardinfoBean.getBirthday());
127 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTSEX,tv_sex.getText().toString()); 128 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTSEX,tv_sex.getText().toString());
128 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTQQ,cardinfoBean.getQq()); 129 SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTQQ,cardinfoBean.getQq());
129 130 //SaveParam.getInstance().saveLoginParam(MainActivity.this,SaveParam.ACCOUNTADRESS,cardinfoBean.getRegion().getRegionName());
130 String graderID = cardinfoBean.getGrade().getGradeId(); 131 String graderID = cardinfoBean.getGrade().getGradeId();
132 Log.e("test","nianji"+graderID);
133 SaveParam.getInstance().saveLoginParam(MainActivity.this, SaveParam.GRADENS, graderID);
131 String userID = SaveParam.getInstance().getLoginParam(MainActivity.this, "userId"); 134 String userID = SaveParam.getInstance().getLoginParam(MainActivity.this, "userId");
132 //账户类型 135 //账户类型
133 String accounts = SaveParam.getInstance().getCustomizeParam(MainActivity.this, SaveParam.ACCOUNT); 136 String accounts = SaveParam.getInstance().getCustomizeParam(MainActivity.this, SaveParam.ACCOUNT);
134 String childID = SaveParam.getInstance().getCustomizeParam(MainActivity.this, SaveParam.CHILDSID); 137 String childID = SaveParam.getInstance().getCustomizeParam(MainActivity.this, SaveParam.CHILDSID);
135 SaveParam.getInstance().saveCustomizeParam(MainActivity.this, SaveParam.GRADENS, "" + graderID); 138
136 try { 139 try {
137 Object auserID; 140 Object auserID;
138 int type; 141 int type;
139 int graderIDs = Integer.parseInt(graderID); 142 int graderIDs = Integer.parseInt(graderID);
140 if ("2".equals(accounts)) { 143 if ("2".equals(accounts)) {
141 type = Integer.parseInt(accounts); 144 type = Integer.parseInt(accounts);
142 auserID = childID; 145 auserID = childID;
143 } else { 146 } else {
144 type = Integer.parseInt(accounts); 147 type = Integer.parseInt(accounts);
145 auserID = Long.parseLong(userID); 148 auserID = Long.parseLong(userID);
146 } 149 }
147 //获取版本信息 150 //获取版本信息
151 //Log.e("test","nianji"+graderID+auserID+"sssss"+type);
148 HttpManager.getInstance().getpublishinfo(MainActivity.this, auserID, graderIDs, type, handler); 152 HttpManager.getInstance().getpublishinfo(MainActivity.this, auserID, graderIDs, type, handler);
149 153
150 } catch (NumberFormatException e) { 154 } catch (NumberFormatException e) {
151 e.printStackTrace(); 155 e.printStackTrace();
152 } 156 }
153 157
154 break; 158 break;
155 case HttpCode.SIGN: 159 case HttpCode.SIGN:
156 SignInfo.DataBean dataBean = (SignInfo.DataBean) msg.obj; 160 SignInfo.DataBean dataBean = (SignInfo.DataBean) msg.obj;
157 if (dataBean.getSignature() == null) { 161 if (dataBean.getSignature() == null) {
158 tv_sign.setText("你还未设置个性签名"); 162 tv_sign.setText("你还未设置个性签名");
159 } else { 163 } else {
160 tv_sign.setText(dataBean.getSignature()); 164 tv_sign.setText(dataBean.getSignature());
161 } 165 }
162 166
163 break; 167 break;
164 case HttpCode.PUBLISH_SUCESS: 168 case HttpCode.PUBLISH_SUCESS:
165 defautPublishInfos.clear(); 169 defautPublishInfos.clear();
166 defautPublishInfos.addAll((List<DefautPublishInfo.DataBean>) msg.obj); 170 defautPublishInfos.addAll((List<DefautPublishInfo.DataBean>) msg.obj);
167 RecyclerViewadapterpublish.notifyDataSetChanged(); 171 RecyclerViewadapterpublish.notifyDataSetChanged();
168 break; 172 break;
169 case HttpCode.GETVIDIO_SUCESS: 173 case HttpCode.GETVIDIO_SUCESS:
170 videoinfo.clear(); 174 videoinfo.clear();
171 videoinfo.addAll((List<VideoInfo.DataBean>) msg.obj); 175 videoinfo.addAll((List<VideoInfo.DataBean>) msg.obj);
172 RecyclerViewadapter.notifyDataSetChanged(); 176 RecyclerViewadapter.notifyDataSetChanged();
173 break; 177 break;
174 case HttpCode.SUCHCARDINFOONE: 178 case HttpCode.SUCHCARDINFOONE:
175 JSONObject jsonObject; 179 JSONObject jsonObject;
176 String status; 180 String status;
177 try { 181 try {
178 jsonObject = new JSONObject((String) msg.obj); 182 jsonObject = new JSONObject((String) msg.obj);
179 status = jsonObject.getString("status"); 183 status = jsonObject.getString("status");
180 if (status.equals("1")) { 184 if (status.equals("1")) {
181 tv_yangji.setVisibility(View.GONE); 185 tv_yangji.setVisibility(View.GONE);
182 iv_look_card.setVisibility(View.VISIBLE); 186 iv_look_card.setVisibility(View.VISIBLE);
183 } else if (status.equals("2001")) { 187 } else if (status.equals("2001")) {
184 tv_yangji.setVisibility(View.GONE); 188 tv_yangji.setVisibility(View.GONE);
185 iv_look_card.setVisibility(View.VISIBLE); 189 iv_look_card.setVisibility(View.VISIBLE);
186 AlertUtils.showToast(MainActivity.this, "您的机器还没有保卡信息,请重新登录"); 190 AlertUtils.showToast(MainActivity.this, "您的机器还没有保卡信息,请重新登录");
187 SaveParam.getInstance().clearData(MainActivity.this); 191 SaveParam.getInstance().clearData(MainActivity.this);
188 Intent settingintent = new Intent(); 192 Intent settingintent = new Intent();
189 settingintent.setClass(MainActivity.this, LoginAndRegisterActivity.class); 193 settingintent.setClass(MainActivity.this, LoginAndRegisterActivity.class);
190 startActivity(settingintent); 194 startActivity(settingintent);
191 overridePendingTransition(R.anim.rightin, R.anim.rightout); 195 overridePendingTransition(R.anim.rightin, R.anim.rightout);
192 finish(); 196 finish();
193 } else if (status.equals("2002")) { 197 } else if (status.equals("2002")) {
194 iv_look_card.setVisibility(View.GONE); 198 iv_look_card.setVisibility(View.GONE);
195 tv_yangji.setVisibility(View.VISIBLE); 199 tv_yangji.setVisibility(View.VISIBLE);
196 200
197 } else { 201 } else {
198 AlertUtils.showToast(MainActivity.this, "服务器连接失败"); 202 AlertUtils.showToast(MainActivity.this, "服务器连接失败");
199 } 203 }
200 } catch (JSONException e) { 204 } catch (JSONException e) {
201 e.printStackTrace(); 205 e.printStackTrace();
202 } 206 }
203 207
204 208
205 } 209 }
206 } 210 }
207 }; 211 };
208 212
209 @Override 213 @Override
210 protected void onCreate(Bundle savedInstanceState) { 214 protected void onCreate(Bundle savedInstanceState) {
211 super.onCreate(savedInstanceState); 215 super.onCreate(savedInstanceState);
212 Fresco.initialize(this); 216 Fresco.initialize(this);
213 setContentView(R.layout.activity_main); 217 setContentView(R.layout.activity_main);
218 SysApplication.getInstance().addActivity(this);
214 initView(); 219 initView();
215 initData(); 220 initData();
216 initLister(); 221 initLister();
217 updateVersion(); 222 updateVersion();
218 } 223 }
219 224
220 //////版本更新 225 //////版本更新
221 private void updateVersion() { 226 private void updateVersion() {
222 UpdateChecker updateChecker = new UpdateChecker(this); 227 UpdateChecker updateChecker = new UpdateChecker(this);
223 updateChecker.checkForUpdates(); 228 updateChecker.checkForUpdates();
224 229
225 230
226 } 231 }
227 232
228 private void initView() { 233 private void initView() {
229 iv_imformatioan = (ImageView) findViewById(R.id.iv_imformatioan); 234 iv_imformatioan = (ImageView) findViewById(R.id.iv_imformatioan);
230 iv_look_card = (ImageView) findViewById(R.id.iv_look_card); 235 iv_look_card = (ImageView) findViewById(R.id.iv_look_card);
231 tv_edit_presoninfo = (TextView) findViewById(R.id.tv_edit_presoninfo); 236 tv_edit_presoninfo = (TextView) findViewById(R.id.tv_edit_presoninfo);
232 iv_setting = (ImageView) findViewById(R.id.iv_setting); 237 iv_setting = (ImageView) findViewById(R.id.iv_setting);
233 iv_sign = (ImageView) findViewById(R.id.iv_sign); 238 iv_sign = (ImageView) findViewById(R.id.iv_sign);
234 tv_sign = (TextView) findViewById(R.id.tv_sign); 239 tv_sign = (TextView) findViewById(R.id.tv_sign);
235 //头像 240 //头像
236 mSimpleDraweeView = (SimpleDraweeView) findViewById(R.id.iv_head); 241 mSimpleDraweeView = (SimpleDraweeView) findViewById(R.id.iv_head);
237 //初始化个人信息 242 //初始化个人信息
238 iv_sex = (ImageView) findViewById(R.id.iv_sex); 243 iv_sex = (ImageView) findViewById(R.id.iv_sex);
239 tv_username = (TextView) findViewById(R.id.tv_username); 244 tv_username = (TextView) findViewById(R.id.tv_username);
240 tv_username1 = (TextView) findViewById(R.id.tv_username1); 245 tv_username1 = (TextView) findViewById(R.id.tv_username1);
241 tv_mygad = (TextView) findViewById(R.id.tv_mygad); 246 tv_mygad = (TextView) findViewById(R.id.tv_mygad);
242 tv_sex = (TextView) findViewById(R.id.tv_sex); 247 tv_sex = (TextView) findViewById(R.id.tv_sex);
243 tv_useinfo_adress = (TextView) findViewById(R.id.tv_useinfo_adress); 248 tv_useinfo_adress = (TextView) findViewById(R.id.tv_useinfo_adress);
244 tv_useinfo_birthday = (TextView) findViewById(R.id.tv_useinfo_birthday); 249 tv_useinfo_birthday = (TextView) findViewById(R.id.tv_useinfo_birthday);
245 tv_useinfo_qq = (TextView) findViewById(R.id.tv_useinfo_qq); 250 tv_useinfo_qq = (TextView) findViewById(R.id.tv_useinfo_qq);
246 tv_useinfo_school = (TextView) findViewById(R.id.tv_useinfo_school); 251 tv_useinfo_school = (TextView) findViewById(R.id.tv_useinfo_school);
247 tv_useinfo_gender = (TextView) findViewById(R.id.tv_useinfo_gender); 252 tv_useinfo_gender = (TextView) findViewById(R.id.tv_useinfo_gender);
248 tv_yangji = (TextView) findViewById(R.id.tv_yangji); 253 tv_yangji = (TextView) findViewById(R.id.tv_yangji);
249 //跳转其他应用 254 //跳转其他应用
250 linel_mycuoti = (LinearLayout) findViewById(R.id.linel_mycuoti); 255 linel_mycuoti = (LinearLayout) findViewById(R.id.linel_mycuoti);
251 linel_mynote = (LinearLayout) findViewById(R.id.linel_mynote); 256 linel_mynote = (LinearLayout) findViewById(R.id.linel_mynote);
252 linel_mycollege = (LinearLayout) findViewById(R.id.linel_mycollege); 257 linel_mycollege = (LinearLayout) findViewById(R.id.linel_mycollege);
253 linel_myclass = (LinearLayout) findViewById(R.id.linel_myclass); 258 linel_myclass = (LinearLayout) findViewById(R.id.linel_myclass);
254 // 259 //
255 mRecyclerView = (RecyclerView) findViewById(R.id.id_recyclerview_horizontal); 260 mRecyclerView = (RecyclerView) findViewById(R.id.id_recyclerview_horizontal);
256 mRecyclerViewpublish = (RecyclerView) findViewById(R.id.id_recyclerview_pubish); 261 mRecyclerViewpublish = (RecyclerView) findViewById(R.id.id_recyclerview_pubish);
257 262
258 } 263 }
259 264
260 265
261 private void initData() { 266 private void initData() {
267 //初始化图片
268 file = new File(FileUtil.getCachePath(this), "user-header.jpg");
269 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
270 uri = Uri.fromFile(file);
271 } else {
272 //通过FileProvider创建一个content类型的Uri(android 7.0需要这样的方法跨应用访问)
273 uri = FileProvider.getUriForFile(MyApplication.getContext(), "com.hjx.personalcenter", file);
274 }
262 //设置布局管理器 275 //设置布局管理器
263 LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this); 276 LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
264 linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL); 277 linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
265 278
266 LinearLayoutManager linearLayoutManagerpublish = new LinearLayoutManager(this); 279 LinearLayoutManager linearLayoutManagerpublish = new LinearLayoutManager(this);
267 linearLayoutManagerpublish.setOrientation(LinearLayoutManager.HORIZONTAL); 280 linearLayoutManagerpublish.setOrientation(LinearLayoutManager.HORIZONTAL);
268 281
269 mRecyclerView.setLayoutManager(linearLayoutManager); 282 mRecyclerView.setLayoutManager(linearLayoutManager);
270 mRecyclerView.addItemDecoration(new RecyclerViewSpaceItem(10)); 283 mRecyclerView.addItemDecoration(new RecyclerViewSpaceItem(10));
271 284
272 mRecyclerViewpublish.setLayoutManager(linearLayoutManagerpublish); 285 mRecyclerViewpublish.setLayoutManager(linearLayoutManagerpublish);
273 mRecyclerViewpublish.addItemDecoration(new RecyclerViewSpaceItem(10)); 286 mRecyclerViewpublish.addItemDecoration(new RecyclerViewSpaceItem(10));
274 287
275 //设置视频适配器 288 //设置视频适配器
276 RecyclerViewadapter = new VideoAdapter(this, videoinfo); 289 RecyclerViewadapter = new VideoAdapter(this, videoinfo);
277 RecyclerViewadapterpublish = new GalleryAdapter(this, defautPublishInfos); 290 RecyclerViewadapterpublish = new GalleryAdapter(this, defautPublishInfos);
278 291
279 //版本信息适配器 292 //版本信息适配器
280 mRecyclerView.setAdapter(RecyclerViewadapter); 293 mRecyclerView.setAdapter(RecyclerViewadapter);
281 mRecyclerViewpublish.setAdapter(RecyclerViewadapterpublish); 294 mRecyclerViewpublish.setAdapter(RecyclerViewadapterpublish);
295
282 //判断保卡信息是否为样机 296 //判断保卡信息是否为样机
283 String yangji = SaveParam.getInstance().getLoginParam(this, SaveParam.YANGJI); 297 String yangji = SaveParam.getInstance().getLoginParam(this, SaveParam.YANGJI);
284 String deviceNumber = GetDevicesUtil.getDevicesInfo(MainActivity.this).getDeviceNumber(); 298 String deviceNumber = GetDevicesUtil.getDevicesInfo(MainActivity.this).getDeviceNumber();
285 if ("1".equals(yangji)) { 299 if ("1".equals(yangji)) {
286 iv_look_card.setVisibility(View.GONE); 300 iv_look_card.setVisibility(View.GONE);
287 tv_yangji.setVisibility(View.VISIBLE); 301 tv_yangji.setVisibility(View.VISIBLE);
288 } else { 302 } else {
289 HttpManager.getInstance().getcardinfo1(this, deviceNumber, handler); 303 HttpManager.getInstance().getcardinfo1(this, deviceNumber, handler);
290 304
291 } 305 }
292 String userID = SaveParam.getInstance().getLoginParam(this, "userId"); 306 String userID = SaveParam.getInstance().getLoginParam(this, "userId");
293 //获取个性签名 307 //获取个性签名
294 String typeaccount = SaveParam.getInstance().getCustomizeParam(this, SaveParam.ACCOUNT); 308 String typeaccount = SaveParam.getInstance().getCustomizeParam(this, SaveParam.ACCOUNT);
295 try { 309 try {
296 long auserID = Long.parseLong(userID); 310 long auserID = Long.parseLong(userID);
297 int typeaccount1 = Integer.parseInt(typeaccount); 311 int typeaccount1 = Integer.parseInt(typeaccount);
298 HttpManager.getInstance().getsignatures(MainActivity.this, auserID, typeaccount1, handler); 312 HttpManager.getInstance().getsignatures(MainActivity.this, auserID, typeaccount1, handler);
299 313
300 } catch (NumberFormatException e) { 314 } catch (NumberFormatException e) {
301 e.printStackTrace(); 315 e.printStackTrace();
302 } 316 }
303 317
304 //初始化图片
305 file = new File(FileUtil.getCachePath(this), "user-avatar.jpg");
306 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
307 uri = Uri.fromFile(file);
308 } else {
309 //通过FileProvider创建一个content类型的Uri(android 7.0需要这样的方法跨应用访问)
310 uri = FileProvider.getUriForFile(MyApplication.getContext(), "com.hjx.personalcenter", file);
311 }
312 318
313 } 319 }
314 320
315 private void initLister() { 321 private void initLister() {
316 iv_imformatioan.setOnClickListener(this); 322 iv_imformatioan.setOnClickListener(this);
317 iv_look_card.setOnClickListener(this); 323 iv_look_card.setOnClickListener(this);
318 tv_edit_presoninfo.setOnClickListener(this); 324 tv_edit_presoninfo.setOnClickListener(this);
319 iv_setting.setOnClickListener(this); 325 iv_setting.setOnClickListener(this);
320 iv_sign.setOnClickListener(this); 326 iv_sign.setOnClickListener(this);
321 mSimpleDraweeView.setOnClickListener(this); 327 mSimpleDraweeView.setOnClickListener(this);
322 linel_mycuoti.setOnClickListener(this); 328 linel_mycuoti.setOnClickListener(this);
323 linel_mynote.setOnClickListener(this); 329 linel_mynote.setOnClickListener(this);
324 linel_mycollege.setOnClickListener(this); 330 linel_mycollege.setOnClickListener(this);
325 linel_myclass.setOnClickListener(this); 331 linel_myclass.setOnClickListener(this);
326 332
327 } 333 }
328 334
329 @Override 335 @Override
330 public void onClick(View v) { 336 public void onClick(View v) {
331 switch (v.getId()) { 337 switch (v.getId()) {
332 case R.id.iv_imformatioan: 338 case R.id.iv_imformatioan:
333 Intent intent = new Intent(); 339 Intent intent = new Intent();
334 intent.setClass(MainActivity.this, FeedBackActivity.class); 340 intent.setClass(MainActivity.this, FeedBackActivity.class);
335 startActivity(intent); 341 startActivity(intent);
336 overridePendingTransition(R.anim.rightin, R.anim.rightout); 342 overridePendingTransition(R.anim.rightin, R.anim.rightout);
337 break; 343 break;
338 case R.id.iv_look_card: 344 case R.id.iv_look_card:
339 Intent lookintent = new Intent(); 345 Intent lookintent = new Intent();
340 lookintent.setClass(MainActivity.this, ElectronicCardLookInfoActivity.class); 346 lookintent.setClass(MainActivity.this, ElectronicCardLookInfoActivity.class);
341 startActivity(lookintent); 347 startActivity(lookintent);
342 overridePendingTransition(R.anim.rightin, R.anim.rightout); 348 overridePendingTransition(R.anim.rightin, R.anim.rightout);
343 break; 349 break;
344 case R.id.tv_edit_presoninfo: 350 case R.id.tv_edit_presoninfo:
345 Intent editintent = new Intent(); 351 Intent editintent = new Intent();
346 editintent.setClass(MainActivity.this, ChangePresonalInfoActivity.class); 352 editintent.setClass(MainActivity.this, ChangePresonalInfoActivity.class);
347 startActivity(editintent); 353 startActivity(editintent);
348 overridePendingTransition(R.anim.rightin, R.anim.rightout); 354 overridePendingTransition(R.anim.rightin, R.anim.rightout);
349 break; 355 break;
350 case R.id.iv_head: 356 case R.id.iv_head:
351 HeadDialog.getInstance(this).show(getSupportFragmentManager(), "HeadDialog"); 357 HeadDialog.getInstance(this).show(getSupportFragmentManager(), "HeadDialog");
352 break; 358 break;
353 case R.id.iv_setting: 359 case R.id.iv_setting:
354 mTopRightMenu = new TopRightMenu(MainActivity.this); 360 mTopRightMenu = new TopRightMenu(MainActivity.this);
355 List<MenuItem> menuItems = new ArrayList<>(); 361 List<MenuItem> menuItems = new ArrayList<>();
356 menuItems.add(new MenuItem(R.mipmap.blank, "切换账户")); 362 menuItems.add(new MenuItem(R.mipmap.blank, "切换账户"));
357 menuItems.add(new MenuItem(R.mipmap.blank, "账户管理")); 363 menuItems.add(new MenuItem(R.mipmap.blank, "账户管理"));
358 mTopRightMenu 364 mTopRightMenu
359 .setHeight(150) //默认高度480 365 .setHeight(150) //默认高度480
360 .setWidth(320) //默认宽度wrap_content 366 .setWidth(320) //默认宽度wrap_content
361 .showIcon(showIcon) //显示菜单图标,默认为true 367 .showIcon(showIcon) //显示菜单图标,默认为true
362 .dimBackground(dimBg) //背景变暗,默认为true 368 .dimBackground(dimBg) //背景变暗,默认为true
363 .needAnimationStyle(needAnim) //显示动画,默认为true 369 .needAnimationStyle(needAnim) //显示动画,默认为true
364 .setAnimationStyle(R.style.TRM_ANIM_STYLE) //默认为R.style.TRM_ANIM_STYLE 370 .setAnimationStyle(R.style.TRM_ANIM_STYLE) //默认为R.style.TRM_ANIM_STYLE
365 .setOnMenuItemClickListener(new TopRightMenu.OnMenuItemClickListener() { 371 .setOnMenuItemClickListener(new TopRightMenu.OnMenuItemClickListener() {
366 @Override 372 @Override
367 public void onMenuItemClick(int position) { 373 public void onMenuItemClick(int position) {
368 switch (position) { 374 switch (position) {
369 case 0: 375 case 0:
370 new CircleDialog.Builder(MainActivity.this) 376 new CircleDialog.Builder(MainActivity.this)
371 .setCanceledOnTouchOutside(false) 377 .setCanceledOnTouchOutside(false)
372 .setWidth(0.4f) 378 .setWidth(0.4f)
373 .setCancelable(false) 379 .setCancelable(false)
374 .setText("您确定要退出,更换其他账号登录吗?") 380 .setText("您确定要退出,更换其他账号登录吗?")
375 .setNegative("取消", null) 381 .setNegative("取消", null)
376 .setPositive("确定", new View.OnClickListener() { 382 .setPositive("确定", new View.OnClickListener() {
377 @Override 383 @Override
378 public void onClick(View v) { 384 public void onClick(View v) {
379 //清除数据 385 //清除数据
380 SaveParam.getInstance().clearData(MainActivity.this); 386 SaveParam.getInstance().clearData(MainActivity.this);
381 Intent settingintent = new Intent(); 387 Intent settingintent = new Intent();
382 settingintent.setClass(MainActivity.this, LoginAndRegisterActivity.class); 388 settingintent.setClass(MainActivity.this, LoginAndRegisterActivity.class);
383 startActivity(settingintent); 389 startActivity(settingintent);
384 overridePendingTransition(R.anim.rightin, R.anim.rightout); 390 overridePendingTransition(R.anim.rightin, R.anim.rightout);
385 finish(); 391 finish();
386 } 392 }
387 }) 393 })
388 .show(); 394 .show();
389 break; 395 break;
390 case 1: 396 case 1:
391 Intent accontMintent = new Intent(); 397 Intent accontMintent = new Intent();
392 accontMintent.setClass(MainActivity.this, AccountManagementActivity.class); 398 accontMintent.setClass(MainActivity.this, AccountManagementActivity.class);
393 startActivity(accontMintent); 399 startActivity(accontMintent);
394 overridePendingTransition(R.anim.rightin, R.anim.rightout); 400 overridePendingTransition(R.anim.rightin, R.anim.rightout);
395 break; 401 break;
396 } 402 }
397 } 403 }
398 }) 404 })
399 .addMenuList(menuItems) 405 .addMenuList(menuItems)
400 .showAsDropDown(iv_setting, -250, 0); 406 .showAsDropDown(iv_setting, -250, 0);
401 break; 407 break;
402 case R.id.iv_sign: 408 case R.id.iv_sign:
403 new CircleDialog.Builder(this) 409 new CircleDialog.Builder(this)
404 .setCanceledOnTouchOutside(false) 410 .setCanceledOnTouchOutside(false)
405 .setCancelable(true) 411 .setCancelable(true)
406 .setTitle("个性签名") 412 .setTitle("个性签名")
407 .setInputHint("请输入个性签名") 413 .setInputHint("请输入个性签名")
408 .setWidth(0.5f) 414 .setWidth(0.5f)
409 .configInput(new ConfigInput() { 415 .configInput(new ConfigInput() {
410 @Override 416 @Override
411 public void onConfig(InputParams params) { 417 public void onConfig(InputParams params) {
412 // params.inputBackgroundResourceId = R.drawable.bg_input; 418 // params.inputBackgroundResourceId = R.drawable.bg_input;
413 } 419 }
414 }) 420 })
415 .setNegative("取消", null) 421 .setNegative("取消", null)
416 .setPositiveInput("确定", new OnInputClickListener() { 422 .setPositiveInput("确定", new OnInputClickListener() {
417 @Override 423 @Override
418 public void onClick(String text, View v) { 424 public void onClick(String text, View v) {
419 if (text.equals("")) { 425 if (text.equals("")) {
420 AlertUtils.showToast(MainActivity.this, "请输入个性签名"); 426 AlertUtils.showToast(MainActivity.this, "请输入个性签名");
421 } else { 427 } else {
422 try { 428 try {
423 String typeaccount = SaveParam.getInstance().getCustomizeParam(MainActivity.this, SaveParam.ACCOUNT); 429 String typeaccount = SaveParam.getInstance().getCustomizeParam(MainActivity.this, SaveParam.ACCOUNT);
424 String userID = SaveParam.getInstance().getLoginParam(MainActivity.this, "userId"); 430 String userID = SaveParam.getInstance().getLoginParam(MainActivity.this, "userId");
425 long auserID = Long.parseLong(userID); 431 long auserID = Long.parseLong(userID);
426 int typeaccount1 = Integer.parseInt(typeaccount); 432 int typeaccount1 = Integer.parseInt(typeaccount);
427 HttpManager.getInstance().changsignature(MainActivity.this, auserID, typeaccount1, text); 433 HttpManager.getInstance().changsignature(MainActivity.this, auserID, typeaccount1, text);
434 RecyclerViewadapterpublish.notifyDataSetChanged();
428 } catch (NumberFormatException e) { 435 } catch (NumberFormatException e) {
429 e.printStackTrace(); 436 e.printStackTrace();
430 } 437 }
431 438
432 tv_sign.setText(text); 439 tv_sign.setText(text);
433 } 440 }
434 441
435 } 442 }
436 }) 443 })
437 .show(); 444 .show();
438 break; 445 break;
439 case R.id.linel_mycuoti: 446 case R.id.linel_mycuoti:
440 AlertUtils.showToast(this, "我的错题 "); 447 AlertUtils.showToast(this, "我的错题 ");
441 break; 448 break;
442 case R.id.linel_mynote: 449 case R.id.linel_mynote:
443 AlertUtils.showToast(this, "我的笔记 "); 450 AlertUtils.showToast(this, "我的笔记 ");
444 break; 451 break;
445 case R.id.linel_mycollege: 452 case R.id.linel_mycollege:
446 AlertUtils.showToast(this, "我的收藏 "); 453 AlertUtils.showToast(this, "我的收藏 ");
447 break; 454 break;
448 case R.id.linel_myclass: 455 case R.id.linel_myclass:
449 AlertUtils.showToast(this, "我的班级 "); 456 AlertUtils.showToast(this, "我的班级 ");
450 break; 457 break;
451 } 458 }
452 459
453 } 460 }
454 461
455 @Override 462 @Override
456 protected void onPause() { 463 protected void onPause() {
457 super.onPause(); 464 super.onPause();
458 } 465 }
459 466
460 @Override 467 @Override
461 protected void onResume() { 468 protected void onResume() {
462 super.onResume(); 469 super.onResume();
463 String userID = SaveParam.getInstance().getLoginParam(this, "userId"); 470 String userID = SaveParam.getInstance().getLoginParam(this, "userId");
464 //账户类型 471 //账户类型
465 String accounts = SaveParam.getInstance().getCustomizeParam(this, SaveParam.ACCOUNT); 472 String accounts = SaveParam.getInstance().getCustomizeParam(this, SaveParam.ACCOUNT);
466 try { 473 try {
467 int graderID; 474 int graderID;
468 long auserID = Long.parseLong(userID); 475 long auserID = Long.parseLong(userID);
469 int typeaccount1 = Integer.parseInt(accounts); 476 int typeaccount1 = Integer.parseInt(accounts);
470 //获取最近播放视频 477 //获取最近播放视频
471 HttpManager.getInstance().getstuyvidioinfo(this, auserID, handler); 478 HttpManager.getInstance().getstuyvidioinfo(this, auserID, handler);
472 //获取个人信息 479 //获取个人信息
473 HttpManager.getInstance().getpresonalinfo(MainActivity.this, auserID, typeaccount1, handler); 480 HttpManager.getInstance().getpresonalinfo(MainActivity.this, auserID, typeaccount1, handler);
474 481
475 482
476 } catch (NumberFormatException e) { 483 } catch (NumberFormatException e) {
477 e.printStackTrace(); 484 e.printStackTrace();
478 } 485 }
479 486
480 } 487 }
481 488
482 //回调头像监听 489 //回调头像监听
483 @Override 490 @Override
484 public void heard(Context context, View v, int headpitiaon) { 491 public void heard(Context context, View v, int headpitiaon) {
485 String picUrl = ""; 492 String picUrl = "";
486 String userID; 493 String userID;
487 String typeaccount = SaveParam.getInstance().getCustomizeParam(this, SaveParam.ACCOUNT); 494 String typeaccount = SaveParam.getInstance().getCustomizeParam(this, SaveParam.ACCOUNT);
488 if ("2".equals(typeaccount)) { 495 if ("2".equals(typeaccount)) {
489 userID = SaveParam.getInstance().getCustomizeParam(this, SaveParam.CHILDSID); 496 userID = SaveParam.getInstance().getCustomizeParam(this, SaveParam.CHILDSID);
490 } else { 497 } else {
491 userID = SaveParam.getInstance().getLoginParam(this, "userId"); 498 userID = SaveParam.getInstance().getLoginParam(this, "userId");
492 } 499 }
493 switch (v.getId()) { 500 switch (v.getId()) {
494 //选择默认图片 501 //选择默认图片
495 case R.id.oktakephone: 502 case R.id.oktakephone:
496 if (headpitiaon == 1) { 503 if (headpitiaon == 1) {
497 mSimpleDraweeView.setImageDrawable(null); 504 mSimpleDraweeView.setImageDrawable(null);
498 mSimpleDraweeView.setImageResource(R.mipmap.default_avatar1); 505 mSimpleDraweeView.setImageResource(R.mipmap.default_avatar1);
499 picUrl = "http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/61e8d8cf-651f-49c9-beb2-ff1387af390a.png"; 506 picUrl = "http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/61e8d8cf-651f-49c9-beb2-ff1387af390a.png";
500 try { 507 try {
501 HttpManager.getInstance().headerdeft(this, userID, typeaccount, picUrl); 508 HttpManager.getInstance().headerdeft(this, userID, typeaccount, picUrl);
502 } catch (UnsupportedEncodingException e) { 509 } catch (UnsupportedEncodingException e) {
503 e.printStackTrace(); 510 e.printStackTrace();
504 } 511 }
505 } else if (headpitiaon == 2) { 512 } else if (headpitiaon == 2) {
506 mSimpleDraweeView.setImageDrawable(null); 513 mSimpleDraweeView.setImageDrawable(null);
507 mSimpleDraweeView.setImageResource(R.mipmap.default_avatar2); 514 mSimpleDraweeView.setImageResource(R.mipmap.default_avatar2);
508 picUrl = "http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/8480ff7b-42f1-4d64-b848-c8f4f3afd385.png"; 515 picUrl = "http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/8480ff7b-42f1-4d64-b848-c8f4f3afd385.png";
509 try { 516 try {
510 HttpManager.getInstance().headerdeft(this, userID, typeaccount, picUrl); 517 HttpManager.getInstance().headerdeft(this, userID, typeaccount, picUrl);
511 } catch (UnsupportedEncodingException e) { 518 } catch (UnsupportedEncodingException e) {
512 e.printStackTrace(); 519 e.printStackTrace();
513 } 520 }
514 } else if (headpitiaon == 3) { 521 } else if (headpitiaon == 3) {
515 mSimpleDraweeView.setImageDrawable(null); 522 mSimpleDraweeView.setImageDrawable(null);
516 mSimpleDraweeView.setImageResource(R.mipmap.default_avatar3); 523 mSimpleDraweeView.setImageResource(R.mipmap.default_avatar3);
517 picUrl = "http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/184112f4-bfe0-4db8-bc1e-6212755b241c.png"; 524 picUrl = "http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/184112f4-bfe0-4db8-bc1e-6212755b241c.png";
518 try { 525 try {
519 HttpManager.getInstance().headerdeft(this, userID, typeaccount, picUrl); 526 HttpManager.getInstance().headerdeft(this, userID, typeaccount, picUrl);
520 } catch (UnsupportedEncodingException e) { 527 } catch (UnsupportedEncodingException e) {
521 e.printStackTrace(); 528 e.printStackTrace();
522 } 529 }
523 } else if (headpitiaon == 4) { 530 } else if (headpitiaon == 4) {
524 mSimpleDraweeView.setImageDrawable(null); 531 mSimpleDraweeView.setImageDrawable(null);
525 mSimpleDraweeView.setImageResource(R.mipmap.default_avatar4); 532 mSimpleDraweeView.setImageResource(R.mipmap.default_avatar4);
526 picUrl = "http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/e31c9e11-9276-4bf4-a162-b66272fdc351.png"; 533 picUrl = "http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/e31c9e11-9276-4bf4-a162-b66272fdc351.png";
527 try { 534 try {
528 HttpManager.getInstance().headerdeft(this, userID, typeaccount, picUrl); 535 HttpManager.getInstance().headerdeft(this, userID, typeaccount, picUrl);
529 } catch (UnsupportedEncodingException e) { 536 } catch (UnsupportedEncodingException e) {
530 e.printStackTrace(); 537 e.printStackTrace();
531 } 538 }
532 } else { 539 } else {
533 mSimpleDraweeView.setImageDrawable(null); 540 mSimpleDraweeView.setImageDrawable(null);
534 mSimpleDraweeView.setImageResource(R.mipmap.header_default); 541 mSimpleDraweeView.setImageResource(R.mipmap.header_default);
535 ; 542 ;
536 } 543 }
537 544
538 break; 545 break;
539 case R.id.canceltakephone: 546 case R.id.canceltakephone:
540 547
541 break; 548 break;
542 //拍摄和相册 549 //拍摄和相册
543 case R.id.take_pic: 550 case R.id.take_pic:
544 android.util.Log.e("TAG", ".....");
545 if (PermissionUtil.hasCameraPermission(MainActivity.this)) { 551 if (PermissionUtil.hasCameraPermission(MainActivity.this)) {
546 uploadAvatarFromPhotoRequest(); 552 uploadAvatarFromPhotoRequest();
547 } 553 }
548 break; 554 break;
549 case R.id.xiangce: 555 case R.id.xiangce:
550 uploadAvatarFromAlbumRequest(); 556 uploadAvatarFromAlbumRequest();
551 break; 557 break;
552 558
553 } 559 }
554 560
555 } 561 }
556
557 //照相 562 //照相
558 private void uploadAvatarFromPhotoRequest() { 563 private void uploadAvatarFromPhotoRequest() {
559 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 564 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
560 intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 565 intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
561 intent.putExtra(MediaStore.Images.Media.ORIENTATION, 0); 566 intent.putExtra(MediaStore.Images.Media.ORIENTATION, 0);
562 intent.putExtra(MediaStore.EXTRA_OUTPUT, uri); 567 intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
563 startActivityForResult(intent, REQUEST_CODE_TAKE_PHOTO); 568 startActivityForResult(intent, REQUEST_CODE_TAKE_PHOTO);
564 } 569 }
565
566 //选择图库 570 //选择图库
567 private void uploadAvatarFromAlbumRequest() { 571 private void uploadAvatarFromAlbumRequest() {
568 Intent photoPickerIntent = new Intent(Intent.ACTION_PICK); 572 Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
569 photoPickerIntent.setType("image/*"); 573 photoPickerIntent.setType("image/*");
570 startActivityForResult(photoPickerIntent, REQUEST_CODE_ALBUM); 574 startActivityForResult(photoPickerIntent, REQUEST_CODE_ALBUM);
571 } 575 }
572 576
573 //回掉 577 //回掉
574 @Override 578 @Override
575 protected void onActivityResult(int requestCode, int resultCode, Intent data) { 579 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
576 super.onActivityResult(requestCode, resultCode, data); 580 super.onActivityResult(requestCode, resultCode, data);
577 if (resultCode != -1) { 581 if (resultCode != -1) {
578 return; 582 return;
579 } 583 }
580 if (requestCode == REQUEST_CODE_ALBUM && data != null) { 584 if (requestCode == REQUEST_CODE_ALBUM && data != null) {
581 Uri newUri; 585 Uri newUri;
582 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) { 586 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
583 newUri = Uri.parse("file:///" + CropUtils.getPath(this, data.getData())); 587 newUri = Uri.parse("file:///" + CropUtils.getPath(this, data.getData()));
584 } else { 588 } else {
585 newUri = data.getData(); 589 newUri = data.getData();
586 } 590 }
587 if (newUri != null) { 591 if (newUri != null) {
588 startPhotoZoom(newUri); 592 startPhotoZoom(newUri);
589 } else { 593 } else {
590 Toast.makeText(this, "没有得到相册图片", Toast.LENGTH_LONG).show(); 594 Toast.makeText(this, "没有得到相册图片", Toast.LENGTH_LONG).show();
591 } 595 }
592 } else if (requestCode == REQUEST_CODE_TAKE_PHOTO) { 596 } else if (requestCode == REQUEST_CODE_TAKE_PHOTO) {
593 startPhotoZoom(uri); 597 startPhotoZoom(uri);
594 } else if (requestCode == REQUEST_CODE_CROUP_PHOTO) { 598 } else if (requestCode == REQUEST_CODE_CROUP_PHOTO) {
595 uploadAvatarFromPhoto(); 599 uploadAvatarFromPhoto();
596 } 600 }
597 } 601 }
598 602
599 private void uploadAvatarFromPhoto() { 603 private void uploadAvatarFromPhoto() {
600 compressAndUploadAvatar(file.getPath()); 604 compressAndUploadAvatar(file.getPath());
601 605
602 } 606 }
603 607
604 private void compressAndUploadAvatar(String fileSrc) { 608 private void compressAndUploadAvatar(String fileSrc) {
605 609
606 610
607 //上传到服务器 611 //上传到服务器
608 612
609 final File cover = FileUtil.getSmallBitmap(this, fileSrc); 613 final File cover = FileUtil.getSmallBitmap(this, fileSrc);
610 String mimeType = "image/*"; 614 String mimeType = "image/*";
611 //requestBody = RequestBody.create(MediaType.parse(mimeType), file); 615 //requestBody = RequestBody.create(MediaType.parse(mimeType), file);
612 //String fileName = cover.getName(); 616 //String fileName = cover.getName();
613 String userID; 617 String userID;
614 String typeaccount = SaveParam.getInstance().getCustomizeParam(this, SaveParam.ACCOUNT); 618 String typeaccount = SaveParam.getInstance().getCustomizeParam(this, SaveParam.ACCOUNT);
615 if ("2".equals(typeaccount)) { 619 if ("2".equals(typeaccount)) {
616 userID = SaveParam.getInstance().getCustomizeParam(this, SaveParam.CHILDSID); 620 userID = SaveParam.getInstance().getCustomizeParam(this, SaveParam.CHILDSID);
617 } else { 621 } else {
618 userID = SaveParam.getInstance().getLoginParam(this, "userId"); 622 userID = SaveParam.getInstance().getLoginParam(this, "userId");
619 } 623 }
620 624
621 //上传头像 625 //上传头像
622 626
623 try { 627 try {
624 HttpManager.getInstance().header(this, userID, typeaccount, file.getPath()); 628 HttpManager.getInstance().header(this, userID, typeaccount, file.getPath());
625 } catch (UnsupportedEncodingException e) { 629 } catch (UnsupportedEncodingException e) {
626 e.printStackTrace(); 630 e.printStackTrace();
627 } 631 }
628 632
629 //photo = MultipartBody.Part.createFormData("portrait", fileName.substring(fileName.lastIndexOf("/") + 1, fileName.length()), requestBody); 633 //photo = MultipartBody.Part.createFormData("portrait", fileName.substring(fileName.lastIndexOf("/") + 1, fileName.length()), requestBody);
630 //Fresco设置圆形头像 634 //Fresco设置圆形头像
631 GenericDraweeHierarchyBuilder builder = new GenericDraweeHierarchyBuilder(getResources()); 635 GenericDraweeHierarchyBuilder builder = new GenericDraweeHierarchyBuilder(getResources());
632 GenericDraweeHierarchy hierarchy = builder 636 GenericDraweeHierarchy hierarchy = builder
633 .setDesiredAspectRatio(1f) 637 .setDesiredAspectRatio(1f)
634 .setFailureImage(R.mipmap.blank) 638 .setFailureImage(R.mipmap.blank)
635 //圆形头像 639 //圆形头像
636 .setRoundingParams(RoundingParams.asCircle()) 640 .setRoundingParams(RoundingParams.asCircle())
637 .build(); 641 .build();
638 642
639 //加载本地图片 643 //加载本地图片
640 Uri uri = Uri.fromFile(cover); 644 Uri uri = Uri.fromFile(cover);
641 DraweeController controller = Fresco.newDraweeControllerBuilder() 645 DraweeController controller = Fresco.newDraweeControllerBuilder()
642 .setOldController(mSimpleDraweeView.getController()) 646 .setOldController(mSimpleDraweeView.getController())
643 .setUri(uri) 647 .setUri(uri)
644 .build(); 648 .build();
645 mSimpleDraweeView.setHierarchy(hierarchy); 649 mSimpleDraweeView.setHierarchy(hierarchy);
646 mSimpleDraweeView.setController(controller); 650 mSimpleDraweeView.setController(controller);
647 651
648 } 652 }
649 653
650 public void startPhotoZoom(Uri uri) { 654 public void startPhotoZoom(Uri uri) {
651 Intent intent = new Intent("com.android.camera.action.CROP"); 655 Intent intent = new Intent("com.android.camera.action.CROP");
652 intent.setDataAndType(uri, "image/*"); 656 intent.setDataAndType(uri, "image/*");
653 intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 657 intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
654 intent.putExtra("crop", "true");// crop=true 有这句才能出来最后的裁剪页面. 658 intent.putExtra("crop", "true");// crop=true 有这句才能出来最后的裁剪页面.
655 intent.putExtra("aspectX", 1);// 这两项为裁剪框的比例. 659 intent.putExtra("aspectX", 1);// 这两项为裁剪框的比例.
656 intent.putExtra("aspectY", 1);// x:y=1:1 660 intent.putExtra("aspectY", 1);// x:y=1:1
657 // intent.putExtra("outputX", 400);//图片输出大小 661 // intent.putExtra("outputX", 400);//图片输出大小
658 // intent.putExtra("outputY", 400); 662 // intent.putExtra("outputY", 400);
659 intent.putExtra("output", Uri.fromFile(file)); 663 intent.putExtra("output", Uri.fromFile(file));
660 intent.putExtra("outputFormat", "JPEG");// 返回格式 664 intent.putExtra("outputFormat", "JPEG");// 返回格式
661 startActivityForResult(intent, REQUEST_CODE_CROUP_PHOTO); 665 startActivityForResult(intent, REQUEST_CODE_CROUP_PHOTO);
662 } 666 }
663 667
664 @Override 668 @Override
665 public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { 669 public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
666 switch (requestCode) { 670 switch (requestCode) {
667 671
668 case PermissionUtil.REQUEST_SHOWCAMERA: 672 case PermissionUtil.REQUEST_SHOWCAMERA:
669 if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { 673 if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
670 // Permission Granted 674 // Permission Granted
671 uploadAvatarFromPhotoRequest(); 675 uploadAvatarFromPhotoRequest();
672 676
673 } else { 677 } else {
674 if (!SharedPreferenceMark.getHasShowCamera()) { 678 if (!SharedPreferenceMark.getHasShowCamera()) {
675 SharedPreferenceMark.setHasShowCamera(true); 679 SharedPreferenceMark.setHasShowCamera(true);
676 new DialogPermission(this, "关闭摄像头权限影响扫描功能"); 680 new DialogPermission(this, "关闭摄像头权限影响扫描功能");
677 681
678 } else { 682 } else {
679 Toast.makeText(this, "未获取摄像头权限", Toast.LENGTH_SHORT) 683 Toast.makeText(this, "未获取摄像头权限", Toast.LENGTH_SHORT)
680 .show(); 684 .show();
681 } 685 }
682 } 686 }
683 break; 687 break;
684 default: 688 default:
685 super.onRequestPermissionsResult(requestCode, permissions, grantResults); 689 super.onRequestPermissionsResult(requestCode, permissions, grantResults);
686 } 690 }
687 } 691 }
688 692
689 private long exitTime = 0; 693 private long exitTime = 0;
690 694
691 @Override 695 @Override
692 public boolean onKeyDown(int keyCode, KeyEvent event) { 696 public boolean onKeyDown(int keyCode, KeyEvent event) {
693 if (keyCode == KeyEvent.KEYCODE_BACK) { 697 if (keyCode == KeyEvent.KEYCODE_BACK) {
694 if ((System.currentTimeMillis() - exitTime) > 2000) { 698 if ((System.currentTimeMillis() - exitTime) > 2000) {
695 Toast.makeText(getApplicationContext(), "再按一次退出程序", 699 Toast.makeText(getApplicationContext(), "再按一次退出程序",
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/MyApplication.java
1 package com.hjx.personalcenter.activity; 1 package com.hjx.personalcenter.activity;
2 2
3 import android.app.Application; 3 import android.app.Application;
4 import android.content.Context; 4 import android.content.Context;
5 import android.graphics.drawable.Drawable; 5 import android.graphics.drawable.Drawable;
6 import android.os.Looper; 6 import android.os.Looper;
7 import android.view.Gravity; 7 import android.view.Gravity;
8 import android.widget.TextView; 8 import android.widget.TextView;
9 import android.widget.Toast; 9 import android.widget.Toast;
10 10
11 import com.facebook.drawee.backends.pipeline.Fresco; 11 import com.facebook.drawee.backends.pipeline.Fresco;
12 import com.hjx.personalcenter.R; 12 import com.hjx.personalcenter.R;
13 import com.hjx.personalcenter.crash.CrashHandler; 13 import com.hjx.personalcenter.crash.CrashHandler;
14 import com.hjx.personalcenter.util.ImageCache; 14 import com.hjx.personalcenter.util.ImageCache;
15 import com.squareup.leakcanary.LeakCanary; 15 import com.squareup.leakcanary.LeakCanary;
16 import com.tencent.bugly.crashreport.CrashReport; 16 import com.tencent.bugly.crashreport.CrashReport;
17 17
18 /** 18 /**
19 * Created by ${yf} on 2017/2/16. 19 * Created by ${yf} on 2017/2/16.
20 */ 20 */
21 21
22 public class MyApplication extends Application { 22 public class MyApplication extends Application {
23 23
24 private ImageCache mImageCache; 24 private ImageCache mImageCache;
25 private static Context context; 25 private static Context context;
26 private static MyApplication instance; 26 private static MyApplication instance;
27 @Override 27 @Override
28 public void onCreate() { 28 public void onCreate() {
29 context = getApplicationContext(); 29 context = getApplicationContext();
30 //c初始化内存检测 30 //c初始化内存检测
31 LeakCanary.install(this); 31 LeakCanary.install(this);
32 //初始化Fresco 32 //初始化Fresco
33 Fresco.initialize(this); 33 Fresco.initialize(this);
34 mImageCache = new ImageCache(); 34 mImageCache = new ImageCache();
35 instance = this; 35 instance = this;
36 CrashReport.initCrashReport(getApplicationContext(), "c2170557a0", false); 36 CrashReport.initCrashReport(getApplicationContext(), "c2170557a0", false);
37 CrashHandler crashHandler = CrashHandler.getInstance(); 37 CrashHandler crashHandler = CrashHandler.getInstance();
38 //生成错误日志,测试的时候得放开 38 //生成错误日志,测试的时候得放开
39 //crashHandler.init(getApplicationContext()); 39 crashHandler.init(getApplicationContext());
40 crashHandler.registerHandler(new CrashHandler.ExceptionHandler() { 40 crashHandler.registerHandler(new CrashHandler.ExceptionHandler() {
41 41
42 @Override 42 @Override
43 public boolean handleCrash(final Context context, final Throwable ex) { 43 public boolean handleCrash(final Context context, final Throwable ex) {
44 new Thread(new Runnable() { 44 new Thread(new Runnable() {
45 45
46 @Override 46 @Override
47 public void run() { 47 public void run() {
48 Looper.prepare(); 48 Looper.prepare();
49 System.out.println("bcz = " + ex.toString()); 49 System.out.println("bcz = " + ex.toString());
50 Toast toast = new Toast(context); 50 Toast toast = new Toast(context);
51 TextView tv = new TextView(context); 51 TextView tv = new TextView(context);
52 tv.setText(" 很抱歉,"+context.getString(R.string.app_name)+"崩溃了,我们会尽快修复."); 52 tv.setText(" 很抱歉,"+context.getString(R.string.app_name)+"崩溃了,我们会尽快修复.");
53 tv.setPadding(10, 10, 10, 10); 53 tv.setPadding(10, 10, 10, 10);
54 tv.setTextSize(20); 54 tv.setTextSize(20);
55 tv.setBackgroundResource(R.drawable.black_btn_default); 55 tv.setBackgroundResource(R.drawable.black_btn_default);
56 tv.setTextColor(context.getResources().getColor(android.R.color.white)); 56 tv.setTextColor(context.getResources().getColor(android.R.color.white));
57 Drawable drawable= context.getResources().getDrawable(R.drawable.sorry); 57 Drawable drawable= context.getResources().getDrawable(R.drawable.sorry);
58 drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight()); 58 drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight());
59 tv.setCompoundDrawables(drawable,null,null,null); 59 tv.setCompoundDrawables(drawable,null,null,null);
60 toast.setView(tv); 60 toast.setView(tv);
61 toast.setGravity(Gravity.CENTER, 0, 0); 61 toast.setGravity(Gravity.CENTER, 0, 0);
62 toast.setDuration(Toast.LENGTH_LONG); 62 toast.setDuration(Toast.LENGTH_LONG);
63 toast.show(); 63 toast.show();
64 Looper.loop(); 64 Looper.loop();
65 } 65 }
66 }).start(); 66 }).start();
67 try { 67 try {
68 Thread.sleep(1000); 68 Thread.sleep(1000);
69 } catch (InterruptedException e) { 69 } catch (InterruptedException e) {
70 // TODO Auto-generated catch block 70 // TODO Auto-generated catch block
71 e.printStackTrace(); 71 e.printStackTrace();
72 } 72 }
73 return false; 73 return false;
74 } 74 }
75 }); 75 });
76 super.onCreate(); 76 super.onCreate();
77 } 77 }
78 public ImageCache getImageCache() { 78 public ImageCache getImageCache() {
79 return mImageCache; 79 return mImageCache;
80 } 80 }
81 81
82 public static Context getContext() { 82 public static Context getContext() {
83 return context; 83 return context;
84 } 84 }
85 public static MyApplication getInstance() { 85 public static MyApplication getInstance() {
86 return instance; 86 return instance;
87 } 87 }
88 88
89 } 89 }
90 90
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/RegisterInfoActivity.java
1 package com.hjx.personalcenter.activity; 1 package com.hjx.personalcenter.activity;
2 2
3 import android.content.Intent; 3 import android.content.Intent;
4 import android.os.Bundle; 4 import android.os.Bundle;
5 import android.support.v7.app.AppCompatActivity; 5 import android.support.v7.app.AppCompatActivity;
6 import android.text.TextUtils; 6 import android.text.TextUtils;
7 import android.view.KeyEvent; 7 import android.view.KeyEvent;
8 import android.view.View; 8 import android.view.View;
9 import android.widget.Button; 9 import android.widget.Button;
10 import android.widget.EditText; 10 import android.widget.EditText;
11 import android.widget.TextView; 11 import android.widget.TextView;
12 12
13 import com.hjx.personalcenter.R; 13 import com.hjx.personalcenter.R;
14 import com.hjx.personalcenter.customdialog.CitysListDialog; 14 import com.hjx.personalcenter.customdialog.CitysListDialog;
15 import com.hjx.personalcenter.customdialog.CountryDialog; 15 import com.hjx.personalcenter.customdialog.CountryDialog;
16 import com.hjx.personalcenter.customdialog.GradeListDialog; 16 import com.hjx.personalcenter.customdialog.GradeListDialog;
17 import com.hjx.personalcenter.customdialog.ProvinceListDialog; 17 import com.hjx.personalcenter.customdialog.ProvinceListDialog;
18 import com.hjx.personalcenter.customdialog.SchoolListDialog; 18 import com.hjx.personalcenter.customdialog.SchoolListDialog;
19 import com.hjx.personalcenter.db.Content; 19 import com.hjx.personalcenter.db.Content;
20 import com.hjx.personalcenter.db.SaveParam; 20 import com.hjx.personalcenter.db.SaveParam;
21 import com.hjx.personalcenter.http.HttpManager; 21 import com.hjx.personalcenter.http.HttpManager;
22 import com.hjx.personalcenter.interfaces.DialogCallBack; 22 import com.hjx.personalcenter.interfaces.DialogCallBack;
23 import com.hjx.personalcenter.model.CityInfo; 23 import com.hjx.personalcenter.model.CityInfo;
24 import com.hjx.personalcenter.model.CountyInfo; 24 import com.hjx.personalcenter.model.CountyInfo;
25 import com.hjx.personalcenter.model.GradeInfo; 25 import com.hjx.personalcenter.model.GradeInfo;
26 import com.hjx.personalcenter.model.ProvinceInfo; 26 import com.hjx.personalcenter.model.ProvinceInfo;
27 import com.hjx.personalcenter.model.SchoolInfo; 27 import com.hjx.personalcenter.model.SchoolInfo;
28 import com.hjx.personalcenter.util.AlertUtils; 28 import com.hjx.personalcenter.util.AlertUtils;
29 import com.hjx.personalcenter.util.GetDevicesUtil; 29 import com.hjx.personalcenter.util.GetDevicesUtil;
30 30
31 import java.util.ArrayList; 31 import java.util.ArrayList;
32 32
33 /** 33 /**
34 * 填写注册信息 熊巍 34 * 填写注册信息 熊巍
35 * Created by h on 2017/8/9. 35 * Created by h on 2017/8/9.
36 */ 36 */
37 37
38 public class RegisterInfoActivity extends AppCompatActivity implements View.OnClickListener, DialogCallBack.GradeCallBack, DialogCallBack.ProvincesCallBack 38 public class RegisterInfoActivity extends AppCompatActivity implements View.OnClickListener, DialogCallBack.GradeCallBack, DialogCallBack.ProvincesCallBack
39 , DialogCallBack.CitysCallBack, DialogCallBack.CountryCallBack, DialogCallBack.SchoolCallBack { 39 , DialogCallBack.CitysCallBack, DialogCallBack.CountryCallBack, DialogCallBack.SchoolCallBack {
40 private EditText et_username; 40 private EditText et_username;
41 private TextView et_region, et_grade, et_school; 41 private TextView et_region, et_grade, et_school;
42 private Button btn_ok; 42 private Button btn_ok;
43 43
44 @Override 44 @Override
45 protected void onCreate(Bundle savedInstanceState) { 45 protected void onCreate(Bundle savedInstanceState) {
46 super.onCreate(savedInstanceState); 46 super.onCreate(savedInstanceState);
47 setContentView(R.layout.activity_registerinfo); 47 setContentView(R.layout.activity_registerinfo);
48 SysApplication.getInstance().addActivity(this); 48 SysApplication.getInstance().addActivity(this);
49 49 Content.changeinfoflag = true;
50 initView(); 50 initView();
51 initData(); 51 initData();
52 initLister(); 52 initLister();
53 } 53 }
54 54
55 private void initView() { 55 private void initView() {
56 et_username = (EditText) findViewById(R.id.et_username); 56 et_username = (EditText) findViewById(R.id.et_username);
57 et_region = (TextView) findViewById(R.id.et_region); 57 et_region = (TextView) findViewById(R.id.et_region);
58 et_grade = (TextView) findViewById(R.id.et_grade); 58 et_grade = (TextView) findViewById(R.id.et_grade);
59 et_school = (TextView) findViewById(R.id.et_school); 59 et_school = (TextView) findViewById(R.id.et_school);
60 btn_ok = (Button) findViewById(R.id.btn_ok); 60 btn_ok = (Button) findViewById(R.id.btn_ok);
61 61
62 62
63 } 63 }
64 64
65 private void initData() { 65 private void initData() {
66 if (Content.accountflag == 2) { 66 if (Content.accountflag == 2) {
67 btn_ok.setText("提交"); 67 btn_ok.setText("提交");
68 68
69 } 69 }
70 70
71 } 71 }
72 72
73 private void initLister() { 73 private void initLister() {
74 et_region.setOnClickListener(this); 74 et_region.setOnClickListener(this);
75 et_grade.setOnClickListener(this); 75 et_grade.setOnClickListener(this);
76 et_school.setOnClickListener(this); 76 et_school.setOnClickListener(this);
77 btn_ok.setOnClickListener(this); 77 btn_ok.setOnClickListener(this);
78 78
79 79
80 } 80 }
81 81
82 @Override 82 @Override
83 public void onClick(View v) { 83 public void onClick(View v) {
84 String register1 = et_username.getText().toString().trim(); 84 String register1 = et_username.getText().toString().trim();
85 String register2 = et_region.getText().toString().trim(); 85 String register2 = et_region.getText().toString().trim();
86 String register3 = et_grade.getText().toString().trim(); 86 String register3 = et_grade.getText().toString().trim();
87 String register4 = et_school.getText().toString().trim(); 87 String register4 = et_school.getText().toString().trim();
88 switch (v.getId()) { 88 switch (v.getId()) {
89 case R.id.et_region: 89 case R.id.et_region:
90 et_school.setText(""); 90 et_school.setText("");
91 choiseregion(); 91 choiseregion();
92 break; 92 break;
93 case R.id.et_grade: 93 case R.id.et_grade:
94 et_school.setText(""); 94 et_school.setText("");
95 choisegrade(); 95 choisegrade();
96 break; 96 break;
97 case R.id.et_school: 97 case R.id.et_school:
98 if (TextUtils.isEmpty(register2) || TextUtils.isEmpty(register3)) { 98 if (TextUtils.isEmpty(register2) || TextUtils.isEmpty(register3)) {
99 AlertUtils.showToast(RegisterInfoActivity.this, "请选择年级和地址"); 99 AlertUtils.showToast(RegisterInfoActivity.this, "请选择年级和地址");
100 return; 100 return;
101 } else { 101 } else {
102 choiseschool(); 102 choiseschool();
103 } 103 }
104 104
105 break; 105 break;
106 case R.id.btn_ok: 106 case R.id.btn_ok:
107 if (TextUtils.isEmpty(register1) || 107 if (TextUtils.isEmpty(register1) ||
108 TextUtils.isEmpty(register2) || TextUtils.isEmpty(register3)) { 108 TextUtils.isEmpty(register2) || TextUtils.isEmpty(register3)) {
109 AlertUtils.showToast(RegisterInfoActivity.this, "请将必填项填写完整"); 109 AlertUtils.showToast(RegisterInfoActivity.this, "请将必填项填写完整");
110 return; 110 return;
111 } else { 111 } else {
112 String register5 = et_username.getText().toString().trim(); 112 String register5 = et_username.getText().toString().trim();
113 String register6 = et_region.getText().toString().trim(); 113 String register6 = et_region.getText().toString().trim();
114 String register7 = et_grade.getText().toString().trim(); 114 String register7 = et_grade.getText().toString().trim();
115 String register8 = et_school.getText().toString().trim(); 115 String register8 = et_school.getText().toString().trim();
116 String grade; 116 String grade = SaveParam.getInstance().getLoginParam(this, SaveParam.CHILDSGRADENS);
117 if (Content.accountflag == 2) { 117 if (Content.accountflag == 2) {
118 String accounts = SaveParam.getInstance().getCustomizeParam(RegisterInfoActivity.this,SaveParam.ACCOUNT); 118 String accounts = SaveParam.getInstance().getCustomizeParam(RegisterInfoActivity.this,SaveParam.ACCOUNT);
119 String userID = SaveParam.getInstance().getLoginParam(this, "userId"); 119 String userID = SaveParam.getInstance().getLoginParam(this, "userId");
120 if ("2".equals(accounts)){ 120 // if ("2".equals(accounts)){
121 grade = SaveParam.getInstance().getCustomizeParam(this, SaveParam.CHILDSGRADENS); 121 // grade = SaveParam.getInstance().getCustomizeParam(this, SaveParam.CHILDSGRADENS);
122 }else { 122 // }
123 grade = SaveParam.getInstance().getCustomizeParam(this, SaveParam.GRADENS); 123 //else {
124 } 124
125 // }
125 126
126 String School = SaveParam.getInstance().getLoginParam(this, SaveParam.SCHOOOlID); 127 String School = SaveParam.getInstance().getLoginParam(this, SaveParam.SCHOOOlID);
127 String regionId = SaveParam.getInstance().getsaveCityParam(this, SaveParam.COUNTRY); 128 String regionId = SaveParam.getInstance().getsaveCityParam(this, SaveParam.COUNTRY);
128 String regionId1 = SaveParam.getInstance().getsaveCityParam(this, SaveParam.CITYS); 129 String regionId1 = SaveParam.getInstance().getsaveCityParam(this, SaveParam.CITYS);
129 String devicenumber = GetDevicesUtil.getDevicesInfo(this).getDeviceNumber(); 130 String devicenumber = GetDevicesUtil.getDevicesInfo(this).getDeviceNumber();
130 if (regionId == null) { 131 if (regionId == null) {
131 regionId = regionId1; 132 regionId = regionId1;
132 } 133 }
133 134
134 try { 135 try {
135 Object schoolss; 136 Object schoolss;
136 long auserID = Long.parseLong(userID); 137 long auserID = Long.parseLong(userID);
137 long grades = Long.parseLong(grade); 138 long grades = Long.parseLong(grade);
138 if (TextUtils.isEmpty(register8)) { 139 if (TextUtils.isEmpty(register8)) {
139 schoolss = null; 140 schoolss = null;
140 } else { 141 } else {
141 schoolss = Long.parseLong(School); 142 schoolss = Long.parseLong(School);
142 } 143 }
143 long regionIds = Long.parseLong(regionId); 144 long regionIds = Long.parseLong(regionId);
144 HttpManager.getInstance().addchildAccountinfo(RegisterInfoActivity.this, auserID, "http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/a00de899-2f6d-43fb-9e30-71883842540e.png", 145 HttpManager.getInstance().addchildAccountinfo(RegisterInfoActivity.this, auserID, "http://hjxprodbucket.oss.aliyuncs.com/static/upload/boss_api/announcement/2017-08-29/a00de899-2f6d-43fb-9e30-71883842540e.png",
145 register5, grades, schoolss, regionIds, devicenumber, register6); 146 register5, grades, schoolss, regionIds, devicenumber, register6);
146 147
147 } catch (NumberFormatException e) { 148 } catch (NumberFormatException e) {
148 e.printStackTrace(); 149 e.printStackTrace();
149 } 150 }
150 151
151 } else { 152 } else {
152 savedata(); 153 savedata();
153 Intent intent = new Intent(); 154 Intent intent = new Intent();
154 intent.setClass(RegisterInfoActivity.this, ChoiseTextBookActivity.class); 155 intent.setClass(RegisterInfoActivity.this, ChoiseTextBookActivity.class);
155 startActivity(intent); 156 startActivity(intent);
156 overridePendingTransition(R.anim.rightin, R.anim.rightout); 157 overridePendingTransition(R.anim.rightin, R.anim.rightout);
157 } 158 }
158 159
159 } 160 }
160 161
161 break; 162 break;
162 } 163 }
163 164
164 } 165 }
165 166
166 private void savedata() { 167 private void savedata() {
167 String register9 = et_username.getText().toString().trim(); 168 String register9 = et_username.getText().toString().trim();
168 String register10 = et_region.getText().toString().trim(); 169 String register10 = et_region.getText().toString().trim();
169 String register11 = et_grade.getText().toString().trim(); 170 String register11 = et_grade.getText().toString().trim();
170 String register12 = et_school.getText().toString().trim(); 171 String register12 = et_school.getText().toString().trim();
171 SaveParam.getInstance().saveLoginParam(this,SaveParam.USERNAME,register9); 172 SaveParam.getInstance().saveLoginParam(this,SaveParam.USERNAME,register9);
172 SaveParam.getInstance().saveLoginParam(this,SaveParam.ADRESS,register10); 173 SaveParam.getInstance().saveLoginParam(this,SaveParam.ADRESS,register10);
173 SaveParam.getInstance().saveLoginParam(this,SaveParam.GRADES,register11); 174 SaveParam.getInstance().saveLoginParam(this,SaveParam.GRADES,register11);
174 SaveParam.getInstance().saveLoginParam(this,SaveParam.SCHOOL,register12); 175 SaveParam.getInstance().saveLoginParam(this,SaveParam.SCHOOL,register12);
175 176
176 } 177 }
177 178
178 @Override 179 @Override
179 protected void onResume() { 180 protected void onResume() {
180 super.onResume(); 181 super.onResume();
181 } 182 }
182 183
183 184
184 //选择地区 185 //选择地区
185 private void choiseregion() { 186 private void choiseregion() {
186 ProvinceListDialog.getInstance((DialogCallBack.ProvincesCallBack) RegisterInfoActivity.this).show(getSupportFragmentManager(), "ProvinceListDialog"); 187 ProvinceListDialog.getInstance((DialogCallBack.ProvincesCallBack) RegisterInfoActivity.this).show(getSupportFragmentManager(), "ProvinceListDialog");
187 188
188 } 189 }
189 190
190 //选择年级 191 //选择年级
191 private void choisegrade() { 192 private void choisegrade() {
192 GradeListDialog.getInstance((DialogCallBack.GradeCallBack) this).show(getSupportFragmentManager(), "GradeListDialog"); 193 GradeListDialog.getInstance((DialogCallBack.GradeCallBack) this).show(getSupportFragmentManager(), "GradeListDialog");
193 194
194 } 195 }
195 196
196 //选择学校 197 //选择学校
197 private void choiseschool() { 198 private void choiseschool() {
198 SchoolListDialog.getInstance((DialogCallBack.SchoolCallBack) this).show(getSupportFragmentManager(), "SchoolListDialog"); 199 SchoolListDialog.getInstance((DialogCallBack.SchoolCallBack) this).show(getSupportFragmentManager(), "SchoolListDialog");
199 200
200 } 201 }
201 202
202 203
203 @Override 204 @Override
204 public void provinceOnItemClick(ArrayList<ProvinceInfo.ProvincesBean> data, int position, int type) { 205 public void provinceOnItemClick(ArrayList<ProvinceInfo.ProvincesBean> data, int position, int type) {
205 String regionName = data.get(position).getRegionName(); 206 String regionName = data.get(position).getRegionName();
206 SaveParam.getInstance().saveLoginParam(this, "sheng", regionName); 207 SaveParam.getInstance().saveLoginParam(this, "sheng", regionName);
207 CitysListDialog.getInstance((DialogCallBack.CitysCallBack) this).show(getSupportFragmentManager(), "CitysListDialog"); 208 CitysListDialog.getInstance((DialogCallBack.CitysCallBack) this).show(getSupportFragmentManager(), "CitysListDialog");
208 et_region.setText(""); 209 et_region.setText("");
209 et_region.setText(regionName); 210 et_region.setText(regionName);
210 211
211 } 212 }
212 213
213 @Override 214 @Override
214 public boolean onKeyUp(int keyCode, KeyEvent event) { 215 public boolean onKeyUp(int keyCode, KeyEvent event) {
215 if (keyCode == KeyEvent.KEYCODE_BACK) { 216 if (keyCode == KeyEvent.KEYCODE_BACK) {
216 finish(); 217 finish();
217 218
218 } 219 }
219 return super.onKeyUp(keyCode, event); 220 return super.onKeyUp(keyCode, event);
220 } 221 }
221 222
222 @Override 223 @Override
223 public void province3OnItemClick(ArrayList<GradeInfo.DataBean.ChildrenBean> data, int position, int type) { 224 public void province3OnItemClick(ArrayList<GradeInfo.DataBean.ChildrenBean> data, int position, int type) {
224 String regionName = data.get(position).getName(); 225 String regionName = data.get(position).getName();
225 et_grade.setText(regionName); 226 et_grade.setText(regionName);
226 227
227 } 228 }
228 229
229 @Override 230 @Override
230 public void province1OnItemClick(ArrayList<CityInfo.CitiesBean> data, int position, int type) { 231 public void province1OnItemClick(ArrayList<CityInfo.CitiesBean> data, int position, int type) {
231 String regionName = data.get(position).getRegionName(); 232 String regionName = data.get(position).getRegionName();
232 String provice = SaveParam.getInstance().getLoginParam(this, "sheng"); 233 String provice = SaveParam.getInstance().getLoginParam(this, "sheng");
233 SaveParam.getInstance().saveLoginParam(this, "shi", regionName); 234 SaveParam.getInstance().saveLoginParam(this, "shi", regionName);
234 CountryDialog.getInstance((DialogCallBack.CountryCallBack) this).show(getSupportFragmentManager(), "CountryDialog"); 235 CountryDialog.getInstance((DialogCallBack.CountryCallBack) this).show(getSupportFragmentManager(), "CountryDialog");
235 et_region.setText(""); 236 et_region.setText("");
236 et_region.setText(provice + regionName); 237 et_region.setText(provice + regionName);
237 238
238 } 239 }
239 240
240 @Override 241 @Override
241 public void province2OnItemClick(ArrayList<CountyInfo.CountiesBean> data, int position, int type) { 242 public void province2OnItemClick(ArrayList<CountyInfo.CountiesBean> data, int position, int type) {
242 String regionName = data.get(position).getRegionName(); 243 String regionName = data.get(position).getRegionName();
243 String provices = SaveParam.getInstance().getLoginParam(this, "sheng"); 244 String provices = SaveParam.getInstance().getLoginParam(this, "sheng");
244 String citys = SaveParam.getInstance().getLoginParam(this, "shi"); 245 String citys = SaveParam.getInstance().getLoginParam(this, "shi");
245 et_region.setText(""); 246 et_region.setText("");
246 et_region.setText(provices + citys + regionName); 247 et_region.setText(provices + citys + regionName);
247 248
248 } 249 }
249 250
250 @Override 251 @Override
251 public void provinceO4nItemClick(ArrayList<SchoolInfo.DataBean> data, int position, int type) { 252 public void provinceO4nItemClick(ArrayList<SchoolInfo.DataBean> data, int position, int type) {
252 String regionName = data.get(position).getSchoolName(); 253 String regionName = data.get(position).getSchoolName();
253 et_school.setText(regionName); 254 et_school.setText(regionName);
254 255
255 } 256 }
256 } 257 }
257 258
PersonalCenter/app/src/main/java/com/hjx/personalcenter/activity/SysApplication.java
1 package com.hjx.personalcenter.activity; 1 package com.hjx.personalcenter.activity;
2 2
3 import android.app.Activity; 3 import android.app.Activity;
4 import android.app.Application; 4 import android.app.Application;
5 5
6 import java.util.LinkedList; 6 import java.util.LinkedList;
7 import java.util.List; 7 import java.util.List;
8 8
9 public class SysApplication extends Application { 9 public class SysApplication extends Application {
10 private List<Activity> mList = new LinkedList<Activity>(); 10 private List<Activity> mList = new LinkedList<Activity>();
11 private static SysApplication instance; 11 private static SysApplication instance;
12 12
13 private SysApplication() { 13 private SysApplication() {
14 } 14 }
15 15
16 public synchronized static SysApplication getInstance() { 16 public synchronized static SysApplication getInstance() {
17 if (null == instance) { 17 if (null == instance) {
18 instance = new SysApplication(); 18 instance = new SysApplication();
19 } 19 }
20 return instance; 20 return instance;
21 } 21 }
22 22
23 // add Activity 23 // add Activity
24 public void addActivity(Activity activity) { 24 public void addActivity(Activity activity) {
25 mList.add(activity); 25 mList.add(activity);
26 } 26 }
27 27
28 public void exit() { 28 public void exit() {
29 try { 29 try {
30 for (Activity activity : mList) { 30 for (Activity activity : mList) {
31 if (activity != null) 31 if (activity != null)
32 activity.finish(); 32 activity.finish();
33 } 33 }
34 } catch (Exception e) { 34 } catch (Exception e) {
35 e.printStackTrace(); 35 e.printStackTrace();
36 } finally { 36 } finally {
37 System.exit(0); 37 System.exit(0);
38 } 38 }
39 } 39 }
40 //结束指定的Activity
41 public void finishActivity(Activity activity) {
42 if (activity != null) {
43 mList.remove(activity);
44 activity.finish();
45 activity = null;
46 }
47 }
40 48
41 public void onLowMemory() { 49 public void onLowMemory() {
42 super.onLowMemory(); 50 super.onLowMemory();
43 System.gc(); 51 System.gc();
44 } 52 }
45 } 53 }
PersonalCenter/app/src/main/java/com/hjx/personalcenter/adapter/AccountChildsAdapter.java
1 package com.hjx.personalcenter.adapter; 1 package com.hjx.personalcenter.adapter;
2 2
3 import android.app.Activity; 3 import android.app.Activity;
4 import android.content.Context; 4 import android.content.Context;
5 import android.content.Intent; 5 import android.content.Intent;
6 import android.support.v4.app.FragmentActivity; 6 import android.support.v4.app.FragmentActivity;
7 import android.support.v7.widget.RecyclerView; 7 import android.support.v7.widget.RecyclerView;
8 import android.view.LayoutInflater; 8 import android.view.LayoutInflater;
9 import android.view.View; 9 import android.view.View;
10 import android.view.ViewGroup; 10 import android.view.ViewGroup;
11 import android.widget.ImageView; 11 import android.widget.ImageView;
12 import android.widget.LinearLayout; 12 import android.widget.LinearLayout;
13 import android.widget.TextView; 13 import android.widget.TextView;
14 14
15 import com.facebook.drawee.view.SimpleDraweeView; 15 import com.facebook.drawee.view.SimpleDraweeView;
16 import com.hjx.personalcenter.R; 16 import com.hjx.personalcenter.R;
17 import com.hjx.personalcenter.activity.RegisterInfoActivity; 17 import com.hjx.personalcenter.activity.RegisterInfoActivity;
18 import com.hjx.personalcenter.db.Content; 18 import com.hjx.personalcenter.db.Content;
19 import com.hjx.personalcenter.db.SaveParam; 19 import com.hjx.personalcenter.db.SaveParam;
20 import com.hjx.personalcenter.http.HttpManager; 20 import com.hjx.personalcenter.http.HttpManager;
21 import com.hjx.personalcenter.model.ChildsInfo; 21 import com.hjx.personalcenter.model.ChildsInfo;
22 import com.hjx.personalcenter.util.GetDevicesUtil; 22 import com.hjx.personalcenter.util.GetDevicesUtil;
23 import com.mylhyl.circledialog.CircleDialog; 23 import com.mylhyl.circledialog.CircleDialog;
24 24
25 import java.util.ArrayList; 25 import java.util.ArrayList;
26 import java.util.List; 26 import java.util.List;
27 27
28 /** 28 /**
29 * Created by h on 2017/8/26. 29 * Created by h on 2017/8/26.
30 */ 30 */
31 31
32 public class AccountChildsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> implements View.OnClickListener { 32 public class AccountChildsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> implements View.OnClickListener {
33 private List<ChildsInfo.DataBean> specailList; 33 private List<ChildsInfo.DataBean> specailList;
34 private LayoutInflater mInflater; 34 private LayoutInflater mInflater;
35 private Context mContext; 35 private Context mContext;
36 private static final int BODY_TYPE = 00002; 36 private static final int BODY_TYPE = 00002;
37 private static final int FOOT_TYPE = 00003; 37 private static final int FOOT_TYPE = 00003;
38 private int footCount = 1;//尾部个数,后续可以自己拓展 38 private int footCount = 1;//尾部个数,后续可以自己拓展
39 39
40 public AccountChildsAdapter(ArrayList<ChildsInfo.DataBean> specailList, Context context) { 40 public AccountChildsAdapter(ArrayList<ChildsInfo.DataBean> specailList, Context context) {
41 this.mContext = context; 41 this.mContext = context;
42 this.specailList = specailList; 42 this.specailList = specailList;
43 mInflater = LayoutInflater.from(context); 43 mInflater = LayoutInflater.from(context);
44 } 44 }
45 45
46 public OnItemClickListener mOnItemClickListener; 46 public OnItemClickListener mOnItemClickListener;
47 47
48 @Override 48 @Override
49 public void onClick(View v) { 49 public void onClick(View v) {
50 if (mOnItemClickListener == null) { 50 if (mOnItemClickListener == null) {
51 mOnItemClickListener.onItemClick(v, (int) v.getTag()); 51 mOnItemClickListener.onItemClick(v, (int) v.getTag());
52 } 52 }
53 53
54 } 54 }
55 55
56 private int getBodySize() { 56 private int getBodySize() {
57 return specailList.size(); 57 return specailList.size();
58 } 58 }
59 59
60 private boolean isFoot(int position) { 60 private boolean isFoot(int position) {
61 return footCount != 0 && (position >= (getBodySize())); 61 return footCount != 0 && (position >= (getBodySize()));
62 } 62 }
63 63
64 @Override 64 @Override
65 public int getItemViewType(int position) { 65 public int getItemViewType(int position) {
66 if (isFoot(position)) { 66 if (isFoot(position)) {
67 return FOOT_TYPE; 67 return FOOT_TYPE;
68 } else { 68 } else {
69 return BODY_TYPE; 69 return BODY_TYPE;
70 } 70 }
71 } 71 }
72 72
73 public interface OnItemClickListener { 73 public interface OnItemClickListener {
74 void onItemClick(View view, int position); 74 void onItemClick(View view, int position);
75 } 75 }
76 76
77 public void setOnItemClickListener(OnItemClickListener mOnItemClickLitener) { 77 public void setOnItemClickListener(OnItemClickListener mOnItemClickLitener) {
78 this.mOnItemClickListener = mOnItemClickLitener; 78 this.mOnItemClickListener = mOnItemClickLitener;
79 } 79 }
80 80
81 public void setList(List<ChildsInfo.DataBean> list) { 81 public void setList(List<ChildsInfo.DataBean> list) {
82 this.specailList = list; 82 this.specailList = list;
83 notifyDataSetChanged(); 83 notifyDataSetChanged();
84 } 84 }
85 85
86 @Override 86 @Override
87 public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 87 public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
88 switch (viewType) { 88 switch (viewType) {
89 case BODY_TYPE: 89 case BODY_TYPE:
90 return new AccountChildsHolder(mInflater.inflate(R.layout.recycler_childaccunt_item_view, parent, false)); 90 return new AccountChildsHolder(mInflater.inflate(R.layout.recycler_childaccunt_item_view, parent, false));
91 case FOOT_TYPE: 91 case FOOT_TYPE:
92 return new FootViewHolder(mInflater.inflate(R.layout.activity_account_management_add, parent, false)); 92 return new FootViewHolder(mInflater.inflate(R.layout.activity_account_management_add, parent, false));
93 default: 93 default:
94 return null; 94 return null;
95 } 95 }
96 // View view = ; 96 // View view = ;
97 // view.setOnClickListener(this); 97 // view.setOnClickListener(this);
98 // AccountChildsHolder holder = new AccountChildsHolder(view); 98 // AccountChildsHolder holder = new AccountChildsHolder(view);
99 // return holder; 99 // return holder;
100 } 100 }
101 101
102 @Override 102 @Override
103 public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { 103 public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
104 String account = SaveParam.getInstance().getCustomizeParam(mContext, SaveParam.ACCOUNT);
104 if (holder instanceof AccountChildsHolder) { 105 if (holder instanceof AccountChildsHolder) {
105 final ChildsInfo.DataBean bean = specailList.get(position); 106 final ChildsInfo.DataBean bean = specailList.get(position);
106 if (bean != null) { 107 if (bean != null) {
107 ((AccountChildsHolder) holder).mSimpleDraweeView.setImageURI(bean.getImage()); 108 ((AccountChildsHolder) holder).mSimpleDraweeView.setImageURI(bean.getImage());
108 ((AccountChildsHolder) holder).iv_child_name.setText(bean.getName()); 109 ((AccountChildsHolder) holder).iv_child_name.setText(bean.getName());
109 ((AccountChildsHolder) holder).iv_child_grade.setText(bean.getGrade()); 110 ((AccountChildsHolder) holder).iv_child_grade.setText(bean.getGrade());
110 ((AccountChildsHolder) holder).iv_child_school.setText(bean.getSchool()); 111 ((AccountChildsHolder) holder).iv_child_school.setText(bean.getSchool());
111 ((AccountChildsHolder) holder).iv_child_adress.setText(bean.getRegion()); 112 ((AccountChildsHolder) holder).iv_child_adress.setText(bean.getRegion());
112 if ("已使用".equals(bean.getStatus())) { 113
113 ((AccountChildsHolder) holder).chang_account.setText("使用中"); 114
114 ((AccountChildsHolder) holder).chang_account.setEnabled(false); 115 if (account.equals("1")) {
115 ((AccountChildsHolder) holder).delete_account.setEnabled(false);
116 ((AccountChildsHolder) holder).iv_using_pic.setVisibility(View.VISIBLE);
117 ((AccountChildsHolder) holder).ll_backgrangd.setBackgroundResource(R.drawable.corcle_blue_bg);
118 } else {
119 ((AccountChildsHolder) holder).chang_account.setText("切换用户"); 116 ((AccountChildsHolder) holder).chang_account.setText("切换用户");
120 ((AccountChildsHolder) holder).chang_account.setEnabled(true); 117 ((AccountChildsHolder) holder).chang_account.setEnabled(true);
121 ((AccountChildsHolder) holder).delete_account.setEnabled(true); 118 ((AccountChildsHolder) holder).delete_account.setEnabled(true);
122 ((AccountChildsHolder) holder).iv_using_pic.setVisibility(View.GONE); 119 ((AccountChildsHolder) holder).iv_using_pic.setVisibility(View.GONE);
123 ((AccountChildsHolder) holder).ll_backgrangd.setBackgroundResource(R.drawable.corcle_black_bg); 120 ((AccountChildsHolder) holder).ll_backgrangd.setBackgroundResource(R.drawable.corcle_black_bg);
121
122 } else {
123 if ("已使用".equals(bean.getStatus())) {
124 ((AccountChildsHolder) holder).chang_account.setText("使用中");
125 ((AccountChildsHolder) holder).chang_account.setEnabled(false);
126 ((AccountChildsHolder) holder).delete_account.setEnabled(false);
127 ((AccountChildsHolder) holder).iv_using_pic.setVisibility(View.VISIBLE);
128 ((AccountChildsHolder) holder).ll_backgrangd.setBackgroundResource(R.drawable.corcle_blue_bg);
129 } else {
130 ((AccountChildsHolder) holder).chang_account.setText("切换用户");
131 ((AccountChildsHolder) holder).chang_account.setEnabled(true);
132 ((AccountChildsHolder) holder).delete_account.setEnabled(true);
133 ((AccountChildsHolder) holder).iv_using_pic.setVisibility(View.GONE);
134 ((AccountChildsHolder) holder).ll_backgrangd.setBackgroundResource(R.drawable.corcle_black_bg);
135 }
124 } 136 }
125 ((AccountChildsHolder) holder).delete_account.setOnClickListener(new View.OnClickListener() { 137 ((AccountChildsHolder) holder).delete_account.setOnClickListener(new View.OnClickListener() {
126 @Override 138 @Override
127 public void onClick(View v) { 139 public void onClick(View v) {
128 new CircleDialog.Builder((FragmentActivity) mContext) 140 new CircleDialog.Builder((FragmentActivity) mContext)
129 .setCanceledOnTouchOutside(false) 141 .setCanceledOnTouchOutside(false)
130 .setWidth(0.4f) 142 .setWidth(0.4f)
131 .setCancelable(false) 143 .setCancelable(false)
132 .setText("您确定删除该子账户?") 144 .setText("您确定删除该子账户?")
133 .setNegative("取消", null) 145 .setNegative("取消", null)
134 .setPositive("确定", new View.OnClickListener() { 146 .setPositive("确定", new View.OnClickListener() {
135 @Override 147 @Override
136 public void onClick(View v) { 148 public void onClick(View v) {
137 HttpManager.getInstance().deletechildAccountinfo(mContext, bean.getSubAccountId()); 149 HttpManager.getInstance().deletechildAccountinfo(mContext, bean.getSubAccountId());
138 } 150 }
139 }) 151 })
140 .show(); 152 .show();
141 153
142 154
143 } 155 }
144 }); 156 });
145 ((AccountChildsHolder) holder).chang_account.setOnClickListener(new View.OnClickListener() { 157 ((AccountChildsHolder) holder).chang_account.setOnClickListener(new View.OnClickListener() {
146 @Override 158 @Override
147 public void onClick(View v) { 159 public void onClick(View v) {
148 new CircleDialog.Builder((FragmentActivity) mContext) 160 new CircleDialog.Builder((FragmentActivity) mContext)
149 .setCanceledOnTouchOutside(false) 161 .setCanceledOnTouchOutside(false)
150 .setWidth(0.4f) 162 .setWidth(0.4f)
151 .setCancelable(false) 163 .setCancelable(false)
152 .setText("您确定切换为该子账户?") 164 .setText("您确定切换为该子账户?")
153 .setNegative("取消", null) 165 .setNegative("取消", null)
154 .setPositive("确定", new View.OnClickListener() { 166 .setPositive("确定", new View.OnClickListener() {
155 @Override 167 @Override
156 public void onClick(View v) { 168 public void onClick(View v) {
157 Content.changgeaccountflag = 2; 169 Content.changgeaccountflag = 2;
158 SaveParam.getInstance().saveCustomizeParam(mContext, SaveParam.ACCOUNT, "2"); 170 SaveParam.getInstance().saveCustomizeParam(mContext, SaveParam.ACCOUNT, "2");
159 SaveParam.getInstance().saveCustomizeParam(mContext, SaveParam.CHILDSID, bean.getSubAccountId()); 171 SaveParam.getInstance().saveCustomizeParam(mContext, SaveParam.CHILDSID, bean.getSubAccountId());
160 //保存子账号年级id 172 //保存子账号年级id
161 SaveParam.getInstance().saveCustomizeParam(mContext, SaveParam.CHILDSGRADENS, bean.getGradeId()); 173 //SaveParam.getInstance().saveCustomizeParam(mContext, SaveParam.CHILDSGRADENS, bean.getGradeId());
162 String devicenumber = GetDevicesUtil.getDevicesInfo(mContext).getDeviceNumber(); 174 String devicenumber = GetDevicesUtil.getDevicesInfo(mContext).getDeviceNumber();
163 HttpManager.getInstance().changechildAccountinfo(mContext, bean.getSubAccountId(), bean.getParentId(), 175 HttpManager.getInstance().changechildAccountinfo(mContext, bean.getSubAccountId(), bean.getParentId(),
164 devicenumber, 2); 176 devicenumber, 2);
165 } 177 }
166 }) 178 })
167 .show(); 179 .show();
168 180
169 } 181 }
170 }); 182 });
171 183
172 } 184 }
173 185
174 } else if (holder instanceof FootViewHolder) { 186 } else if (holder instanceof FootViewHolder) {
175 ((FootViewHolder) holder).add_account.setOnClickListener(new View.OnClickListener() { 187 ((FootViewHolder) holder).add_account.setOnClickListener(new View.OnClickListener() {
176 @Override 188 @Override
177 public void onClick(View v) { 189 public void onClick(View v) {
178 Content.accountflag = 2; 190 Content.accountflag = 2;
179 Intent account = new Intent(); 191 Intent account = new Intent();
180 account.setClass(mContext, RegisterInfoActivity.class); 192 account.setClass(mContext, RegisterInfoActivity.class);
181 mContext.startActivity(account); 193 mContext.startActivity(account);
182 ((Activity) mContext).overridePendingTransition(R.anim.rightin, R.anim.rightout); 194 ((Activity) mContext).overridePendingTransition(R.anim.rightin, R.anim.rightout);
183 195
184 } 196 }
185 }); 197 });
186 } 198 }
187 199
188 200
189 } 201 }
190 202
191 @Override 203 @Override
192 public int getItemCount() { 204 public int getItemCount() {
193 205
194 return getBodySize() + footCount; 206 return getBodySize() + footCount;
195 } 207 }
196 208
197 private static class AccountChildsHolder extends RecyclerView.ViewHolder { 209 private static class AccountChildsHolder extends RecyclerView.ViewHolder {
198 ImageView iv_using_pic; 210 ImageView iv_using_pic;
199 LinearLayout ll_backgrangd; 211 LinearLayout ll_backgrangd;
200 SimpleDraweeView mSimpleDraweeView; 212 SimpleDraweeView mSimpleDraweeView;
201 TextView iv_child_name, iv_child_grade, iv_child_school, iv_child_adress, 213 TextView iv_child_name, iv_child_grade, iv_child_school, iv_child_adress,
202 delete_account, chang_account; 214 delete_account, chang_account;
203 215
204 public AccountChildsHolder(View itemView) { 216 public AccountChildsHolder(View itemView) {
205 super(itemView); 217 super(itemView);
206 mSimpleDraweeView = (SimpleDraweeView) itemView.findViewById(R.id.iv_child_head); 218 mSimpleDraweeView = (SimpleDraweeView) itemView.findViewById(R.id.iv_child_head);
207 iv_child_name = (TextView) itemView.findViewById(R.id.iv_child_name); 219 iv_child_name = (TextView) itemView.findViewById(R.id.iv_child_name);
208 iv_child_grade = (TextView) itemView.findViewById(R.id.iv_child_grade); 220 iv_child_grade = (TextView) itemView.findViewById(R.id.iv_child_grade);
209 iv_child_school = (TextView) itemView.findViewById(R.id.iv_child_school); 221 iv_child_school = (TextView) itemView.findViewById(R.id.iv_child_school);
210 iv_child_adress = (TextView) itemView.findViewById(R.id.iv_child_adress); 222 iv_child_adress = (TextView) itemView.findViewById(R.id.iv_child_adress);
211 delete_account = (TextView) itemView.findViewById(R.id.delete_child_account); 223 delete_account = (TextView) itemView.findViewById(R.id.delete_child_account);
212 chang_account = (TextView) itemView.findViewById(R.id.chang_account); 224 chang_account = (TextView) itemView.findViewById(R.id.chang_account);
213 iv_using_pic = (ImageView) itemView.findViewById(R.id.iv_using_pic); 225 iv_using_pic = (ImageView) itemView.findViewById(R.id.iv_using_pic);
214 ll_backgrangd = (LinearLayout) itemView.findViewById(R.id.ll_backgrangd); 226 ll_backgrangd = (LinearLayout) itemView.findViewById(R.id.ll_backgrangd);
215 227
216 } 228 }
217 } 229 }
218 230
219 private static class FootViewHolder extends RecyclerView.ViewHolder { 231 private static class FootViewHolder extends RecyclerView.ViewHolder {
220 LinearLayout add_account; 232 LinearLayout add_account;
221 233
222 public FootViewHolder(View itemView) { 234 public FootViewHolder(View itemView) {
223 super(itemView); 235 super(itemView);
PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/GradeListDialog.java
1 package com.hjx.personalcenter.customdialog; 1 package com.hjx.personalcenter.customdialog;
2 2
3 import android.annotation.SuppressLint; 3 import android.annotation.SuppressLint;
4 import android.content.Context; 4 import android.content.Context;
5 import android.graphics.Color; 5 import android.graphics.Color;
6 import android.os.Bundle; 6 import android.os.Bundle;
7 import android.os.Handler; 7 import android.os.Handler;
8 import android.os.Message; 8 import android.os.Message;
9 import android.view.Gravity; 9 import android.view.Gravity;
10 import android.view.LayoutInflater; 10 import android.view.LayoutInflater;
11 import android.view.View; 11 import android.view.View;
12 import android.view.ViewGroup; 12 import android.view.ViewGroup;
13 import android.widget.AdapterView; 13 import android.widget.AdapterView;
14 import android.widget.ImageView; 14 import android.widget.ImageView;
15 import android.widget.ListView; 15 import android.widget.ListView;
16 16
17 import com.hjx.personalcenter.R; 17 import com.hjx.personalcenter.R;
18 import com.hjx.personalcenter.adapter.GrandeAdapter; 18 import com.hjx.personalcenter.adapter.GrandeAdapter;
19 import com.hjx.personalcenter.db.SaveParam; 19 import com.hjx.personalcenter.db.SaveParam;
20 import com.hjx.personalcenter.http.HttpCode; 20 import com.hjx.personalcenter.http.HttpCode;
21 import com.hjx.personalcenter.http.HttpManager; 21 import com.hjx.personalcenter.http.HttpManager;
22 import com.hjx.personalcenter.interfaces.DialogCallBack; 22 import com.hjx.personalcenter.interfaces.DialogCallBack;
23 import com.hjx.personalcenter.model.GradeInfo; 23 import com.hjx.personalcenter.model.GradeInfo;
24 import com.mylhyl.circledialog.BaseCircleDialog; 24 import com.mylhyl.circledialog.BaseCircleDialog;
25 import com.mylhyl.circledialog.res.values.CircleDimen; 25 import com.mylhyl.circledialog.res.values.CircleDimen;
26 26
27 import java.util.ArrayList; 27 import java.util.ArrayList;
28 import java.util.List; 28 import java.util.List;
29 29
30 /**自定义年级列表对话框 30 /**自定义年级列表对话框
31 * Created by h on 2017/8/10. 31 * Created by h on 2017/8/10.
32 */ 32 */
33 @SuppressLint("ValidFragment") 33 @SuppressLint("ValidFragment")
34 public class GradeListDialog extends BaseCircleDialog implements AdapterView.OnItemClickListener { 34 public class GradeListDialog extends BaseCircleDialog implements AdapterView.OnItemClickListener {
35 private GrandeAdapter listadapter; 35 private GrandeAdapter listadapter;
36 private ListView listView; 36 private ListView listView;
37 private ImageView cance; 37 private ImageView cance;
38 ArrayList<GradeInfo.DataBean.ChildrenBean> data = new ArrayList<>(); 38 ArrayList<GradeInfo.DataBean.ChildrenBean> data = new ArrayList<>();
39 private DialogCallBack.GradeCallBack mCallBack; 39 private DialogCallBack.GradeCallBack mCallBack;
40 public GradeListDialog(DialogCallBack.GradeCallBack callBack) { 40 public GradeListDialog(DialogCallBack.GradeCallBack callBack) {
41 this.mCallBack = callBack; 41 this.mCallBack = callBack;
42 } 42 }
43 public static GradeListDialog getInstance(DialogCallBack.GradeCallBack callBack) { 43 public static GradeListDialog getInstance(DialogCallBack.GradeCallBack callBack) {
44 GradeListDialog dialogFragment = new GradeListDialog(callBack); 44 GradeListDialog dialogFragment = new GradeListDialog(callBack);
45 dialogFragment.setCanceledBack(true); 45 dialogFragment.setCanceledBack(true);
46 dialogFragment.setCanceledOnTouchOutside(true); 46 dialogFragment.setCanceledOnTouchOutside(true);
47 dialogFragment.setRadius(CircleDimen.RADIUS); 47 dialogFragment.setRadius(CircleDimen.RADIUS);
48 dialogFragment.setWidth(0.5f); 48 dialogFragment.setWidth(0.5f);
49 dialogFragment.setGravity(Gravity.CENTER); 49 dialogFragment.setGravity(Gravity.CENTER);
50 dialogFragment.setBackgroundColor(Color.WHITE); 50 dialogFragment.setBackgroundColor(Color.WHITE);
51 return dialogFragment; 51 return dialogFragment;
52 } 52 }
53 Handler handler = new Handler(){ 53 Handler handler = new Handler(){
54 @Override 54 @Override
55 public void handleMessage(Message msg) { 55 public void handleMessage(Message msg) {
56 super.handleMessage(msg); 56 super.handleMessage(msg);
57 switch (msg.what){ 57 switch (msg.what){
58 case HttpCode.GRADER: 58 case HttpCode.GRADER:
59 data.clear(); 59 data.clear();
60 data.addAll( (List<GradeInfo.DataBean.ChildrenBean>)msg.obj); 60 data.addAll( (List<GradeInfo.DataBean.ChildrenBean>)msg.obj);
61 listadapter.notifyDataSetChanged(); 61 listadapter.notifyDataSetChanged();
62 break; 62 break;
63 } 63 }
64 } 64 }
65 }; 65 };
66 @Override 66 @Override
67 public View createView(Context context, LayoutInflater inflater, ViewGroup container) { 67 public View createView(Context context, LayoutInflater inflater, ViewGroup container) {
68 68
69 return inflater.inflate(R.layout.custom_adilog_gradelist, container, false); 69 return inflater.inflate(R.layout.custom_adilog_gradelist, container, false);
70 } 70 }
71 @Override 71 @Override
72 public void onActivityCreated(Bundle savedInstanceState) { 72 public void onActivityCreated(Bundle savedInstanceState) {
73 super.onActivityCreated(savedInstanceState); 73 super.onActivityCreated(savedInstanceState);
74 listView = (ListView) getView().findViewById(R.id.listadapter); 74 listView = (ListView) getView().findViewById(R.id.listadapter);
75 cance = (ImageView) getView().findViewById(R.id.cancel); 75 cance = (ImageView) getView().findViewById(R.id.cancel);
76 listadapter = new GrandeAdapter(data,getActivity()); 76 listadapter = new GrandeAdapter(data,getActivity());
77 listView.setAdapter(listadapter); 77 listView.setAdapter(listadapter);
78 listView.setOnItemClickListener(this); 78 listView.setOnItemClickListener(this);
79 cance.setOnClickListener(new View.OnClickListener() { 79 cance.setOnClickListener(new View.OnClickListener() {
80 @Override 80 @Override
81 public void onClick(View v) { 81 public void onClick(View v) {
82 dismiss(); 82 dismiss();
83 } 83 }
84 }); 84 });
85 HttpManager.getInstance().getgrade(getActivity(),handler); 85 HttpManager.getInstance().getgrade(getActivity(),handler);
86 86
87 } 87 }
88 88
89 @Override 89 @Override
90 public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 90 public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
91 String accounts = SaveParam.getInstance().getCustomizeParam(getActivity(),SaveParam.ACCOUNT); 91 //String accounts = SaveParam.getInstance().getCustomizeParam(getActivity(),SaveParam.ACCOUNT);
92 if ("2".equals(accounts)){ 92 // if ("2".equals(accounts)){
93 SaveParam.getInstance().saveCustomizeParam(getActivity(), SaveParam.CHILDSGRADENS, ""+data.get(position).getId()); 93 SaveParam.getInstance().saveLoginParam(getActivity(), SaveParam.CHILDSGRADENS, ""+data.get(position).getId());
94 }else { 94 // }else {
95 SaveParam.getInstance().saveCustomizeParam(getActivity(), SaveParam.GRADENS, ""+data.get(position).getId()); 95 // SaveParam.getInstance().saveLoginParam(getActivity(), SaveParam.GRADENS, ""+data.get(position).getId());
96 } 96 // }
97 97
98 98
99 99
100 mCallBack.province3OnItemClick(data,position,5); 100 mCallBack.province3OnItemClick(data,position,5);
101 dismiss(); 101 dismiss();
102 102
103 103
104 } 104 }
105 } 105 }
106 106
PersonalCenter/app/src/main/java/com/hjx/personalcenter/customdialog/SchoolListDialog.java
1 package com.hjx.personalcenter.customdialog; 1 package com.hjx.personalcenter.customdialog;
2 2
3 import android.annotation.SuppressLint; 3 import android.annotation.SuppressLint;
4 import android.content.Context; 4 import android.content.Context;
5 import android.graphics.Color; 5 import android.graphics.Color;
6 import android.os.Bundle; 6 import android.os.Bundle;
7 import android.os.Handler; 7 import android.os.Handler;
8 import android.os.Message; 8 import android.os.Message;
9 import android.text.Editable; 9 import android.text.Editable;
10 import android.text.TextWatcher; 10 import android.text.TextWatcher;
11 import android.util.Log; 11 import android.util.Log;
12 import android.view.Gravity; 12 import android.view.Gravity;
13 import android.view.LayoutInflater; 13 import android.view.LayoutInflater;
14 import android.view.View; 14 import android.view.View;
15 import android.view.ViewGroup; 15 import android.view.ViewGroup;
16 import android.widget.AdapterView; 16 import android.widget.AdapterView;
17 import android.widget.EditText; 17 import android.widget.EditText;
18 import android.widget.ImageView; 18 import android.widget.ImageView;
19 import android.widget.ListView; 19 import android.widget.ListView;
20 20
21 import com.hjx.personalcenter.R; 21 import com.hjx.personalcenter.R;
22 import com.hjx.personalcenter.adapter.SchoolAdapter; 22 import com.hjx.personalcenter.adapter.SchoolAdapter;
23 import com.hjx.personalcenter.db.Content;
23 import com.hjx.personalcenter.db.SaveParam; 24 import com.hjx.personalcenter.db.SaveParam;
24 import com.hjx.personalcenter.http.HttpCode; 25 import com.hjx.personalcenter.http.HttpCode;
25 import com.hjx.personalcenter.http.HttpManager; 26 import com.hjx.personalcenter.http.HttpManager;
26 import com.hjx.personalcenter.interfaces.DialogCallBack; 27 import com.hjx.personalcenter.interfaces.DialogCallBack;
27 import com.hjx.personalcenter.model.SchoolInfo; 28 import com.hjx.personalcenter.model.SchoolInfo;
28 import com.mylhyl.circledialog.BaseCircleDialog; 29 import com.mylhyl.circledialog.BaseCircleDialog;
29 import com.mylhyl.circledialog.res.values.CircleDimen; 30 import com.mylhyl.circledialog.res.values.CircleDimen;
30 31
31 import java.util.ArrayList; 32 import java.util.ArrayList;
32 import java.util.List; 33 import java.util.List;
33 34
34 /** 35 /**
35 * Created by h on 2017/8/21. 36 * Created by h on 2017/8/21.
36 */ 37 */
37 @SuppressLint("ValidFragment") 38 @SuppressLint("ValidFragment")
38 public class SchoolListDialog extends BaseCircleDialog implements AdapterView.OnItemClickListener { 39 public class SchoolListDialog extends BaseCircleDialog implements AdapterView.OnItemClickListener {
39 private ListView school_list; 40 private ListView school_list;
40 private EditText school_sech; 41 private EditText school_sech;
41 private SchoolAdapter listadapter; 42 private SchoolAdapter listadapter;
42 private ImageView cance; 43 private ImageView cance;
43 private View mView; 44 private View mView;
44 boolean isFilter; 45 boolean isFilter;
45 ArrayList<SchoolInfo.DataBean> data = new ArrayList<>(); 46 ArrayList<SchoolInfo.DataBean> data = new ArrayList<>();
46 private DialogCallBack.SchoolCallBack mCallBack; 47 private DialogCallBack.SchoolCallBack mCallBack;
47 48
48 // public SchoolListDialog(DialogCallBack.CallBackView callBack) { 49 // public SchoolListDialog(DialogCallBack.CallBackView callBack) {
49 // this.mCallBack = callBack; 50 // this.mCallBack = callBack;
50 // } 51 // }
51 public SchoolListDialog(DialogCallBack.SchoolCallBack callBack) { 52 public SchoolListDialog(DialogCallBack.SchoolCallBack callBack) {
52 this.mCallBack = callBack; 53 this.mCallBack = callBack;
53 } 54 }
54 55
55 public static SchoolListDialog getInstance(DialogCallBack.SchoolCallBack mCallBack) { 56 public static SchoolListDialog getInstance(DialogCallBack.SchoolCallBack mCallBack) {
56 SchoolListDialog dialogFragment = new SchoolListDialog(mCallBack); 57 SchoolListDialog dialogFragment = new SchoolListDialog(mCallBack);
57 dialogFragment.setCanceledBack(true); 58 dialogFragment.setCanceledBack(true);
58 dialogFragment.setCanceledOnTouchOutside(true); 59 dialogFragment.setCanceledOnTouchOutside(true);
59 dialogFragment.setRadius(CircleDimen.RADIUS); 60 dialogFragment.setRadius(CircleDimen.RADIUS);
60 dialogFragment.setWidth(0.5f); 61 dialogFragment.setWidth(0.5f);
61 dialogFragment.setGravity(Gravity.CENTER); 62 dialogFragment.setGravity(Gravity.CENTER);
62 dialogFragment.setBackgroundColor(Color.WHITE); 63 dialogFragment.setBackgroundColor(Color.WHITE);
63 return dialogFragment; 64 return dialogFragment;
64 } 65 }
65 66
66 Handler handler = new Handler(){ 67 Handler handler = new Handler(){
67 @Override 68 @Override
68 public void handleMessage(Message msg) { 69 public void handleMessage(Message msg) {
69 super.handleMessage(msg); 70 super.handleMessage(msg);
70 switch (msg.what){ 71 switch (msg.what){
71 case HttpCode.SCHOOL: 72 case HttpCode.SCHOOL:
72 data.clear(); 73 data.clear();
73 data.addAll( (List<SchoolInfo.DataBean>)msg.obj); 74 data.addAll( (List<SchoolInfo.DataBean>)msg.obj);
74 listadapter.notifyDataSetChanged(); 75 listadapter.notifyDataSetChanged();
75 break; 76 break;
76 } 77 }
77 } 78 }
78 }; 79 };
79 80
80 81
81 @Override 82 @Override
82 public View createView(Context context, LayoutInflater inflater, ViewGroup container) { 83 public View createView(Context context, LayoutInflater inflater, ViewGroup container) {
83 84
84 if (mView == null) { 85 if (mView == null) {
85 mView = inflater.inflate(R.layout.custom_adilog_school_list, container, false); 86 mView = inflater.inflate(R.layout.custom_adilog_school_list, container, false);
86 //mCallBack.provinceOnItemClick(context, inflater, container); 87 //mCallBack.provinceOnItemClick(context, inflater, container);
87 } 88 }
88 return mView; 89 return mView;
89 } 90 }
90 91
91 @Override 92 @Override
92 public void onActivityCreated(Bundle savedInstanceState) { 93 public void onActivityCreated(Bundle savedInstanceState) {
93 super.onActivityCreated(savedInstanceState); 94 super.onActivityCreated(savedInstanceState);
94 school_list = (ListView) getView().findViewById(R.id.listschooladapter); 95 school_list = (ListView) getView().findViewById(R.id.listschooladapter);
95 school_sech = (EditText) getView().findViewById(R.id.et_school_sech); 96 school_sech = (EditText) getView().findViewById(R.id.et_school_sech);
96 cance = (ImageView) getView().findViewById(R.id.cancel); 97 cance = (ImageView) getView().findViewById(R.id.cancel);
97 String citys = SaveParam.getInstance().getsaveCityParam(getActivity(), SaveParam.CITYS); 98 String citys = SaveParam.getInstance().getsaveCityParam(getActivity(), SaveParam.CITYS);
98 String country = SaveParam.getInstance().getsaveCityParam(getActivity(), SaveParam.COUNTRY); 99 String country = SaveParam.getInstance().getsaveCityParam(getActivity(), SaveParam.COUNTRY);
99 if (country==null){ 100 if (country==null){
100 country =citys; 101 country =citys;
101 } 102 }
102 String grade = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.GRADENS); 103 String grade;
104 if ( Content.changeinfoflag == true){
105 grade=SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.CHILDSGRADENS);
106 }else {
107 grade=SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.GRADENS);
108 }
103 listadapter = new SchoolAdapter(data, getActivity()); 109 listadapter = new SchoolAdapter(data, getActivity());
104 school_list.setAdapter(listadapter); 110 school_list.setAdapter(listadapter);
105 school_list.setOnItemClickListener(this); 111 school_list.setOnItemClickListener(this);
106 cance.setOnClickListener(new View.OnClickListener() { 112 cance.setOnClickListener(new View.OnClickListener() {
107 @Override 113 @Override
108 public void onClick(View v) { 114 public void onClick(View v) {
109 dismiss(); 115 dismiss();
110 } 116 }
111 }); 117 });
112 try { 118 try {
113 int a = Integer.parseInt(country); 119 int a = Integer.parseInt(country);
114 int b = Integer.parseInt(grade); 120 int b = Integer.parseInt(grade);
115 Log.e("test","地区ID"+country+"年级ID"+grade); 121 Log.e("test","地区ID"+country+"年级ID"+grade);
116 HttpManager.getInstance().getschool(getActivity(),a,b,handler); 122 HttpManager.getInstance().getschool(getActivity(),a,b,handler);
117 } catch (NumberFormatException e) { 123 } catch (NumberFormatException e) {
118 e.printStackTrace(); 124 e.printStackTrace();
119 } 125 }
120 intiEditView(); 126 intiEditView();
121 127
122 128
123 } 129 }
130
124 private void intiEditView() { 131 private void intiEditView() {
125 school_sech.addTextChangedListener(new TextWatcher() { 132 school_sech.addTextChangedListener(new TextWatcher() {
126 @Override 133 @Override
127 public void beforeTextChanged(CharSequence s, int start, int count, int after) { 134 public void beforeTextChanged(CharSequence s, int start, int count, int after) {
128 135
129 } 136 }
130 137
131 @Override 138 @Override
132 public void onTextChanged(CharSequence s, int start, int before, int count) { 139 public void onTextChanged(CharSequence s, int start, int before, int count) {
133 // mAdapter.getFilter().filter(s); 140 // mAdapter.getFilter().filter(s);
134 141
135 listadapter.getFilter().filter(s); 142 listadapter.getFilter().filter(s);
136 } 143 }
137 144
138 @Override 145 @Override
139 public void afterTextChanged(Editable s) { 146 public void afterTextChanged(Editable s) {
140 147
141 } 148 }
142 }); 149 });
143 } 150 }
144 151
145 @Override 152 @Override
146 public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 153 public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
147 SaveParam.getInstance().saveLoginParam(getActivity(), SaveParam.SCHOOOlID, ""+data.get(position).getSchoolId()); 154 SaveParam.getInstance().saveLoginParam(getActivity(), SaveParam.SCHOOOlID, ""+data.get(position).getSchoolId());
148 mCallBack.provinceO4nItemClick(data,position,4); 155 mCallBack.provinceO4nItemClick(data,position,4);
149 dismiss(); 156 dismiss();
150 157
151 } 158 }
152 } 159 }
153 160
PersonalCenter/app/src/main/java/com/hjx/personalcenter/db/Content.java
1 package com.hjx.personalcenter.db; 1 package com.hjx.personalcenter.db;
2 2
3 /** 3 /**
4 * Created by h on 2017/8/17. 4 * Created by h on 2017/8/17.
5 */ 5 */
6 6
7 public class Content { 7 public class Content {
8 public static int authcodeflag;//其他是进入填写保卡信息验证,2是修改保卡手机号验证,1是更改绑定验证 8 public static int authcodeflag;//其他是进入填写保卡信息验证,2是修改保卡手机号验证,1是更改绑定验证
9 public static int adressflag;//1购买地址,2客户地址 9 public static int adressflag;//1购买地址,2客户地址
10 public static int accountflag;//1主账户注册信息,2子账户注册信息 10 public static int accountflag;//1主账户注册信息,2子账户注册信息
11 public static int changgeaccountflag;//账户切换成功标志 11 public static int changgeaccountflag;//账户切换成功标志
12 public static int changeinfoflag;//1提交个人信息2是提交版本信息 12 public static boolean changeinfoflag = false;//1选年级是否点击
13 public static int cardintentflag;//1跳转绑定二维码2跳转开始界面 13 public static int cardintentflag;//1跳转绑定二维码2跳转开始界面
14 } 14 }
15 15
PersonalCenter/app/src/main/java/com/hjx/personalcenter/db/SaveParam.java
1 package com.hjx.personalcenter.db; 1 package com.hjx.personalcenter.db;
2 2
3 import android.app.Activity; 3 import android.app.Activity;
4 import android.content.Context; 4 import android.content.Context;
5 import android.content.SharedPreferences; 5 import android.content.SharedPreferences;
6 6
7 public class SaveParam { 7 public class SaveParam {
8 8
9 private static SaveParam instance; 9 private static SaveParam instance;
10 public static SaveParam getInstance(){ 10 public static SaveParam getInstance(){
11 if (instance==null){ 11 if (instance==null){
12 instance = new SaveParam(); 12 instance = new SaveParam();
13 } 13 }
14 return instance; 14 return instance;
15 } 15 }
16 public static String GRADERFLAG = "graderflag";//子账号id
16 public static String CHILDSID = "childID";//子账号id 17 public static String CHILDSID = "childID";//子账号id
17 public static String CHILDSGRADENS = "childs";//子账号年级id 18 public static String CHILDSGRADENS = "childs";//子账号年级id
18 public static String GRADENS = "gradens";//年级id 19 public static String GRADENS = "gradens";//年级id
19 public static String SCHOOOlID = "schoolid";//学校id 20 public static String SCHOOOlID = "schoolid";//学校id
20 //个人信息 21 //个人信息
21 public static String USERNAME = "usernames";//昵称 22 public static String USERNAME = "usernames";//昵称
22 public static String ADRESS = "adress";//地址 23 public static String ADRESS = "adress";//地址
23 public static String GRADES = "gadens";//年级 24 public static String GRADES = "gadens";//年级
24 public static String SCHOOL = "school";//学校 25 public static String SCHOOL = "school";//学校
25 public static String CONSTELLATION = "constellations";//星座 26 public static String CONSTELLATION = "constellations";//星座
26 public static String HEADURL = "headurl";//头像 27 public static String HEADURL = "headurl";//头像
27 28
28 //用户个人信息 29 //用户个人信息
29 public static String ACCOUNTUSERNAME = "accountusernames";//昵称 30 public static String ACCOUNTUSERNAME = "accountusernames";//昵称
30 public static String ACCOUNTADRESS = "accountadress";//地址 31 public static String ACCOUNTADRESS = "accountadress";//地址
31 public static String ACCOUNTGRADES = "accountgadens";//年级 32 public static String ACCOUNTGRADES = "accountgadens";//年级
32 public static String ACCOUNTSCHOOL = "accountschool";//学校 33 public static String ACCOUNTSCHOOL = "accountschool";//学校
33 public static String ACCOUNTCONSTELLATION = "accountbthday";//生日 34 public static String ACCOUNTCONSTELLATION = "accountbthday";//生日
34 public static String ACCOUNTSEX = "accountsex";//性别 35 public static String ACCOUNTSEX = "accountsex";//性别
35 public static String ACCOUNTQQ= "accountqq";//qq 36 public static String ACCOUNTQQ= "accountqq";//qq
36 public static String ACCOUNTXINGZUO = "accountxingzuo";//详细地址 37 public static String ACCOUNTXINGZUO = "accountxingzuo";//详细地址
37 38
38 //电子保卡信息 39 //电子保卡信息
39 public static String CARDPHONE = "cardphone";//保卡手机号 40 public static String CARDPHONE = "cardphone";//保卡手机号
40 public static String CUNSTEMNAME = "cunstemname";//客户姓名 41 public static String CUNSTEMNAME = "cunstemname";//客户姓名
41 public static String ADRESSCUNSTEM = "adresscunstem";//客户地址 42 public static String ADRESSCUNSTEM = "adresscunstem";//客户地址
42 public static String SHOPTIME = "shoptime";//购买时间 43 public static String SHOPTIME = "shoptime";//购买时间
43 public static String SHOPADRESS = "shopadress";//购买地址 44 public static String SHOPADRESS = "shopadress";//购买地址
44 public static String SHOPTLEPHONE = "shoptlephone";//售后电话 45 public static String SHOPTLEPHONE = "shoptlephone";//售后电话
45 46
46 //省市区参数、 47 //省市区参数、
47 public static String PROVINCES = "provinces";//省 48 public static String PROVINCES = "provinces";//省
48 public static String CITYS = "citys";//市 49 public static String CITYS = "citys";//市
49 public static String COUNTRY = "country";//区 50 public static String COUNTRY = "country";//区
50 51
51 //账户管理 52 //账户管理
52 public static String ACCOUNT = "account";//账户类型 53 public static String ACCOUNT = "account";//账户类型
53 //科目信息 54 //科目信息
54 public static String SUBJECT = "subject"; 55 public static String SUBJECT = "subject";
55 //样机 56 //样机
56 public static String YANGJI = "yangji"; 57 public static String YANGJI = "yangji";
57 //图片URL 58 //图片URL
58 public static String IMGURL = "imgurl"; 59 public static String IMGURL = "imgurl";
59 //版本名称 60 //版本名称
60 public static String VERSION = "version"; 61 public static String VERSION = "version";
61 62
62 63
63 public void saveLoginParam(Context context,String spname, String spstr) { 64 public void saveLoginParam(Context context,String spname, String spstr) {
64 SharedPreferences sp = context.getSharedPreferences("loginparam", 65 SharedPreferences sp = context.getSharedPreferences("loginparam",
65 Activity.MODE_PRIVATE); 66 Activity.MODE_PRIVATE);
66 67
67 sp.edit().putString(spname, spstr).commit(); 68 sp.edit().putString(spname, spstr).commit();
68 } 69 }
69 70
70 71
71 public String getLoginParam(Context context,String spname) { 72 public String getLoginParam(Context context,String spname) {
72 SharedPreferences sp = context.getSharedPreferences("loginparam", 73 SharedPreferences sp = context.getSharedPreferences("loginparam",
73 Activity.MODE_PRIVATE); 74 Activity.MODE_PRIVATE);
74 String param = sp.getString(spname, null); 75 String param = sp.getString(spname, null);
75 return param; 76 return param;
76 } 77 }
77 public void clearData(Context context) { 78 public void clearData(Context context) {
78 SharedPreferences sp = context.getSharedPreferences("loginparam", 79 SharedPreferences sp = context.getSharedPreferences("loginparam",
79 Activity.MODE_PRIVATE); 80 Activity.MODE_PRIVATE);
80 sp.edit().clear().commit(); 81 sp.edit().clear().commit();
81 } 82 }
82 83
83 public void saveCustomizeParam(Context context,String spname, String spstr) { 84 public void saveCustomizeParam(Context context,String spname, String spstr) {
84 SharedPreferences sp = context.getSharedPreferences("presoninfo", 85 SharedPreferences sp = context.getSharedPreferences("presoninfo",
85 Activity.MODE_PRIVATE); 86 Activity.MODE_PRIVATE);
86 87
87 sp.edit().putString(spname, spstr).commit(); 88 sp.edit().putString(spname, spstr).commit();
88 89
89 } 90 }
90 91
91 public String getCustomizeParam(Context context,String spname) { 92 public String getCustomizeParam(Context context,String spname) {
92 SharedPreferences sp = context.getSharedPreferences("presoninfo", 93 SharedPreferences sp = context.getSharedPreferences("presoninfo",
93 Activity.MODE_PRIVATE); 94 Activity.MODE_PRIVATE);
94 String param = sp.getString(spname, null); 95 String param = sp.getString(spname, null);
95 return param; 96 return param;
96 } 97 }
97 98
98 public void clearCustomizeParam(Context context ){ 99 public void clearCustomizeParam(Context context ){
99 SharedPreferences sp = context.getSharedPreferences("presoninfo", 100 SharedPreferences sp = context.getSharedPreferences("presoninfo",
100 Activity.MODE_PRIVATE); 101 Activity.MODE_PRIVATE);
101 sp.edit().clear().commit(); 102 sp.edit().clear().commit();
102 } 103 }
103 public void saveCityParam(Context context,String spname, String spstr) { 104 public void saveCityParam(Context context,String spname, String spstr) {
104 SharedPreferences sp = context.getSharedPreferences("saveCityParam", 105 SharedPreferences sp = context.getSharedPreferences("saveCityParam",
105 Activity.MODE_PRIVATE); 106 Activity.MODE_PRIVATE);
106 107
107 sp.edit().putString(spname, spstr).commit(); 108 sp.edit().putString(spname, spstr).commit();
108 109
109 } 110 }
110 111
111 public String getsaveCityParam(Context context,String spname) { 112 public String getsaveCityParam(Context context,String spname) {
112 SharedPreferences sp = context.getSharedPreferences("saveCityParam", 113 SharedPreferences sp = context.getSharedPreferences("saveCityParam",
113 Activity.MODE_PRIVATE); 114 Activity.MODE_PRIVATE);
114 String param = sp.getString(spname, null); 115 String param = sp.getString(spname, null);
115 return param; 116 return param;
116 } 117 }
117 118
118 public void clearsaveCityParam(Context context ){ 119 public void clearsaveCityParam(Context context ){
119 SharedPreferences sp = context.getSharedPreferences("saveCityParam", 120 SharedPreferences sp = context.getSharedPreferences("saveCityParam",
120 Activity.MODE_PRIVATE); 121 Activity.MODE_PRIVATE);
121 sp.edit().clear().commit(); 122 sp.edit().clear().commit();
122 } 123 }
123 } 124 }
124 125
PersonalCenter/app/src/main/java/com/hjx/personalcenter/fragment/LoginFragment.java
1 package com.hjx.personalcenter.fragment; 1 package com.hjx.personalcenter.fragment;
2 2
3 import android.content.Intent; 3 import android.content.Intent;
4 import android.os.Bundle; 4 import android.os.Bundle;
5 import android.os.Handler; 5 import android.os.Handler;
6 import android.os.Message; 6 import android.os.Message;
7 import android.support.annotation.Nullable; 7 import android.support.annotation.Nullable;
8 import android.support.v4.app.Fragment; 8 import android.support.v4.app.Fragment;
9 import android.text.TextUtils; 9 import android.text.TextUtils;
10 import android.view.LayoutInflater; 10 import android.view.LayoutInflater;
11 import android.view.View; 11 import android.view.View;
12 import android.view.ViewGroup; 12 import android.view.ViewGroup;
13 import android.widget.Button; 13 import android.widget.Button;
14 import android.widget.EditText; 14 import android.widget.EditText;
15 import android.widget.TextView; 15 import android.widget.TextView;
16 import android.widget.Toast; 16 import android.widget.Toast;
17 17
18 import com.hjx.personalcenter.R; 18 import com.hjx.personalcenter.R;
19 import com.hjx.personalcenter.activity.ForgotPasswordActivity; 19 import com.hjx.personalcenter.activity.ForgotPasswordActivity;
20 import com.hjx.personalcenter.activity.MainActivity; 20 import com.hjx.personalcenter.activity.MainActivity;
21 import com.hjx.personalcenter.activity.RegisterInfoActivity; 21 import com.hjx.personalcenter.activity.RegisterInfoActivity;
22 import com.hjx.personalcenter.customdialog.ElectronicCardDialog; 22 import com.hjx.personalcenter.customdialog.ElectronicCardDialog;
23 import com.hjx.personalcenter.db.Content; 23 import com.hjx.personalcenter.db.Content;
24 import com.hjx.personalcenter.db.SaveParam; 24 import com.hjx.personalcenter.db.SaveParam;
25 import com.hjx.personalcenter.http.HttpCode; 25 import com.hjx.personalcenter.http.HttpCode;
26 import com.hjx.personalcenter.http.HttpManager; 26 import com.hjx.personalcenter.http.HttpManager;
27 import com.hjx.personalcenter.util.AlertUtils; 27 import com.hjx.personalcenter.util.AlertUtils;
28 import com.hjx.personalcenter.util.GetDevicesUtil; 28 import com.hjx.personalcenter.util.GetDevicesUtil;
29 import com.hjx.personalcenter.util.PhoneNumCheckUtils; 29 import com.hjx.personalcenter.util.PhoneNumCheckUtils;
30 30
31 import org.json.JSONException; 31 import org.json.JSONException;
32 import org.json.JSONObject; 32 import org.json.JSONObject;
33 33
34 /** 34 /**
35 * 登录 35 * 登录
36 * Created by h on 2017/8/8. 36 * Created by h on 2017/8/8.
37 */ 37 */
38 38
39 public class LoginFragment extends Fragment implements View.OnClickListener { 39 public class LoginFragment extends Fragment implements View.OnClickListener {
40 private View mView; 40 private View mView;
41 private int type; 41 private int type;
42 private TextView tv_forget_pwd; 42 private TextView tv_forget_pwd;
43 private Button btn_login; 43 private Button btn_login;
44 private EditText phonenumber, login_pwwd; 44 private EditText phonenumber, login_pwwd;
45 public static String TABLAYOUT_FRAGMENT = "tab_fragment"; 45 public static String TABLAYOUT_FRAGMENT = "tab_fragment";
46 Intent intent = new Intent(); 46 Intent intent = new Intent();
47 47
48 public static LoginFragment newInstance(int type) { 48 public static LoginFragment newInstance(int type) {
49 LoginFragment fragment = new LoginFragment(); 49 LoginFragment fragment = new LoginFragment();
50 Bundle bundle = new Bundle(); 50 Bundle bundle = new Bundle();
51 bundle.putSerializable(TABLAYOUT_FRAGMENT, type); 51 bundle.putSerializable(TABLAYOUT_FRAGMENT, type);
52 fragment.setArguments(bundle); 52 fragment.setArguments(bundle);
53 return fragment; 53 return fragment;
54 54
55 } 55 }
56 56
57 Handler handler = new Handler() { 57 Handler handler = new Handler() {
58 @Override 58 @Override
59 public void handleMessage(Message msg) { 59 public void handleMessage(Message msg) {
60 super.handleMessage(msg); 60 super.handleMessage(msg);
61 61
62 switch (msg.what) { 62 switch (msg.what) {
63 case HttpCode.LOGIN_SUCESS: 63 case HttpCode.LOGIN_SUCESS:
64 JSONObject jsonObject; 64 JSONObject jsonObject;
65 String status; 65 String status;
66 try { 66 try {
67 jsonObject = new JSONObject((String) msg.obj); 67 jsonObject = new JSONObject((String) msg.obj);
68 status = jsonObject.getString("status"); 68 status = jsonObject.getString("status");
69 if (status.equals("100")) { 69 if (status.equals("100")) {
70 String access_token = jsonObject.getString("access_token"); 70 String access_token = jsonObject.getString("access_token");
71 String userId = jsonObject.getString("userId"); 71 String userId = jsonObject.getString("userId");
72 final String name = phonenumber.getText().toString().trim(); 72 final String name = phonenumber.getText().toString().trim();
73 final String pwd = login_pwwd.getText().toString().trim(); 73 final String pwd = login_pwwd.getText().toString().trim();
74 // 74 //
75 try { 75 try {
76 long auserID = Long.parseLong(userId); 76 long auserID = Long.parseLong(userId);
77 //检测注册信息是否完整 77 //检测注册信息是否完整
78 HttpManager.getInstance().registerinfocheck(getActivity(), auserID, handler); 78 HttpManager.getInstance().registerinfocheck(getActivity(), auserID, handler);
79 //登录成功,保存登录数据并且获取个人信息 79 //登录成功,保存登录数据并且获取个人信息
80 HttpManager.getInstance().saveLoginInfo(getActivity(), name, pwd, access_token, userId); 80 HttpManager.getInstance().saveLoginInfo(getActivity(), name, pwd, access_token, userId);
81 81
82 82
83 } catch (NumberFormatException e) { 83 } catch (NumberFormatException e) {
84 e.printStackTrace(); 84 e.printStackTrace();
85 } 85 }
86 86
87 87
88 } else if (status.equals("200")) { 88 } else if (status.equals("200")) {
89 Toast.makeText(getActivity(), "用户名不存在!", Toast.LENGTH_LONG).show(); 89 Toast.makeText(getActivity(), "用户名不存在!", Toast.LENGTH_LONG).show();
90 return; 90 return;
91 } else if (status.equals("204")) { 91 } else if (status.equals("204")) {
92 Toast.makeText(getActivity(), "密码错误!", Toast.LENGTH_LONG).show(); 92 Toast.makeText(getActivity(), "密码错误!", Toast.LENGTH_LONG).show();
93 } else { 93 } else {
94 Toast.makeText(getActivity(), "登录失败!请检查网络", Toast.LENGTH_LONG).show(); 94 Toast.makeText(getActivity(), "登录失败!请检查网络", Toast.LENGTH_LONG).show();
95 95
96 96
97 } 97 }
98 } catch (JSONException e) { 98 } catch (JSONException e) {
99 e.printStackTrace(); 99 e.printStackTrace();
100 } 100 }
101 break; 101 break;
102 case HttpCode.REGISTER_SUCESS: 102 case HttpCode.REGISTER_SUCESS:
103 try { 103 try {
104 jsonObject = new JSONObject((String) msg.obj); 104 jsonObject = new JSONObject((String) msg.obj);
105 status = jsonObject.optString("status"); 105 status = jsonObject.optString("status");
106 JSONObject isregisterinfo = (JSONObject) jsonObject.opt("data"); 106 JSONObject isregisterinfo = (JSONObject) jsonObject.opt("data");
107 boolean isRegisterInfoComplete = isregisterinfo.optBoolean("isRegisterInfoComplete"); 107 boolean isRegisterInfoComplete = isregisterinfo.optBoolean("isRegisterInfoComplete");
108 if (status.equals("1")) { 108 if (status.equals("1")) {
109 if (!isRegisterInfoComplete) { 109 if (!isRegisterInfoComplete) {
110 Content.accountflag = 1; 110 Content.accountflag = 1;
111 Intent intent = new Intent(); 111 Intent intent = new Intent();
112 intent.setClass(getActivity(), RegisterInfoActivity.class); 112 intent.setClass(getActivity(), RegisterInfoActivity.class);
113 getActivity().startActivity(intent); 113 getActivity().startActivity(intent);
114 getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout); 114 getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout);
115 } else { 115 } else {
116 String deviceNumber = GetDevicesUtil.getDevicesInfo(getActivity()).getDeviceNumber(); 116 String deviceNumber = GetDevicesUtil.getDevicesInfo(getActivity()).getDeviceNumber();
117 //是否填写保卡 117 //是否填写保卡
118 HttpManager.getInstance().cardinfocheck(getActivity(), deviceNumber, handler); 118 HttpManager.getInstance().cardinfocheck(getActivity(), deviceNumber, handler);
119 119
120 120
121 } 121 }
122 122
123 } else { 123 } else {
124 Toast.makeText(getActivity(), "请检查网络", Toast.LENGTH_LONG).show(); 124 Toast.makeText(getActivity(), "请检查网络", Toast.LENGTH_LONG).show();
125 } 125 }
126 126
127 } catch (JSONException e) { 127 } catch (JSONException e) {
128 e.printStackTrace(); 128 e.printStackTrace();
129 } 129 }
130 130
131 break; 131 break;
132 case HttpCode.CHECKCARD: 132 case HttpCode.CHECKCARD:
133 try { 133 try {
134 jsonObject = new JSONObject((String) msg.obj); 134 jsonObject = new JSONObject((String) msg.obj);
135 status = jsonObject.optString("status"); 135 status = jsonObject.optString("status");
136 if (status.equals("1")) { 136 if (status.equals("1")) {
137 SaveParam.getInstance().saveLoginParam(getActivity(), "login", "true"); 137 SaveParam.getInstance().saveLoginParam(getActivity(), "login", "true");
138 Intent intent = new Intent(); 138 Intent intent = new Intent();
139 intent.setClass(getActivity(), MainActivity.class); 139 intent.setClass(getActivity(), MainActivity.class);
140 getActivity().startActivity(intent); 140 getActivity().startActivity(intent);
141 getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout); 141 getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout);
142 getActivity().finish();
142 143
143 } else if (status.equals("2002")) { 144 } else if (status.equals("2002")) {
144 SaveParam.getInstance().saveLoginParam(getActivity(), SaveParam.YANGJI, "1"); 145 SaveParam.getInstance().saveLoginParam(getActivity(), SaveParam.YANGJI, "1");
145 SaveParam.getInstance().saveLoginParam(getActivity(), "login", "true"); 146 SaveParam.getInstance().saveLoginParam(getActivity(), "login", "true");
146 Intent intent = new Intent(); 147 Intent intent = new Intent();
147 intent.setClass(getActivity(), MainActivity.class); 148 intent.setClass(getActivity(), MainActivity.class);
148 getActivity().startActivity(intent); 149 getActivity().startActivity(intent);
149 getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout); 150 getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout);
150 } else if (status.equals("2001")) { 151 } else if (status.equals("2001")) {
151 ElectronicCardDialog.getInstance().show(getChildFragmentManager(), "ElectronicCardDialog"); 152 ElectronicCardDialog.getInstance().show(getChildFragmentManager(), "ElectronicCardDialog");
152 } else { 153 } else {
153 Toast.makeText(getActivity(), "请检查网络", Toast.LENGTH_LONG).show(); 154 Toast.makeText(getActivity(), "请检查网络", Toast.LENGTH_LONG).show();
154 } 155 }
155 156
156 } catch (JSONException e) { 157 } catch (JSONException e) {
157 e.printStackTrace(); 158 e.printStackTrace();
158 } 159 }
159 160
160 break; 161 break;
161 } 162 }
162 } 163 }
163 }; 164 };
164 165
165 @Override 166 @Override
166 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 167 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
167 if (mView == null) { 168 if (mView == null) {
168 mView = inflater.inflate(R.layout.fragment_loginandregister_login, container, false); 169 mView = inflater.inflate(R.layout.fragment_loginandregister_login, container, false);
169 initView(mView); 170 initView(mView);
170 initData(); 171 initData();
171 setLister(); 172 setLister();
172 173
173 174
174 } 175 }
175 return mView; 176 return mView;
176 } 177 }
177 178
178 //初始化 179 //初始化
179 private void initView(View mView) { 180 private void initView(View mView) {
180 tv_forget_pwd = (TextView) mView.findViewById(R.id.tv_forget_pwd); 181 tv_forget_pwd = (TextView) mView.findViewById(R.id.tv_forget_pwd);
181 phonenumber = (EditText) mView.findViewById(R.id.et_phonenumber); 182 phonenumber = (EditText) mView.findViewById(R.id.et_phonenumber);
182 login_pwwd = (EditText) mView.findViewById(R.id.et_password); 183 login_pwwd = (EditText) mView.findViewById(R.id.et_password);
183 btn_login = (Button) mView.findViewById(R.id.btn_login); 184 btn_login = (Button) mView.findViewById(R.id.btn_login);
184 185
185 } 186 }
186 187
187 private void initData() { 188 private void initData() {
188 } 189 }
189 190
190 private void setLister() { 191 private void setLister() {
191 tv_forget_pwd.setOnClickListener(this); 192 tv_forget_pwd.setOnClickListener(this);
192 btn_login.setOnClickListener(this); 193 btn_login.setOnClickListener(this);
193 } 194 }
194 195
195 196
196 @Override 197 @Override
197 public void onClick(View v) { 198 public void onClick(View v) {
198 switch (v.getId()) { 199 switch (v.getId()) {
199 case R.id.tv_forget_pwd: 200 case R.id.tv_forget_pwd:
200 intent.setClass(getActivity(), ForgotPasswordActivity.class); 201 intent.setClass(getActivity(), ForgotPasswordActivity.class);
201 startActivity(intent); 202 startActivity(intent);
202 getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout); 203 getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout);
203 break; 204 break;
204 case R.id.btn_login: 205 case R.id.btn_login:
205 login(); 206 login();
206 break; 207 break;
207 } 208 }
208 209
209 } 210 }
210 211
211 private void login() { 212 private void login() {
212 final String name = phonenumber.getText().toString().trim(); 213 final String name = phonenumber.getText().toString().trim();
213 final String pwd = login_pwwd.getText().toString().trim(); 214 final String pwd = login_pwwd.getText().toString().trim();
214 if (TextUtils.isEmpty(name) || TextUtils.isEmpty(pwd)) { 215 if (TextUtils.isEmpty(name) || TextUtils.isEmpty(pwd)) {
215 AlertUtils.showToast(getActivity(), "请输入手机号和密码"); 216 AlertUtils.showToast(getActivity(), "请输入手机号和密码");
216 return; 217 return;
217 } else if (!PhoneNumCheckUtils.isPhone(name)) { 218 } else if (!PhoneNumCheckUtils.isPhone(name)) {
218 AlertUtils.showToast(getActivity(), "请输入正确的手机号"); 219 AlertUtils.showToast(getActivity(), "请输入正确的手机号");
219 } else { 220 } else {
220 //登录接口 221 //登录接口
221 HttpManager.getInstance().login(name, pwd, getActivity(), handler); 222 HttpManager.getInstance().login(name, pwd, getActivity(), handler);
222 } 223 }
223 224
224 225
225 } 226 }
226 } 227 }
227 228
PersonalCenter/app/src/main/java/com/hjx/personalcenter/fragment/PresonInfoFragment.java
1 package com.hjx.personalcenter.fragment; 1 package com.hjx.personalcenter.fragment;
2 2
3 import android.graphics.Color; 3 import android.graphics.Color;
4 import android.os.Bundle; 4 import android.os.Bundle;
5 import android.support.annotation.Nullable; 5 import android.support.annotation.Nullable;
6 import android.support.v4.app.Fragment; 6 import android.support.v4.app.Fragment;
7 import android.support.v4.view.ViewPager; 7 import android.support.v4.view.ViewPager;
8 import android.util.Log; 8 import android.util.Log;
9 import android.view.Gravity; 9 import android.view.Gravity;
10 import android.view.LayoutInflater; 10 import android.view.LayoutInflater;
11 import android.view.View; 11 import android.view.View;
12 import android.view.ViewGroup; 12 import android.view.ViewGroup;
13 import android.widget.AdapterView; 13 import android.widget.AdapterView;
14 import android.widget.EditText; 14 import android.widget.EditText;
15 import android.widget.ImageView; 15 import android.widget.ImageView;
16 import android.widget.LinearLayout; 16 import android.widget.LinearLayout;
17 import android.widget.TextView; 17 import android.widget.TextView;
18 18
19 import com.bigkoo.pickerview.TimePickerView; 19 import com.bigkoo.pickerview.TimePickerView;
20 import com.hjx.personalcenter.R; 20 import com.hjx.personalcenter.R;
21 import com.hjx.personalcenter.activity.ChangePresonalInfoActivity; 21 import com.hjx.personalcenter.activity.ChangePresonalInfoActivity;
22 import com.hjx.personalcenter.customdialog.CitysListDialog; 22 import com.hjx.personalcenter.customdialog.CitysListDialog;
23 import com.hjx.personalcenter.customdialog.CountryDialog; 23 import com.hjx.personalcenter.customdialog.CountryDialog;
24 import com.hjx.personalcenter.customdialog.GradeListDialog; 24 import com.hjx.personalcenter.customdialog.GradeListDialog;
25 import com.hjx.personalcenter.customdialog.ProvinceListDialog; 25 import com.hjx.personalcenter.customdialog.ProvinceListDialog;
26 import com.hjx.personalcenter.customdialog.SchoolListDialog; 26 import com.hjx.personalcenter.customdialog.SchoolListDialog;
27 import com.hjx.personalcenter.db.Content;
27 import com.hjx.personalcenter.db.SaveParam; 28 import com.hjx.personalcenter.db.SaveParam;
28 import com.hjx.personalcenter.http.HttpManager; 29 import com.hjx.personalcenter.http.HttpManager;
29 import com.hjx.personalcenter.interfaces.DialogCallBack; 30 import com.hjx.personalcenter.interfaces.DialogCallBack;
30 import com.hjx.personalcenter.model.CityInfo; 31 import com.hjx.personalcenter.model.CityInfo;
31 import com.hjx.personalcenter.model.CountyInfo; 32 import com.hjx.personalcenter.model.CountyInfo;
32 import com.hjx.personalcenter.model.GradeInfo; 33 import com.hjx.personalcenter.model.GradeInfo;
33 import com.hjx.personalcenter.model.ProvinceInfo; 34 import com.hjx.personalcenter.model.ProvinceInfo;
34 import com.hjx.personalcenter.model.SchoolInfo; 35 import com.hjx.personalcenter.model.SchoolInfo;
35 import com.hjx.personalcenter.util.AlertUtils; 36 import com.hjx.personalcenter.util.AlertUtils;
36 import com.hjx.personalcenter.util.GetDevicesUtil; 37 import com.hjx.personalcenter.util.GetDevicesUtil;
37 import com.mylhyl.circledialog.CircleDialog; 38 import com.mylhyl.circledialog.CircleDialog;
38 import com.mylhyl.circledialog.callback.ConfigDialog; 39 import com.mylhyl.circledialog.callback.ConfigDialog;
39 import com.mylhyl.circledialog.params.DialogParams; 40 import com.mylhyl.circledialog.params.DialogParams;
40 41
41 import org.apache.http.util.TextUtils; 42 import org.apache.http.util.TextUtils;
42 43
43 import java.text.SimpleDateFormat; 44 import java.text.SimpleDateFormat;
44 import java.util.ArrayList; 45 import java.util.ArrayList;
45 import java.util.Date; 46 import java.util.Date;
46 47
47 /** 48 /**
48 * Created by h on 2017/8/12. 49 * Created by h on 2017/8/12.
49 */ 50 */
50 51
51 public class PresonInfoFragment extends Fragment implements View.OnClickListener, DialogCallBack.GradeCallBack, DialogCallBack.ProvincesCallBack 52 public class PresonInfoFragment extends Fragment implements View.OnClickListener, DialogCallBack.GradeCallBack, DialogCallBack.ProvincesCallBack
52 , DialogCallBack.CitysCallBack, DialogCallBack.CountryCallBack, DialogCallBack.SchoolCallBack { 53 , DialogCallBack.CitysCallBack, DialogCallBack.CountryCallBack, DialogCallBack.SchoolCallBack {
53 private View mView; 54 private View mView;
54 private int type; 55 private int type;
55 private TimePickerView pvTime; 56 private TimePickerView pvTime;
56 private LinearLayout tv_version; 57 private LinearLayout tv_version;
57 58
58 private EditText tv_username1, tv_useinfo_adress1, tv_useinfo_qq; 59 private EditText tv_username1, tv_useinfo_adress1, tv_useinfo_qq;
59 private TextView tv_sex, tv_useinfo_adress, tv_useinfo_birthday, tv_useinfo_school, tv_useinfo_gender, sub; 60 private TextView tv_sex, tv_useinfo_adress, tv_useinfo_birthday, tv_useinfo_school, tv_useinfo_gender, sub;
60 public static String TABLAYOUT_FRAGMENT = "presonfragment"; 61 public static String TABLAYOUT_FRAGMENT = "presonfragment";
61 private ImageView my_adress, my_sex, my_bthday, my_grade, my_school, ccancel; 62 private ImageView my_adress, my_sex, my_bthday, my_grade, my_school, ccancel;
62 63
63 64
64 public static PresonInfoFragment newInstance(int type) { 65 public static PresonInfoFragment newInstance(int type) {
65 PresonInfoFragment fragment = new PresonInfoFragment(); 66 PresonInfoFragment fragment = new PresonInfoFragment();
66 Bundle bundle = new Bundle(); 67 Bundle bundle = new Bundle();
67 bundle.putSerializable(TABLAYOUT_FRAGMENT, type); 68 bundle.putSerializable(TABLAYOUT_FRAGMENT, type);
68 fragment.setArguments(bundle); 69 fragment.setArguments(bundle);
69 return fragment; 70 return fragment;
70 71
71 } 72 }
72 73
73 @Override 74 @Override
74 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 75 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
75 if (mView == null) { 76 if (mView == null) {
76 mView = inflater.inflate(R.layout.fragment_changge_presonal_info, container, false); 77 mView = inflater.inflate(R.layout.fragment_changge_presonal_info, container, false);
78 Content.changeinfoflag = false;
77 initView(mView); 79 initView(mView);
78 initData(); 80 initData();
79 setLister(); 81 setLister();
80 initTimePicker(); 82 initTimePicker();
81 83
82 84
83 } 85 }
84 return mView; 86 return mView;
85 } 87 }
86 88
87 //初始化 89 //初始化
88 private void initView(View mView) { 90 private void initView(View mView) {
89 tv_username1 = (EditText) mView.findViewById(R.id.tv_username1); 91 tv_username1 = (EditText) mView.findViewById(R.id.tv_username1);
90 tv_useinfo_adress1 = (EditText) mView.findViewById(R.id.tv_useinfo_adress1); 92 tv_useinfo_adress1 = (EditText) mView.findViewById(R.id.tv_useinfo_adress1);
91 tv_useinfo_qq = (EditText) mView.findViewById(R.id.tv_useinfo_qq); 93 tv_useinfo_qq = (EditText) mView.findViewById(R.id.tv_useinfo_qq);
92 tv_sex = (TextView) mView.findViewById(R.id.tv_sex); 94 tv_sex = (TextView) mView.findViewById(R.id.tv_sex);
93 tv_useinfo_adress = (TextView) mView.findViewById(R.id.tv_useinfo_adress); 95 tv_useinfo_adress = (TextView) mView.findViewById(R.id.tv_useinfo_adress);
94 tv_useinfo_birthday = (TextView) mView.findViewById(R.id.tv_useinfo_birthday); 96 tv_useinfo_birthday = (TextView) mView.findViewById(R.id.tv_useinfo_birthday);
95 tv_useinfo_school = (TextView) mView.findViewById(R.id.tv_useinfo_school); 97 tv_useinfo_school = (TextView) mView.findViewById(R.id.tv_useinfo_school);
96 tv_useinfo_gender = (TextView) mView.findViewById(R.id.tv_useinfo_gender); 98 tv_useinfo_gender = (TextView) mView.findViewById(R.id.tv_useinfo_gender);
97 my_adress = (ImageView) mView.findViewById(R.id.my_adress); 99 my_adress = (ImageView) mView.findViewById(R.id.my_adress);
98 my_sex = (ImageView) mView.findViewById(R.id.my_sex); 100 my_sex = (ImageView) mView.findViewById(R.id.my_sex);
99 my_bthday = (ImageView) mView.findViewById(R.id.my_bthday); 101 my_bthday = (ImageView) mView.findViewById(R.id.my_bthday);
100 my_grade = (ImageView) mView.findViewById(R.id.my_grade); 102 my_grade = (ImageView) mView.findViewById(R.id.my_grade);
101 my_school = (ImageView) mView.findViewById(R.id.my_school); 103 my_school = (ImageView) mView.findViewById(R.id.my_school);
102 sub = (TextView) mView.findViewById(R.id.presonal_sub); 104 sub = (TextView) mView.findViewById(R.id.presonal_sub);
103 ccancel = (ImageView) mView.findViewById(R.id.cancel); 105 ccancel = (ImageView) mView.findViewById(R.id.cancel);
104 tv_version = (LinearLayout) mView.findViewById(R.id.tv_version); 106 tv_version = (LinearLayout) mView.findViewById(R.id.tv_version);
105 107
106 108
107 } 109 }
108 110
109 private void initData() { 111 private void initData() {
110 //初始化个人信息 112 //初始化个人信息
111 String name = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTUSERNAME); 113 String name = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTUSERNAME);
112 String adress1 = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTADRESS); 114 //String adress1 = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTADRESS);
113 String adress2 = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTXINGZUO); 115 //String adress2 = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTXINGZUO);
114 String sex = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTSEX); 116 String sex = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTSEX);
115 String bithday = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTCONSTELLATION); 117 String bithday = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTCONSTELLATION);
116 String qq = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTQQ); 118 String qq = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTQQ);
117 String grader = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTGRADES); 119 String grader = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTGRADES);
118 String school = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTSCHOOL); 120 String school = SaveParam.getInstance().getLoginParam(getActivity(),SaveParam.ACCOUNTSCHOOL);
119 tv_username1.setText(name); 121 tv_username1.setText(name);
120 tv_useinfo_qq.setText(qq); 122 tv_useinfo_qq.setText(qq);
121 tv_sex.setText(sex); 123 tv_sex.setText(sex);
122 tv_useinfo_birthday.setText(bithday); 124 tv_useinfo_birthday.setText(bithday);
123 tv_useinfo_gender.setText(grader); 125 tv_useinfo_gender.setText(grader);
124 tv_useinfo_school.setText(school); 126 tv_useinfo_school.setText(school);
125 tv_useinfo_adress1.setText(adress2); 127 // tv_useinfo_adress1.setText(adress2);
126 tv_useinfo_adress.setText(adress1); 128 // tv_useinfo_adress.setText(adress1);
127 129
128 130
129 131
130 132
131 } 133 }
132 134
133 private void setLister() { 135 private void setLister() {
134 tv_sex.setOnClickListener(this); 136 tv_sex.setOnClickListener(this);
135 tv_useinfo_adress.setOnClickListener(this); 137 tv_useinfo_adress.setOnClickListener(this);
136 tv_useinfo_birthday.setOnClickListener(this); 138 tv_useinfo_birthday.setOnClickListener(this);
137 tv_useinfo_school.setOnClickListener(this); 139 tv_useinfo_school.setOnClickListener(this);
138 tv_useinfo_gender.setOnClickListener(this); 140 tv_useinfo_gender.setOnClickListener(this);
139 my_adress.setOnClickListener(this); 141 my_adress.setOnClickListener(this);
140 my_sex.setOnClickListener(this); 142 my_sex.setOnClickListener(this);
141 my_bthday.setOnClickListener(this); 143 my_bthday.setOnClickListener(this);
142 my_grade.setOnClickListener(this); 144 my_grade.setOnClickListener(this);
143 my_school.setOnClickListener(this); 145 my_school.setOnClickListener(this);
144 sub.setOnClickListener(this); 146 sub.setOnClickListener(this);
145 tv_version.setOnClickListener(this); 147 tv_version.setOnClickListener(this);
146 ccancel.setOnClickListener(this); 148 ccancel.setOnClickListener(this);
147 } 149 }
148 150
149 @Override 151 @Override
150 public void onClick(View v) { 152 public void onClick(View v) {
151 String presonal1 = tv_username1.getText().toString().trim(); 153 String presonal1 = tv_username1.getText().toString().trim();
152 String presonal2 = tv_useinfo_adress1.getText().toString().trim(); 154 String presonal2 = tv_useinfo_adress1.getText().toString().trim();
153 String presonal3 = tv_sex.getText().toString().trim(); 155 String presonal3 = tv_sex.getText().toString().trim();
154 String presonal4 = tv_useinfo_adress.getText().toString().trim(); 156 String presonal4 = tv_useinfo_adress.getText().toString().trim();
155 String presonal5 = tv_useinfo_birthday.getText().toString().trim(); 157 String presonal5 = tv_useinfo_birthday.getText().toString().trim();
156 String presonal6 = tv_useinfo_school.getText().toString().trim(); 158 String presonal6 = tv_useinfo_school.getText().toString().trim();
157 String presonal7 = tv_useinfo_gender.getText().toString().trim(); 159 String presonal7 = tv_useinfo_gender.getText().toString().trim();
158 String presonal8 = tv_useinfo_qq.getText().toString().trim(); 160 String presonal8 = tv_useinfo_qq.getText().toString().trim();
159 switch (v.getId()) { 161 switch (v.getId()) {
160 case R.id.tv_sex: 162 case R.id.tv_sex:
161 case R.id.my_sex: 163 case R.id.my_sex:
162 final String[] items = {"男", "女"}; 164 final String[] items = {"男", "女"};
163 new CircleDialog.Builder(getActivity()) 165 new CircleDialog.Builder(getActivity())
164 .configDialog(new ConfigDialog() { 166 .configDialog(new ConfigDialog() {
165 @Override 167 @Override
166 public void onConfig(DialogParams params) { 168 public void onConfig(DialogParams params) {
167 //增加弹出动画 169 //增加弹出动画
168 params.gravity = Gravity.CENTER; 170 params.gravity = Gravity.CENTER;
169 } 171 }
170 }) 172 })
171 .setTitle("请选择性别") 173 .setTitle("请选择性别")
172 .setWidth(0.5f) 174 .setWidth(0.5f)
173 .setItems(items, new AdapterView.OnItemClickListener() { 175 .setItems(items, new AdapterView.OnItemClickListener() {
174 @Override 176 @Override
175 public void onItemClick(AdapterView<?> parent, View view, int 177 public void onItemClick(AdapterView<?> parent, View view, int
176 position, long id) { 178 position, long id) {
177 switch (position) { 179 switch (position) {
178 case 0: 180 case 0:
179 tv_sex.setText("男"); 181 tv_sex.setText("男");
180 break; 182 break;
181 case 1: 183 case 1:
182 tv_sex.setText("女"); 184 tv_sex.setText("女");
183 break; 185 break;
184 } 186 }
185 187
186 } 188 }
187 }) 189 })
188 .show(); 190 .show();
189 break; 191 break;
190 case R.id.tv_useinfo_adress: 192 case R.id.tv_useinfo_adress:
191 case R.id.my_adress: 193 case R.id.my_adress:
192 tv_useinfo_school.setText(""); 194 tv_useinfo_school.setText("");
193 ProvinceListDialog.getInstance((DialogCallBack.ProvincesCallBack) PresonInfoFragment.this).show(getChildFragmentManager(), "ProvinceListDialog"); 195 ProvinceListDialog.getInstance((DialogCallBack.ProvincesCallBack) PresonInfoFragment.this).show(getChildFragmentManager(), "ProvinceListDialog");
194 break; 196 break;
195 case R.id.tv_useinfo_birthday: 197 case R.id.tv_useinfo_birthday:
196 case R.id.my_bthday: 198 case R.id.my_bthday:
197 pvTime.show(tv_useinfo_birthday);//弹出时间选择器,传递参数过去,回调的时候则可以绑定此view 199 pvTime.show(tv_useinfo_birthday);//弹出时间选择器,传递参数过去,回调的时候则可以绑定此view
198 break; 200 break;
199 case R.id.tv_useinfo_school: 201 case R.id.tv_useinfo_school:
200 case R.id.my_school: 202 case R.id.my_school:
201 if (TextUtils.isEmpty(presonal4) || 203 if (TextUtils.isEmpty(presonal4) ||
202 TextUtils.isEmpty(presonal7)) { 204 TextUtils.isEmpty(presonal7)) {
203 AlertUtils.showToast(getActivity(), "请先选择地区和年级!"); 205 AlertUtils.showToast(getActivity(), "请先选择地区和年级!");
204 return; 206 return;
205 } else { 207 } else {
206 SchoolListDialog.getInstance((DialogCallBack.SchoolCallBack) PresonInfoFragment.this).show(getChildFragmentManager(), "SchoolListDialog"); 208 SchoolListDialog.getInstance((DialogCallBack.SchoolCallBack) PresonInfoFragment.this).show(getChildFragmentManager(), "SchoolListDialog");
207 } 209 }
208 210
209 211
210 break; 212 break;
211 case R.id.tv_useinfo_gender: 213 case R.id.tv_useinfo_gender:
212 case R.id.my_grade: 214 case R.id.my_grade:
213 tv_useinfo_school.setText(""); 215 tv_useinfo_school.setText("");
216 Content.changeinfoflag = true;
214 GradeListDialog.getInstance((DialogCallBack.GradeCallBack) PresonInfoFragment.this).show(getChildFragmentManager(), "GradeListDialog"); 217 GradeListDialog.getInstance((DialogCallBack.GradeCallBack) PresonInfoFragment.this).show(getChildFragmentManager(), "GradeListDialog");
215 break; 218 break;
216 case R.id.cancel: 219 case R.id.cancel:
217 getActivity().finish(); 220 getActivity().finish();
218 break; 221 break;
219 case R.id.tv_version: 222 case R.id.tv_version:
220 final ChangePresonalInfoActivity mainActivity = (ChangePresonalInfoActivity) getActivity(); 223 final ChangePresonalInfoActivity mainActivity = (ChangePresonalInfoActivity) getActivity();
221 mainActivity.setFragment2Fragment(new ChangePresonalInfoActivity.Fragment2Fragment() { 224 mainActivity.setFragment2Fragment(new ChangePresonalInfoActivity.Fragment2Fragment() {
222 @Override 225 @Override
223 public void gotoFragment(ViewPager viewPager) { 226 public void gotoFragment(ViewPager viewPager) {
224 //fragment传递数据 227 //fragment传递数据
225 viewPager.setCurrentItem(1); 228 viewPager.setCurrentItem(1);
226 } 229 }
227 }); 230 });
228 mainActivity.forSkip(); 231 mainActivity.forSkip();
229 break; 232 break;
230 case R.id.presonal_sub: 233 case R.id.presonal_sub:
231 Log.e("test", "你提交个人信息"); 234 Log.e("test", "你提交个人信息");
232 if (TextUtils.isEmpty(presonal1) || 235 if (TextUtils.isEmpty(presonal1) ||
233 TextUtils.isEmpty(presonal2) || TextUtils.isEmpty(presonal3) || TextUtils.isEmpty(presonal4) || 236 TextUtils.isEmpty(presonal2) || TextUtils.isEmpty(presonal3) || TextUtils.isEmpty(presonal4) ||
234 TextUtils.isEmpty(presonal5) || TextUtils.isEmpty(presonal7) || 237 TextUtils.isEmpty(presonal5) || TextUtils.isEmpty(presonal7) ||
235 TextUtils.isEmpty(presonal8)) { 238 TextUtils.isEmpty(presonal8)) {
236 AlertUtils.showToast(getActivity(), "请将信息填写完整!"); 239 AlertUtils.showToast(getActivity(), "请将信息填写完整!");
237 return; 240 return;
238 } else { 241 } else {
239 int a = 0, b = 0; 242 int a = 0, b = 0;
240 int d = 1; 243 int d = 1;
241 Object schoolids; 244 Object schoolids;
242 Long f = null; 245 Long f = null;
243 SaveParam.getInstance().saveLoginParam(getActivity(),SaveParam.ACCOUNTADRESS,presonal4);
244 SaveParam.getInstance().saveLoginParam(getActivity(),SaveParam.ACCOUNTXINGZUO,presonal2);
245 String regionId = SaveParam.getInstance().getsaveCityParam(getActivity(), SaveParam.COUNTRY); 246 String regionId = SaveParam.getInstance().getsaveCityParam(getActivity(), SaveParam.COUNTRY);
246 String regionId1 = SaveParam.getInstance().getsaveCityParam(getActivity(), SaveParam.CITYS); 247 String regionId1 = SaveParam.getInstance().getsaveCityParam(getActivity(), SaveParam.CITYS);
247 if (regionId == null) { 248 if (regionId == null) {
248 regionId = regionId1; 249 regionId = regionId1;
249 } 250 }
250 String grade = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.GRADENS); 251 String grade = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.CHILDSGRADENS);
251 String schoolid = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.SCHOOOlID); 252 String schoolid = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.SCHOOOlID);
252 String type = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.ACCOUNT); 253 String type = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.ACCOUNT);
253 String userID = SaveParam.getInstance().getLoginParam(getActivity(), "userId"); 254 String userID = SaveParam.getInstance().getLoginParam(getActivity(), "userId");
254 String devicenumber = GetDevicesUtil.getDevicesInfo(getActivity()).getDeviceNumber(); 255 String devicenumber = GetDevicesUtil.getDevicesInfo(getActivity()).getDeviceNumber();
255 String changeinfo = null; 256 String changeinfo = null;
256 if ("男".equals(presonal3)) { 257 if ("男".equals(presonal3)) {
257 changeinfo = "male"; 258 changeinfo = "male";
258 } else { 259 } else {
259 changeinfo = "female"; 260 changeinfo = "female";
260 } 261 }
261 try { 262 try {
262 a = Integer.parseInt(regionId); 263 a = Integer.parseInt(regionId);
263 b = Integer.parseInt(grade); 264 b = Integer.parseInt(grade);
264 if (TextUtils.isEmpty(presonal6)) { 265 if (TextUtils.isEmpty(presonal6)) {
265 schoolids = null; 266 schoolids = null;
266 } else { 267 } else {
267 schoolids = Long.parseLong(schoolid); 268 schoolids = Long.parseLong(schoolid);
268 } 269 }
269 d = Integer.parseInt(type); 270 d = Integer.parseInt(type);
270 f = Long.parseLong(userID); 271 f = Long.parseLong(userID);
271 //提交个人信息 272 //提交个人信息
272 HttpManager.getInstance().changepresonalinfo(getActivity(), 273 HttpManager.getInstance().changepresonalinfo(getActivity(),
273 f, d, presonal1, presonal5, b, a, schoolids, presonal8, changeinfo, presonal4 + presonal2, devicenumber); 274 f, d, presonal1, presonal5, b, a, schoolids, presonal8, changeinfo, presonal4 + presonal2, devicenumber);
274 275
275 } catch (Exception e) { 276 } catch (Exception e) {
276 e.printStackTrace(); 277 e.printStackTrace();
277 } 278 }
278 279
279 break; 280 break;
280 281
281 } 282 }
282 } 283 }
283 } 284 }
284 285
285 //自定义时间选择器 286 //自定义时间选择器
286 private void initTimePicker() { 287 private void initTimePicker() {
287 //控制时间范围(如果不设置范围,则使用默认时间1900-2100年,此段代码可注释) 288 //控制时间范围(如果不设置范围,则使用默认时间1900-2100年,此段代码可注释)
288 //因为系统Calendar的月份是从0-11的,所以如果是调用Calendar的set方法来设置时间,月份的范围也要是从0-11 289 //因为系统Calendar的月份是从0-11的,所以如果是调用Calendar的set方法来设置时间,月份的范围也要是从0-11
289 // Calendar selectedDate = Calendar.getInstance(); 290 // Calendar selectedDate = Calendar.getInstance();
290 // Calendar startDate = Calendar.getInstance(); 291 // Calendar startDate = Calendar.getInstance();
291 // startDate.set(1900, 1, 1); 292 // startDate.set(1900, 1, 1);
292 // Calendar endDate = Calendar.getInstance(); 293 // Calendar endDate = Calendar.getInstance();
293 // endDate.set(2100, 1, 1); 294 // endDate.set(2100, 1, 1);
294 //时间选择器 295 //时间选择器
295 pvTime = new TimePickerView.Builder(getActivity(), new TimePickerView.OnTimeSelectListener() { 296 pvTime = new TimePickerView.Builder(getActivity(), new TimePickerView.OnTimeSelectListener() {
296 @Override 297 @Override
297 public void onTimeSelect(Date date, View v) {//选中事件回调 298 public void onTimeSelect(Date date, View v) {//选中事件回调
298 // 这里回调过来的v,就是show()方法里面所添加的 View 参数,如果show的时候没有添加参数,v则为null 299 // 这里回调过来的v,就是show()方法里面所添加的 View 参数,如果show的时候没有添加参数,v则为null
299 /*btn_Time.setText(getTime(date));*/ 300 /*btn_Time.setText(getTime(date));*/
300 TextView btn = (TextView) v; 301 TextView btn = (TextView) v;
301 btn.setText(getTime(date)); 302 btn.setText(getTime(date));
302 } 303 }
303 }) 304 })
304 //年月日时分秒 的显示与否,不设置则默认全部显示 305 //年月日时分秒 的显示与否,不设置则默认全部显示
305 .setType(new boolean[]{true, true, true, false, false, false}) 306 .setType(new boolean[]{true, true, true, false, false, false})
306 .setLabel("", "", "", "", "", "") 307 .setLabel("", "", "", "", "", "")
307 .isCenterLabel(false) 308 .isCenterLabel(false)
308 .setDividerColor(Color.DKGRAY) 309 .setDividerColor(Color.DKGRAY)
309 .setContentSize(21) 310 .setContentSize(21)
310 // .setDate(selectedDate) 311 // .setDate(selectedDate)
311 // .setRangDate(startDate, endDate) 312 // .setRangDate(startDate, endDate)
312 .setBackgroundId(0x80000000) //设置外部遮罩颜色 313 .setBackgroundId(0x80000000) //设置外部遮罩颜色
313 .setDecorView(null) 314 .setDecorView(null)
314 .setTitleText("出生日期") 315 .setTitleText("出生日期")
315 .setTitleSize(22) 316 .setTitleSize(22)
316 .setCancelColor(Color.GRAY) 317 .setCancelColor(Color.GRAY)
317 .setSubCalSize(22) 318 .setSubCalSize(22)
318 .setDividerColor(Color.GRAY) 319 .setDividerColor(Color.GRAY)
319 .setSubmitColor(Color.GRAY) 320 .setSubmitColor(Color.GRAY)
320 .build(); 321 .build();
321 } 322 }
322 323
323 private String getTime(Date date) {//可根据需要自行截取数据显示 324 private String getTime(Date date) {//可根据需要自行截取数据显示
324 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); 325 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
325 return format.format(date); 326 return format.format(date);
326 } 327 }
327 328
328 @Override 329 @Override
329 public void province1OnItemClick(ArrayList<CityInfo.CitiesBean> data, int position, int type) { 330 public void province1OnItemClick(ArrayList<CityInfo.CitiesBean> data, int position, int type) {
330 String regionName = data.get(position).getRegionName(); 331 String regionName = data.get(position).getRegionName();
331 String provice = SaveParam.getInstance().getLoginParam(getActivity(), "sheng"); 332 String provice = SaveParam.getInstance().getLoginParam(getActivity(), "sheng");
332 SaveParam.getInstance().saveLoginParam(getActivity(), "shi", regionName); 333 SaveParam.getInstance().saveLoginParam(getActivity(), "shi", regionName);
333 CountryDialog.getInstance((DialogCallBack.CountryCallBack) this).show(getChildFragmentManager(), "CountryDialog"); 334 CountryDialog.getInstance((DialogCallBack.CountryCallBack) this).show(getChildFragmentManager(), "CountryDialog");
334 tv_useinfo_adress.setText(""); 335 tv_useinfo_adress.setText("");
335 tv_useinfo_adress.setText(provice + regionName); 336 tv_useinfo_adress.setText(provice + regionName);
336 337
337 338
338 } 339 }
339 340
340 @Override 341 @Override
341 public void province2OnItemClick(ArrayList<CountyInfo.CountiesBean> data, int position, int type) { 342 public void province2OnItemClick(ArrayList<CountyInfo.CountiesBean> data, int position, int type) {
342 String regionName = data.get(position).getRegionName(); 343 String regionName = data.get(position).getRegionName();
343 String provices = SaveParam.getInstance().getLoginParam(getActivity(), "sheng"); 344 String provices = SaveParam.getInstance().getLoginParam(getActivity(), "sheng");
344 String citys = SaveParam.getInstance().getLoginParam(getActivity(), "shi"); 345 String citys = SaveParam.getInstance().getLoginParam(getActivity(), "shi");
345 tv_useinfo_adress.setText(""); 346 tv_useinfo_adress.setText("");
346 tv_useinfo_adress.setText(provices + citys + regionName); 347 tv_useinfo_adress.setText(provices + citys + regionName);
347 348
348 } 349 }
349 350
350 @Override 351 @Override
351 public void province3OnItemClick(ArrayList<GradeInfo.DataBean.ChildrenBean> data, int position, int type) { 352 public void province3OnItemClick(ArrayList<GradeInfo.DataBean.ChildrenBean> data, int position, int type) {
352 String regionName = data.get(position).getName(); 353 String regionName = data.get(position).getName();
353 tv_useinfo_gender.setText(regionName); 354 tv_useinfo_gender.setText(regionName);
354 } 355 }
355 356
356 @Override 357 @Override
357 public void provinceOnItemClick(ArrayList<ProvinceInfo.ProvincesBean> data, int position, int type) { 358 public void provinceOnItemClick(ArrayList<ProvinceInfo.ProvincesBean> data, int position, int type) {
358 String regionName = data.get(position).getRegionName(); 359 String regionName = data.get(position).getRegionName();
359 SaveParam.getInstance().saveLoginParam(getActivity(), "sheng", regionName); 360 SaveParam.getInstance().saveLoginParam(getActivity(), "sheng", regionName);
360 CitysListDialog.getInstance((DialogCallBack.CitysCallBack) PresonInfoFragment.this).show(getChildFragmentManager(), "CitysListDialog"); 361 CitysListDialog.getInstance((DialogCallBack.CitysCallBack) PresonInfoFragment.this).show(getChildFragmentManager(), "CitysListDialog");
361 tv_useinfo_adress.setText(""); 362 tv_useinfo_adress.setText("");
362 tv_useinfo_adress.setText(regionName); 363 tv_useinfo_adress.setText(regionName);
363 } 364 }
364 365
365 @Override 366 @Override
366 public void provinceO4nItemClick(ArrayList<SchoolInfo.DataBean> data, int position, int type) { 367 public void provinceO4nItemClick(ArrayList<SchoolInfo.DataBean> data, int position, int type) {
367 String regionName = data.get(position).getSchoolName(); 368 String regionName = data.get(position).getSchoolName();
368 tv_useinfo_school.setText(regionName); 369 tv_useinfo_school.setText(regionName);
369 370
370 371
371 } 372 }
PersonalCenter/app/src/main/java/com/hjx/personalcenter/fragment/RegisterFragment.java
1 package com.hjx.personalcenter.fragment; 1 package com.hjx.personalcenter.fragment;
2 2
3 import android.content.Intent; 3 import android.content.Intent;
4 import android.os.Bundle; 4 import android.os.Bundle;
5 import android.os.Handler; 5 import android.os.Handler;
6 import android.os.Message; 6 import android.os.Message;
7 import android.support.annotation.Nullable; 7 import android.support.annotation.Nullable;
8 import android.support.v4.app.Fragment; 8 import android.support.v4.app.Fragment;
9 import android.text.TextUtils; 9 import android.text.TextUtils;
10 import android.text.method.HideReturnsTransformationMethod; 10 import android.text.method.HideReturnsTransformationMethod;
11 import android.text.method.PasswordTransformationMethod; 11 import android.text.method.PasswordTransformationMethod;
12 import android.view.LayoutInflater; 12 import android.view.LayoutInflater;
13 import android.view.View; 13 import android.view.View;
14 import android.view.ViewGroup; 14 import android.view.ViewGroup;
15 import android.widget.Button; 15 import android.widget.Button;
16 import android.widget.EditText; 16 import android.widget.EditText;
17 import android.widget.ImageView; 17 import android.widget.ImageView;
18 18
19 import com.hjx.personalcenter.R; 19 import com.hjx.personalcenter.R;
20 import com.hjx.personalcenter.activity.RegisterInfoActivity; 20 import com.hjx.personalcenter.activity.RegisterInfoActivity;
21 import com.hjx.personalcenter.db.Content; 21 import com.hjx.personalcenter.db.Content;
22 import com.hjx.personalcenter.db.SaveParam; 22 import com.hjx.personalcenter.db.SaveParam;
23 import com.hjx.personalcenter.http.HttpCode; 23 import com.hjx.personalcenter.http.HttpCode;
24 import com.hjx.personalcenter.http.HttpManager; 24 import com.hjx.personalcenter.http.HttpManager;
25 import com.hjx.personalcenter.util.AlertUtils; 25 import com.hjx.personalcenter.util.AlertUtils;
26 import com.hjx.personalcenter.util.PasswordCheckUtils; 26 import com.hjx.personalcenter.util.PasswordCheckUtils;
27 import com.hjx.personalcenter.util.PhoneNumCheckUtils; 27 import com.hjx.personalcenter.util.PhoneNumCheckUtils;
28 28
29 import org.json.JSONException; 29 import org.json.JSONException;
30 import org.json.JSONObject; 30 import org.json.JSONObject;
31 31
32 import java.util.TimerTask; 32 import java.util.TimerTask;
33 33
34 /** 34 /**
35 * 注册 35 * 注册
36 * Created by Administrator on 2016/11/7. 36 * Created by Administrator on 2016/11/7.
37 */ 37 */
38 38
39 public class RegisterFragment extends Fragment implements View.OnClickListener { 39 public class RegisterFragment extends Fragment implements View.OnClickListener {
40 private View mView; 40 private View mView;
41 41
42 private Button btn_register,get_authcode; 42 private Button btn_register,get_authcode;
43 private EditText phonenumber,password,anth_6num;//;//密码 43 private EditText phonenumber,password,anth_6num;//;//密码
44 private ImageView openeyes; 44 private ImageView openeyes;
45 private String sourceStr ="android"; 45 private String sourceStr ="android";
46 private String typeStr = "register"; 46 private String typeStr = "register";
47 private int delayTime=60; 47 private int delayTime=60;
48 private java.util.Timer Delaytimer; 48 private java.util.Timer Delaytimer;
49 private int type; 49 private int type;
50 public static Boolean showPassword = false; 50 public static Boolean showPassword = false;
51 public static String TABLAYOUT_FRAGMENT = "tab_fragment"; 51 public static String TABLAYOUT_FRAGMENT = "tab_fragment";
52 52
53 public static RegisterFragment newInstance(int type) { 53 public static RegisterFragment newInstance(int type) {
54 RegisterFragment fragment = new RegisterFragment(); 54 RegisterFragment fragment = new RegisterFragment();
55 Bundle bundle = new Bundle(); 55 Bundle bundle = new Bundle();
56 bundle.putSerializable(TABLAYOUT_FRAGMENT, type); 56 bundle.putSerializable(TABLAYOUT_FRAGMENT, type);
57 fragment.setArguments(bundle); 57 fragment.setArguments(bundle);
58 return fragment; 58 return fragment;
59 59
60 } 60 }
61 Handler handler = new Handler() { 61 Handler handler = new Handler() {
62 @Override 62 @Override
63 public void handleMessage(Message msg) { 63 public void handleMessage(Message msg) {
64 super.handleMessage(msg); 64 super.handleMessage(msg);
65 try { 65 try {
66 JSONObject jsonObject; 66 JSONObject jsonObject;
67 String status; 67 String status;
68 switch (msg.what) { 68 switch (msg.what) {
69 case HttpCode.REGISTERED_SUCESS: 69 case HttpCode.REGISTERED_SUCESS:
70 jsonObject = (JSONObject) msg.obj; 70 jsonObject = (JSONObject) msg.obj;
71 status = jsonObject.getString("status"); 71 status = jsonObject.getString("status");
72 //AlertUtils.showToast(RegisterActivity.this, jsonObject.optString("message")); 72 //AlertUtils.showToast(RegisterActivity.this, jsonObject.optString("message"));
73 String access_token = jsonObject.getString("access_token"); 73 String access_token = jsonObject.getString("access_token");
74 String userId = jsonObject.getString("userId"); 74 String userId = jsonObject.getString("userId");
75 if (status.equals("100")) { 75 if (status.equals("100")) {
76 String usernameStr = phonenumber.getText().toString().trim(); 76 String usernameStr = phonenumber.getText().toString().trim();
77 String passwordStr = password.getText().toString().trim(); 77 String passwordStr = password.getText().toString().trim();
78 HttpManager.getInstance().saveLoginInfo(getActivity(),usernameStr,passwordStr,access_token,userId); 78 HttpManager.getInstance().saveLoginInfo(getActivity(),usernameStr,passwordStr,access_token,userId);
79 SaveParam.getInstance().saveCustomizeParam(getActivity(), SaveParam.ACCOUNT, "1"); 79 SaveParam.getInstance().saveCustomizeParam(getActivity(), SaveParam.ACCOUNT, "1");
80 AlertUtils.showToast(getActivity(), "注册成功!"); 80 AlertUtils.showToast(getActivity(), "注册成功!");
81 Content.accountflag =1; 81 Content.accountflag =1;
82 Intent intent = new Intent(); 82 Intent intent = new Intent();
83 intent.setClass(getActivity(),RegisterInfoActivity.class); 83 intent.setClass(getActivity(),RegisterInfoActivity.class);
84 startActivity(intent); 84 startActivity(intent);
85 getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout); 85 getActivity().overridePendingTransition(R.anim.rightin, R.anim.rightout);
86 getActivity().finish();
87 }else if(status.equals("209")){ 86 }else if(status.equals("209")){
88 AlertUtils.showToast(getActivity(), "验证码错误!"); 87 AlertUtils.showToast(getActivity(), "验证码错误!");
89 } 88 }
90 break; 89 break;
91 case HttpCode.REGISTERED_FAIL: 90 case HttpCode.REGISTERED_FAIL:
92 AlertUtils.showToast(getActivity(), "注册失败"); 91 AlertUtils.showToast(getActivity(), "注册失败");
93 break; 92 break;
94 case HttpCode.AUTHCODE_SUCESS: 93 case HttpCode.AUTHCODE_SUCESS:
95 jsonObject = (JSONObject) msg.obj; 94 jsonObject = (JSONObject) msg.obj;
96 status = jsonObject.optString("status"); 95 status = jsonObject.optString("status");
97 if (status.equals("100")) { 96 if (status.equals("100")) {
98 AlertUtils.showToast(getActivity(), "验证码发送成功"); 97 AlertUtils.showToast(getActivity(), "验证码发送成功");
99 } 98 }
100 99
101 break; 100 break;
102 case HttpCode.AUTHCODE_FAIL: 101 case HttpCode.AUTHCODE_FAIL:
103 jsonObject = (JSONObject) msg.obj; 102 jsonObject = (JSONObject) msg.obj;
104 AlertUtils.showToast(getActivity(), "验证码发送失败"); 103 AlertUtils.showToast(getActivity(), "验证码发送失败");
105 break; 104 break;
106 case HttpCode.IS_REFISTER: 105 case HttpCode.IS_REFISTER:
107 jsonObject = (JSONObject) msg.obj; 106 jsonObject = (JSONObject) msg.obj;
108 status = jsonObject.getString("status"); 107 status = jsonObject.getString("status");
109 if (!status.equals("true")) { 108 if (!status.equals("true")) {
110 getauthcode(); 109 getauthcode();
111 110
112 }else { 111 }else {
113 AlertUtils.showToast(getActivity(), "该手机号已经注册过了"); 112 AlertUtils.showToast(getActivity(), "该手机号已经注册过了");
114 } 113 }
115 break; 114 break;
116 case 21: 115 case 21:
117 if(delayTime<=0){ 116 if(delayTime<=0){
118 if(Delaytimer!=null){ 117 if(Delaytimer!=null){
119 Delaytimer.cancel(); 118 Delaytimer.cancel();
120 } 119 }
121 get_authcode.setEnabled(true); 120 get_authcode.setEnabled(true);
122 get_authcode.setClickable(true); 121 get_authcode.setClickable(true);
123 get_authcode.setText("获取验证码"); 122 get_authcode.setText("获取验证码");
124 delayTime=60; 123 delayTime=60;
125 }else{ 124 }else{
126 get_authcode.setEnabled(false); 125 get_authcode.setEnabled(false);
127 get_authcode.setClickable(false); 126 get_authcode.setClickable(false);
128 get_authcode.setText(delayTime + " s"); 127 get_authcode.setText(delayTime + " s");
129 } 128 }
130 break; 129 break;
131 } 130 }
132 } catch (JSONException e) { 131 } catch (JSONException e) {
133 e.printStackTrace(); 132 e.printStackTrace();
134 } 133 }
135 } 134 }
136 }; 135 };
137 @Override 136 @Override
138 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 137 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
139 if (mView == null) { 138 if (mView == null) {
140 mView = inflater.inflate(R.layout.fragment_loginandregister_register, container, false); 139 mView = inflater.inflate(R.layout.fragment_loginandregister_register, container, false);
141 initView(mView); 140 initView(mView);
142 initData(); 141 initData();
143 setLister(); 142 setLister();
144 143
145 144
146 } 145 }
147 return mView; 146 return mView;
148 } 147 }
149 148
150 private void initView(View mView) { 149 private void initView(View mView) {
151 get_authcode = (Button) mView.findViewById(R.id.btn_authcode); 150 get_authcode = (Button) mView.findViewById(R.id.btn_authcode);
152 anth_6num = (EditText) mView.findViewById(R.id.et_authcode); 151 anth_6num = (EditText) mView.findViewById(R.id.et_authcode);
153 phonenumber = (EditText) mView.findViewById(R.id.et_phonenumber); 152 phonenumber = (EditText) mView.findViewById(R.id.et_phonenumber);
154 password = (EditText) mView.findViewById(R.id.et_password); 153 password = (EditText) mView.findViewById(R.id.et_password);
155 openeyes= (ImageView) mView.findViewById(R.id.iv_pwd_change); 154 openeyes= (ImageView) mView.findViewById(R.id.iv_pwd_change);
156 btn_register = (Button) mView.findViewById(R.id.btn_register); 155 btn_register = (Button) mView.findViewById(R.id.btn_register);
157 156
158 } 157 }
159 private void initData() { 158 private void initData() {
160 } 159 }
161 private void setLister() { 160 private void setLister() {
162 get_authcode.setOnClickListener(this); 161 get_authcode.setOnClickListener(this);
163 openeyes.setOnClickListener(this); 162 openeyes.setOnClickListener(this);
164 btn_register.setOnClickListener(this); 163 btn_register.setOnClickListener(this);
165 } 164 }
166 165
167 166
168 @Override 167 @Override
169 public void onClick(View v) { 168 public void onClick(View v) {
170 switch (v.getId()){ 169 switch (v.getId()){
171 case R.id.btn_register: 170 case R.id.btn_register:
172 //测试 171 //测试
173 // 172 //
174 173
175 String usernameStr = phonenumber.getText().toString().trim(); 174 String usernameStr = phonenumber.getText().toString().trim();
176 String authcodeStr = anth_6num.getText().toString().trim(); 175 String authcodeStr = anth_6num.getText().toString().trim();
177 String passwordStr = password.getText().toString().trim(); 176 String passwordStr = password.getText().toString().trim();
178 if (TextUtils.isEmpty(usernameStr) || TextUtils.isEmpty(authcodeStr)||TextUtils.isEmpty(passwordStr)) { 177 if (TextUtils.isEmpty(usernameStr) || TextUtils.isEmpty(authcodeStr)||TextUtils.isEmpty(passwordStr)) {
179 AlertUtils.showToast(getActivity(), "手机号,密码和验证码不能为空"); 178 AlertUtils.showToast(getActivity(), "手机号,密码和验证码不能为空");
180 return; 179 return;
181 } else if(passwordStr.length()<8){ 180 } else if(passwordStr.length()<8){
182 AlertUtils.showToast(getActivity(), "密码不能少于8位"); 181 AlertUtils.showToast(getActivity(), "密码不能少于8位");
183 }else if (!PhoneNumCheckUtils.isPhone(usernameStr)){ 182 }else if (!PhoneNumCheckUtils.isPhone(usernameStr)){
184 AlertUtils.showToast(getActivity(), "手机号码输入错误"); 183 AlertUtils.showToast(getActivity(), "手机号码输入错误");
185 184
186 }else if(!passwordStr.matches(PasswordCheckUtils.PASSWORD_CHAR_AND_NUMBER)){ 185 }else if(!passwordStr.matches(PasswordCheckUtils.PASSWORD_CHAR_AND_NUMBER)){
187 AlertUtils.showToast(getActivity(), "密码由英文和数字组成"); 186 AlertUtils.showToast(getActivity(), "密码由英文和数字组成");
188 }else { 187 }else {
189 register(); 188 register();
190 } 189 }
191 190
192 break; 191 break;
193 case R.id.iv_pwd_change: 192 case R.id.iv_pwd_change:
194 if(showPassword){//显示密码 193 if(showPassword){//显示密码
195 showPassword = !showPassword; 194 showPassword = !showPassword;
196 openeyes.setImageResource(R.mipmap.pwd_open); 195 openeyes.setImageResource(R.mipmap.pwd_open);
197 password.setTransformationMethod(HideReturnsTransformationMethod.getInstance()); 196 password.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
198 password.setSelection(password.getText().toString().length()); 197 password.setSelection(password.getText().toString().length());
199 }else{//隐藏密码 198 }else{//隐藏密码
200 showPassword = !showPassword; 199 showPassword = !showPassword;
201 openeyes.setImageResource(R.mipmap.pwd_hide); 200 openeyes.setImageResource(R.mipmap.pwd_hide);
202 password.setTransformationMethod(PasswordTransformationMethod.getInstance()); 201 password.setTransformationMethod(PasswordTransformationMethod.getInstance());
203 password.setSelection(password.getText().toString().length()); 202 password.setSelection(password.getText().toString().length());
204 } 203 }
205 break; 204 break;
206 case R.id.btn_authcode: 205 case R.id.btn_authcode:
207 usernameStr = phonenumber.getText().toString().trim(); 206 usernameStr = phonenumber.getText().toString().trim();
208 if (!PhoneNumCheckUtils.isPhone(usernameStr)){ 207 if (!PhoneNumCheckUtils.isPhone(usernameStr)){
209 AlertUtils.showToast(getActivity(), "请输入正确的手机号"); 208 AlertUtils.showToast(getActivity(), "请输入正确的手机号");
210 }else { 209 }else {
211 anth_6num.requestFocus(); 210 anth_6num.requestFocus();
212 ifregister(); 211 ifregister();
213 } 212 }
214 213
215 break; 214 break;
216 } 215 }
217 216
218 } 217 }
219 //获取验证码 218 //获取验证码
220 private void getauthcode() { 219 private void getauthcode() {
221 String usernameStr = phonenumber.getText().toString().trim(); 220 String usernameStr = phonenumber.getText().toString().trim();
222 HttpManager.getInstance().authCode(typeStr, usernameStr, handler, getActivity()); 221 HttpManager.getInstance().authCode(typeStr, usernameStr, handler, getActivity());
223 valiDelay(); 222 valiDelay();
224 } 223 }
225 224
226 private void ifregister() { 225 private void ifregister() {
227 String usernameStr = phonenumber.getText().toString().trim(); 226 String usernameStr = phonenumber.getText().toString().trim();
228 HttpManager.getInstance().isregistered(usernameStr, handler, getActivity()); 227 HttpManager.getInstance().isregistered(usernameStr, handler, getActivity());
229 } 228 }
230 229
231 private void register() { 230 private void register() {
232 String usernameStr = phonenumber.getText().toString().trim(); 231 String usernameStr = phonenumber.getText().toString().trim();
233 String authcodeStr = anth_6num.getText().toString().trim(); 232 String authcodeStr = anth_6num.getText().toString().trim();
234 String passwordStr = password.getText().toString().trim(); 233 String passwordStr = password.getText().toString().trim();
235 HttpManager.getInstance().register(getActivity(), usernameStr, passwordStr, authcodeStr, sourceStr,handler); 234 HttpManager.getInstance().register(getActivity(), usernameStr, passwordStr, authcodeStr, sourceStr,handler);
236 } 235 }
237 // 线程类 定时器 236 // 线程类 定时器
238 public void valiDelay() { 237 public void valiDelay() {
239 238
240 Delaytimer = new java.util.Timer(true); 239 Delaytimer = new java.util.Timer(true);
241 240
242 241
243 TimerTask task = new TimerTask() { 242 TimerTask task = new TimerTask() {
244 public void run() { 243 public void run() {
245 //每次需要执行的代码放到这里面。 244 //每次需要执行的代码放到这里面。
246 delayTime--; 245 delayTime--;
247 handler.sendEmptyMessage(21); 246 handler.sendEmptyMessage(21);
248 } 247 }
249 }; 248 };
250 Delaytimer.schedule(task, 1000,1000); 249 Delaytimer.schedule(task, 1000,1000);
251 } 250 }
252 } 251 }
253 252
PersonalCenter/app/src/main/java/com/hjx/personalcenter/fragment/VersionsInfoFragment.java
1 package com.hjx.personalcenter.fragment; 1 package com.hjx.personalcenter.fragment;
2 2
3 import android.os.Bundle; 3 import android.os.Bundle;
4 import android.os.Handler; 4 import android.os.Handler;
5 import android.os.Message; 5 import android.os.Message;
6 import android.support.annotation.Nullable; 6 import android.support.annotation.Nullable;
7 import android.support.v4.app.Fragment; 7 import android.support.v4.app.Fragment;
8 import android.support.v4.view.ViewPager; 8 import android.support.v4.view.ViewPager;
9 import android.util.Log; 9 import android.util.Log;
10 import android.view.LayoutInflater; 10 import android.view.LayoutInflater;
11 import android.view.View; 11 import android.view.View;
12 import android.view.ViewGroup; 12 import android.view.ViewGroup;
13 import android.widget.AdapterView; 13 import android.widget.AdapterView;
14 import android.widget.GridView; 14 import android.widget.GridView;
15 import android.widget.ImageView; 15 import android.widget.ImageView;
16 import android.widget.LinearLayout; 16 import android.widget.LinearLayout;
17 import android.widget.TextView; 17 import android.widget.TextView;
18 18
19 import com.facebook.drawee.view.SimpleDraweeView; 19 import com.facebook.drawee.view.SimpleDraweeView;
20 import com.hjx.personalcenter.R; 20 import com.hjx.personalcenter.R;
21 import com.hjx.personalcenter.activity.ChangePresonalInfoActivity; 21 import com.hjx.personalcenter.activity.ChangePresonalInfoActivity;
22 import com.hjx.personalcenter.adapter.GridAdapter; 22 import com.hjx.personalcenter.adapter.GridAdapter;
23 import com.hjx.personalcenter.customdialog.VerSionDialog; 23 import com.hjx.personalcenter.customdialog.VerSionDialog;
24 import com.hjx.personalcenter.db.SaveParam; 24 import com.hjx.personalcenter.db.SaveParam;
25 import com.hjx.personalcenter.http.HttpCode; 25 import com.hjx.personalcenter.http.HttpCode;
26 import com.hjx.personalcenter.http.HttpManager; 26 import com.hjx.personalcenter.http.HttpManager;
27 import com.hjx.personalcenter.interfaces.DialogCallBack; 27 import com.hjx.personalcenter.interfaces.DialogCallBack;
28 import com.hjx.personalcenter.model.DefautPublishInfo; 28 import com.hjx.personalcenter.model.DefautPublishInfo;
29 import com.hjx.personalcenter.model.VersionInfo; 29 import com.hjx.personalcenter.model.VersionInfo;
30 30
31 import java.util.ArrayList; 31 import java.util.ArrayList;
32 import java.util.List; 32 import java.util.List;
33 33
34 /** 34 /**
35 * Created by h on 2017/8/12. 35 * Created by h on 2017/8/12.
36 */ 36 */
37 37
38 public class VersionsInfoFragment extends Fragment implements AdapterView.OnItemClickListener, View.OnClickListener, DialogCallBack.VersionCallBack { 38 public class VersionsInfoFragment extends Fragment implements AdapterView.OnItemClickListener, View.OnClickListener, DialogCallBack.VersionCallBack {
39 private GridView gridView; 39 private GridView gridView;
40 private ArrayList<DefautPublishInfo.DataBean> defautPublishInfos = new ArrayList<>(); 40 private ArrayList<DefautPublishInfo.DataBean> defautPublishInfos = new ArrayList<>();
41 private GridAdapter sim_adapter; 41 private GridAdapter sim_adapter;
42 private View mView; 42 private View mView;
43 private int type; 43 private int type;
44 private ImageView cances; 44 private ImageView cances;
45 private LinearLayout tv_presons; 45 private LinearLayout tv_presons;
46 private TextView publish, sub; 46 private TextView publish, sub;
47 private SimpleDraweeView simpleDraweeView; 47 private SimpleDraweeView simpleDraweeView;
48 public static String TABLAYOUT_FRAGMENT = "versionfragment"; 48 public static String TABLAYOUT_FRAGMENT = "versionfragment";
49 49
50 private String chinese, math,english,physics,chemistry,history,geography,political,biology,science; 50 private String chinese, math,english,physics,chemistry,history,geography,political,biology,science;
51 public static VersionsInfoFragment newInstance(int type) { 51 public static VersionsInfoFragment newInstance(int type) {
52 VersionsInfoFragment fragment = new VersionsInfoFragment(); 52 VersionsInfoFragment fragment = new VersionsInfoFragment();
53 Bundle bundle = new Bundle(); 53 Bundle bundle = new Bundle();
54 bundle.putSerializable(TABLAYOUT_FRAGMENT, type); 54 bundle.putSerializable(TABLAYOUT_FRAGMENT, type);
55 fragment.setArguments(bundle); 55 fragment.setArguments(bundle);
56 return fragment; 56 return fragment;
57 57
58 } 58 }
59 59
60 Handler handler = new Handler() { 60 Handler handler = new Handler() {
61 @Override 61 @Override
62 public void handleMessage(Message msg) { 62 public void handleMessage(Message msg) {
63 super.handleMessage(msg); 63 super.handleMessage(msg);
64 switch (msg.what) { 64 switch (msg.what) {
65 case HttpCode.PUBLISH_SUCESS: 65 case HttpCode.PUBLISH_SUCESS:
66 defautPublishInfos.clear(); 66 defautPublishInfos.clear();
67 defautPublishInfos.addAll((List<DefautPublishInfo.DataBean>) msg.obj); 67 defautPublishInfos.addAll((List<DefautPublishInfo.DataBean>) msg.obj);
68 sim_adapter.notifyDataSetChanged(); 68 sim_adapter.notifyDataSetChanged();
69 for (int i = 0; i < defautPublishInfos.size(); i++) { 69 for (int i = 0; i < defautPublishInfos.size(); i++) {
70 String subject = defautPublishInfos.get(i).getSubject(); 70 String subject = defautPublishInfos.get(i).getSubject();
71 if (subject.equals("语文")) { 71 if (subject.equals("语文")) {
72 chinese = defautPublishInfos.get(i).getPress(); 72 chinese = defautPublishInfos.get(i).getPress();
73 } else if (subject.equals("数学")) { 73 } else if (subject.equals("数学")) {
74 math = defautPublishInfos.get(i).getPress(); 74 math = defautPublishInfos.get(i).getPress();
75 } else if (subject.equals("英语")) { 75 } else if (subject.equals("英语")) {
76 english = defautPublishInfos.get(i).getPress(); 76 english = defautPublishInfos.get(i).getPress();
77 } else if (subject.equals("物理")) { 77 } else if (subject.equals("物理")) {
78 physics = defautPublishInfos.get(i).getPress(); 78 physics = defautPublishInfos.get(i).getPress();
79 } else if (subject.equals("化学")) { 79 } else if (subject.equals("化学")) {
80 chemistry = defautPublishInfos.get(i).getPress(); 80 chemistry = defautPublishInfos.get(i).getPress();
81 } else if (subject.equals("历史")) { 81 } else if (subject.equals("历史")) {
82 history = defautPublishInfos.get(i).getPress(); 82 history = defautPublishInfos.get(i).getPress();
83 } else if (subject.equals("地理")) { 83 } else if (subject.equals("地理")) {
84 geography = defautPublishInfos.get(i).getPress(); 84 geography = defautPublishInfos.get(i).getPress();
85 } else if (subject.equals("政治")) { 85 } else if (subject.equals("政治")) {
86 political = defautPublishInfos.get(i).getPress(); 86 political = defautPublishInfos.get(i).getPress();
87 }else if (subject.equals("生物")) { 87 }else if (subject.equals("生物")) {
88 biology = defautPublishInfos.get(i).getPress(); 88 biology = defautPublishInfos.get(i).getPress();
89 }else if (subject.equals("科学")) { 89 }else if (subject.equals("科学")) {
90 science = defautPublishInfos.get(i).getPress(); 90 science = defautPublishInfos.get(i).getPress();
91 } 91 }
92 } 92 }
93 break; 93 break;
94 } 94 }
95 } 95 }
96 }; 96 };
97 97
98 @Override 98 @Override
99 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 99 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
100 if (mView == null) { 100 if (mView == null) {
101 mView = inflater.inflate(R.layout.fragment_changge_version_info, container, false); 101 mView = inflater.inflate(R.layout.fragment_changge_version_info, container, false);
102 String userID = SaveParam.getInstance().getLoginParam(getActivity(), "userId"); 102 String userID = SaveParam.getInstance().getLoginParam(getActivity(), "userId");
103 String graderid = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.GRADENS); 103 String graderid = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.GRADENS);
104 //子账户年级id 104 // //子账户年级id
105 String graderidchilds = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.CHILDSGRADENS); 105 // String graderidchilds = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.CHILDSGRADENS);
106 //账户类型 106 //账户类型
107 String accounts = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.ACCOUNT); 107 String accounts = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.ACCOUNT);
108 String childID = SaveParam.getInstance().getCustomizeParam(getActivity(),SaveParam.CHILDSID); 108 String childID = SaveParam.getInstance().getCustomizeParam(getActivity(),SaveParam.CHILDSID);
109 try { 109 try {
110 Object auserID; 110 Object auserID;
111 int type; 111 int type;
112 int graderIDs =Integer.parseInt(graderid); 112 int graderIDs =Integer.parseInt(graderid);
113 if ("2".equals(accounts)){ 113 if ("2".equals(accounts)){
114 type=Integer.parseInt(accounts); 114 type=Integer.parseInt(accounts);
115 auserID =childID; 115 auserID =childID;
116 }else { 116 }else {
117 type =Integer.parseInt(accounts); 117 type =Integer.parseInt(accounts);
118 auserID =Long.parseLong(userID); 118 auserID =Long.parseLong(userID);
119 } 119 }
120 //获取版本信息 120 //获取版本信息
121 HttpManager.getInstance().getpublishinfo(getActivity(),auserID,graderIDs,type,handler); 121 HttpManager.getInstance().getpublishinfo(getActivity(),auserID,graderIDs,type,handler);
122 122
123 } catch (NumberFormatException e) { 123 } catch (NumberFormatException e) {
124 e.printStackTrace(); 124 e.printStackTrace();
125 } 125 }
126 126
127 initView(mView); 127 initView(mView);
128 initData(); 128 initData();
129 setLister(); 129 setLister();
130 130
131 131
132 } 132 }
133 return mView; 133 return mView;
134 } 134 }
135 135
136 //初始化 136 //初始化
137 private void initView(View mView) { 137 private void initView(View mView) {
138 gridView = (GridView) mView.findViewById(R.id.grideview); 138 gridView = (GridView) mView.findViewById(R.id.grideview);
139 cances = (ImageView) mView.findViewById(R.id.cancel); 139 cances = (ImageView) mView.findViewById(R.id.cancel);
140 sub = (TextView) mView.findViewById(R.id.version_sub); 140 sub = (TextView) mView.findViewById(R.id.version_sub);
141 tv_presons = (LinearLayout) mView.findViewById(R.id.tv_presons); 141 tv_presons = (LinearLayout) mView.findViewById(R.id.tv_presons);
142 142
143 } 143 }
144 144
145 private void initData() { 145 private void initData() {
146 sim_adapter = new GridAdapter(defautPublishInfos, getActivity()); 146 sim_adapter = new GridAdapter(defautPublishInfos, getActivity());
147 //配置适配器 147 //配置适配器
148 gridView.setAdapter(sim_adapter); 148 gridView.setAdapter(sim_adapter);
149 } 149 }
150 150
151 private void setLister() { 151 private void setLister() {
152 gridView.setOnItemClickListener(this); 152 gridView.setOnItemClickListener(this);
153 sub.setOnClickListener(this); 153 sub.setOnClickListener(this);
154 tv_presons.setOnClickListener(this); 154 tv_presons.setOnClickListener(this);
155 cances.setOnClickListener(this); 155 cances.setOnClickListener(this);
156 } 156 }
157 157
158 @Override 158 @Override
159 public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 159 public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
160 SaveParam.getInstance().saveLoginParam(getActivity(), SaveParam.SUBJECT, defautPublishInfos.get(position).getSubject()); 160 SaveParam.getInstance().saveLoginParam(getActivity(), SaveParam.SUBJECT, defautPublishInfos.get(position).getSubject());
161 VerSionDialog.getInstance(this).show(getChildFragmentManager(), "VerSionDialog"); 161 VerSionDialog.getInstance(this).show(getChildFragmentManager(), "VerSionDialog");
162 simpleDraweeView = (SimpleDraweeView) view.findViewById(R.id.image_publish); 162 simpleDraweeView = (SimpleDraweeView) view.findViewById(R.id.image_publish);
163 publish = (TextView) view.findViewById(R.id.tv_publish); 163 publish = (TextView) view.findViewById(R.id.tv_publish);
164 164
165 } 165 }
166 166
167 167
168 @Override 168 @Override
169 public void onResume() { 169 public void onResume() {
170 super.onResume(); 170 super.onResume();
171 171
172 } 172 }
173 173
174 @Override 174 @Override
175 public void onClick(View v) { 175 public void onClick(View v) {
176 switch (v.getId()) { 176 switch (v.getId()) {
177 case R.id.version_sub: 177 case R.id.version_sub:
178 Log.e("test", "你提交版本信息"); 178 Log.e("test", "你提交版本信息");
179 String userID = SaveParam.getInstance().getLoginParam(getActivity(), "userId"); 179 String userID = SaveParam.getInstance().getLoginParam(getActivity(), "userId");
180 //子账户id 180 //子账户id
181 String childsidid = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.CHILDSID); 181 String childsidid = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.CHILDSID);
182 //账户类型 182 //账户类型
183 String accounts = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.ACCOUNT); 183 String accounts = SaveParam.getInstance().getCustomizeParam(getActivity(), SaveParam.ACCOUNT);
184 try { 184 try {
185 String id = null; 185 String id = null;
186 //String piblish = "清华大学出版社"; 186 //String piblish = "清华大学出版社";
187 if ("2".equals(accounts)) { 187 if ("2".equals(accounts)) {
188 id = childsidid; 188 id = childsidid;
189 } else { 189 } else {
190 id = userID; 190 id = userID;
191 } 191 }
192 //修改版本信息 192 //修改版本信息
193 HttpManager.getInstance().changepublishinfo(getActivity(), id,chinese,math,english,physics,chemistry,history,geography,political,biology,science); 193 HttpManager.getInstance().changepublishinfo(getActivity(), id,chinese,math,english,physics,chemistry,history,geography,political,biology,science);
194 194
195 } catch (NumberFormatException e) { 195 } catch (NumberFormatException e) {
196 e.printStackTrace(); 196 e.printStackTrace();
197 } 197 }
198 198
199 199
200 break; 200 break;
201 case R.id.tv_presons: 201 case R.id.tv_presons:
202 final ChangePresonalInfoActivity mainActivity = (ChangePresonalInfoActivity) getActivity(); 202 final ChangePresonalInfoActivity mainActivity = (ChangePresonalInfoActivity) getActivity();
203 mainActivity.setFragment2Fragment(new ChangePresonalInfoActivity.Fragment2Fragment() { 203 mainActivity.setFragment2Fragment(new ChangePresonalInfoActivity.Fragment2Fragment() {
204 @Override 204 @Override
205 public void gotoFragment(ViewPager viewPager) { 205 public void gotoFragment(ViewPager viewPager) {
206 //fragment传递数据 206 //fragment传递数据
207 viewPager.setCurrentItem(0); 207 viewPager.setCurrentItem(0);
208 } 208 }
209 }); 209 });
210 mainActivity.forSkip(); 210 mainActivity.forSkip();
211 break; 211 break;
212 212
213 case R.id.cancel: 213 case R.id.cancel:
214 getActivity().finish(); 214 getActivity().finish();
215 break; 215 break;
216 } 216 }
217 217
218 } 218 }
219 219
220 @Override 220 @Override
221 public void versionOnItemClick(ArrayList<VersionInfo.DataBean> data, int position, int type) { 221 public void versionOnItemClick(ArrayList<VersionInfo.DataBean> data, int position, int type) {
222 String imageurl = data.get(position).getPressCover(); 222 String imageurl = data.get(position).getPressCover();
223 String publishs = data.get(position).getPressName(); 223 String publishs = data.get(position).getPressName();
224 224
225 simpleDraweeView.setImageURI(imageurl); 225 simpleDraweeView.setImageURI(imageurl);
226 publish.setText(publishs); 226 publish.setText(publishs);
227 String subject = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.SUBJECT); 227 String subject = SaveParam.getInstance().getLoginParam(getActivity(), SaveParam.SUBJECT);
228 Log.e("test", "选择的科目" + subject); 228 Log.e("test", "选择的科目" + subject);
229 if ("语文".equals(subject)) { 229 if ("语文".equals(subject)) {
230 chinese = publishs; 230 chinese = publishs;
231 } else if ("数学".equals(subject)) { 231 } else if ("数学".equals(subject)) {
232 math = publishs; 232 math = publishs;
233 }else if ("英语".equals(subject)) { 233 }else if ("英语".equals(subject)) {
234 english = publishs; 234 english = publishs;
235 }else if ("物理".equals(subject)) { 235 }else if ("物理".equals(subject)) {
236 physics = publishs; 236 physics = publishs;
237 }else if ("化学".equals(subject)) { 237 }else if ("化学".equals(subject)) {
238 chemistry = publishs; 238 chemistry = publishs;
239 }else if ("历史".equals(subject)) { 239 }else if ("历史".equals(subject)) {
240 history = publishs; 240 history = publishs;
241 }else if ("地理".equals(subject)) { 241 }else if ("地理".equals(subject)) {
242 geography = publishs; 242 geography = publishs;
243 }else if ("政治".equals(subject)) { 243 }else if ("政治".equals(subject)) {
244 political = publishs; 244 political = publishs;
245 }else if ("生物".equals(subject)) { 245 }else if ("生物".equals(subject)) {
246 biology = publishs; 246 biology = publishs;
247 }else if ("科学".equals(subject)) { 247 }else if ("科学".equals(subject)) {
248 science = publishs; 248 science = publishs;
249 } 249 }
250 250
251 } 251 }
252 } 252 }
253 253
PersonalCenter/app/src/main/java/com/hjx/personalcenter/http/HttpManager.java
1 package com.hjx.personalcenter.http; 1 package com.hjx.personalcenter.http;
2 2
3 import android.app.Activity; 3 import android.app.Activity;
4 import android.app.ProgressDialog; 4 import android.app.ProgressDialog;
5 import android.content.Context; 5 import android.content.Context;
6 import android.content.Intent; 6 import android.content.Intent;
7 import android.os.Handler; 7 import android.os.Handler;
8 import android.os.Message; 8 import android.os.Message;
9 import android.util.Log; 9 import android.util.Log;
10 import android.view.KeyEvent; 10 import android.view.KeyEvent;
11 import android.widget.Toast; 11 import android.widget.Toast;
12 12
13 import com.google.gson.Gson; 13 import com.google.gson.Gson;
14 import com.google.gson.reflect.TypeToken;
14 import com.hjx.personalcenter.R; 15 import com.hjx.personalcenter.R;
15 import com.hjx.personalcenter.activity.BangDingCode; 16 import com.hjx.personalcenter.activity.BangDingCode;
16 import com.hjx.personalcenter.activity.LoginAndRegisterActivity; 17 import com.hjx.personalcenter.activity.LoginAndRegisterActivity;
17 import com.hjx.personalcenter.activity.TheStartPageActivity; 18 import com.hjx.personalcenter.activity.TheStartPageActivity;
18 import com.hjx.personalcenter.db.Content; 19 import com.hjx.personalcenter.db.Content;
19 import com.hjx.personalcenter.db.SaveParam; 20 import com.hjx.personalcenter.db.SaveParam;
20 import com.hjx.personalcenter.gson.GsonTool; 21 import com.hjx.personalcenter.gson.GsonTool;
21 import com.hjx.personalcenter.model.AppVersion; 22 import com.hjx.personalcenter.model.AppVersion;
22 import com.hjx.personalcenter.model.CardInfo; 23 import com.hjx.personalcenter.model.CardInfo;
23 import com.hjx.personalcenter.model.ChildsInfo; 24 import com.hjx.personalcenter.model.ChildsInfo;
24 import com.hjx.personalcenter.model.CityInfo; 25 import com.hjx.personalcenter.model.CityInfo;
25 import com.hjx.personalcenter.model.CountyInfo; 26 import com.hjx.personalcenter.model.CountyInfo;
26 import com.hjx.personalcenter.model.DefautPublishInfo; 27 import com.hjx.personalcenter.model.DefautPublishInfo;
27 import com.hjx.personalcenter.model.GradeInfo; 28 import com.hjx.personalcenter.model.GradeInfo;
28 import com.hjx.personalcenter.model.PesonalInfo; 29 import com.hjx.personalcenter.model.PesonalInfo;
29 import com.hjx.personalcenter.model.ProvinceInfo; 30 import com.hjx.personalcenter.model.ProvinceInfo;
30 import com.hjx.personalcenter.model.SchoolInfo; 31 import com.hjx.personalcenter.model.SchoolInfo;
31 import com.hjx.personalcenter.model.SignInfo; 32 import com.hjx.personalcenter.model.SignInfo;
32 import com.hjx.personalcenter.model.VersionInfo; 33 import com.hjx.personalcenter.model.VersionInfo;
33 import com.hjx.personalcenter.model.VideoInfo; 34 import com.hjx.personalcenter.model.VideoInfo;
34 import com.hjx.personalcenter.util.AlertUtils; 35 import com.hjx.personalcenter.util.AlertUtils;
35 import com.hjx.personalcenter.util.DialogPermission; 36 import com.hjx.personalcenter.util.DialogPermission;
36 import com.loopj.android.http.AsyncHttpResponseHandler; 37 import com.loopj.android.http.AsyncHttpResponseHandler;
37 import com.loopj.android.http.JsonHttpResponseHandler; 38 import com.loopj.android.http.JsonHttpResponseHandler;
38 import com.loopj.android.http.RequestParams; 39 import com.loopj.android.http.RequestParams;
39 40
40 import org.apache.http.Header; 41 import org.apache.http.Header;
41 import org.apache.http.entity.ByteArrayEntity; 42 import org.apache.http.entity.ByteArrayEntity;
42 import org.apache.http.message.BasicHeader; 43 import org.apache.http.message.BasicHeader;
43 import org.apache.http.protocol.HTTP; 44 import org.apache.http.protocol.HTTP;
44 import org.json.JSONException; 45 import org.json.JSONException;
45 import org.json.JSONObject; 46 import org.json.JSONObject;
46 47
47 import java.io.File; 48 import java.io.File;
48 import java.io.FileNotFoundException; 49 import java.io.FileNotFoundException;
49 import java.io.UnsupportedEncodingException; 50 import java.io.UnsupportedEncodingException;
50 import java.util.ArrayList; 51 import java.util.ArrayList;
51 import java.util.List; 52 import java.util.List;
52 53
53 public class HttpManager { 54 public class HttpManager {
54 private static HttpManager instance; 55 private static HttpManager instance;
55 private ProgressDialog mProgress = null; 56 private ProgressDialog mProgress = null;
56 57
57 public static HttpManager getInstance() { 58 public static HttpManager getInstance() {
58 if (instance == null) { 59 if (instance == null) {
59 instance = new HttpManager(); 60 instance = new HttpManager();
60 } 61 }
61 return instance; 62 return instance;
62 } 63 }
63 64
64 65
65 //登录接口 66 //登录接口
66 67
67 public void login(final String username, final String password, final Context mContext, final Handler handler) { 68 public void login(final String username, final String password, final Context mContext, final Handler handler) {
68 mProgress = DialogPermission.showProgress(mContext, null, "正在登录...", 69 mProgress = DialogPermission.showProgress(mContext, null, "正在登录...",
69 true, true, null); 70 true, true, null);
70 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 71 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
71 HttpClient.getInstance().get(HttpUrl.loginUrl + "?username=" + username + "&password=" + password, new AsyncHttpResponseHandler() { 72 HttpClient.getInstance().get(HttpUrl.loginUrl + "?username=" + username + "&password=" + password, new AsyncHttpResponseHandler() {
72 @Override 73 @Override
73 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 74 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
74 closeProgress(); 75 closeProgress();
75 Message msg = Message.obtain(); 76 Message msg = Message.obtain();
76 msg.what = HttpCode.LOGIN_SUCESS; 77 msg.what = HttpCode.LOGIN_SUCESS;
77 msg.obj = new String(arg2); 78 msg.obj = new String(arg2);
78 handler.sendMessage(msg); 79 handler.sendMessage(msg);
79 80
80 81
81 } 82 }
82 83
83 @Override 84 @Override
84 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 85 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
85 closeProgress(); 86 closeProgress();
86 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 87 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
87 } 88 }
88 }); 89 });
89 } 90 }
90 91
91 //注册接口 92 //注册接口
92 public void register(final Context context, String username, String password, String smscode, String source, final Handler handler) { 93 public void register(final Context context, String username, String password, String smscode, String source, final Handler handler) {
93 mProgress = DialogPermission.showProgress(context, null, "正在注册...", 94 mProgress = DialogPermission.showProgress(context, null, "正在注册...",
94 false, true, null); 95 false, true, null);
95 JSONObject jsonObject = new JSONObject(); 96 JSONObject jsonObject = new JSONObject();
96 ByteArrayEntity entity = null; 97 ByteArrayEntity entity = null;
97 try { 98 try {
98 jsonObject.put(HttpKey.USERNAME, username); 99 jsonObject.put(HttpKey.USERNAME, username);
99 jsonObject.put(HttpKey.PASSWORD, password); 100 jsonObject.put(HttpKey.PASSWORD, password);
100 jsonObject.put(HttpKey.SMSCODE, smscode); 101 jsonObject.put(HttpKey.SMSCODE, smscode);
101 jsonObject.put(HttpKey.SOURCE, source); 102 jsonObject.put(HttpKey.SOURCE, source);
102 Log.e("test", "jsonObject" + jsonObject); 103 Log.e("test", "jsonObject" + jsonObject);
103 entity = new ByteArrayEntity(jsonObject.toString().getBytes("UTF-8")); 104 entity = new ByteArrayEntity(jsonObject.toString().getBytes("UTF-8"));
104 entity.setContentType(new BasicHeader(HTTP.CONTENT_TYPE, "application/json")); 105 entity.setContentType(new BasicHeader(HTTP.CONTENT_TYPE, "application/json"));
105 } catch (JSONException e) { 106 } catch (JSONException e) {
106 e.printStackTrace(); 107 e.printStackTrace();
107 } catch (UnsupportedEncodingException e) { 108 } catch (UnsupportedEncodingException e) {
108 e.printStackTrace(); 109 e.printStackTrace();
109 } 110 }
110 HttpClient.getInstance().addHeader("Accept", "*/*"); 111 HttpClient.getInstance().addHeader("Accept", "*/*");
111 HttpClient.getInstance().post(context, HttpUrl.registeredUrl, entity, "application/json", new JsonHttpResponseHandler() { 112 HttpClient.getInstance().post(context, HttpUrl.registeredUrl, entity, "application/json", new JsonHttpResponseHandler() {
112 @Override 113 @Override
113 public void onSuccess(int statusCode, Header[] headers, JSONObject response) { 114 public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
114 super.onSuccess(statusCode, headers, response); 115 super.onSuccess(statusCode, headers, response);
115 closeProgress(); 116 closeProgress();
116 Log.e("test", "onSuccess" + response); 117 Log.e("test", "onSuccess" + response);
117 Message msg = Message.obtain(); 118 Message msg = Message.obtain();
118 msg.what = HttpCode.REGISTERED_SUCESS; 119 msg.what = HttpCode.REGISTERED_SUCESS;
119 msg.obj = response; 120 msg.obj = response;
120 handler.sendMessage(msg); 121 handler.sendMessage(msg);
121 122
122 } 123 }
123 124
124 @Override 125 @Override
125 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) { 126 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) {
126 super.onFailure(statusCode, headers, throwable, errorResponse); 127 super.onFailure(statusCode, headers, throwable, errorResponse);
127 closeProgress(); 128 closeProgress();
128 Log.e("test", "onFailure" + errorResponse); 129 Log.e("test", "onFailure" + errorResponse);
129 AlertUtils.showToast(context, "无法链接到服务器,请检查您的网络或稍后重试!"); 130 AlertUtils.showToast(context, "无法链接到服务器,请检查您的网络或稍后重试!");
130 } 131 }
131 132
132 }); 133 });
133 } 134 }
134 135
135 //注册验证码 136 //注册验证码
136 public void authCode(final String type, final String mobile, final Handler handler, final Context mContext) { 137 public void authCode(final String type, final String mobile, final Handler handler, final Context mContext) {
137 RequestParams params = new RequestParams(); 138 RequestParams params = new RequestParams();
138 params.put(HttpKey.TYPE, type); 139 params.put(HttpKey.TYPE, type);
139 params.put(HttpKey.MOBIL, mobile); 140 params.put(HttpKey.MOBIL, mobile);
140 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 141 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
141 HttpClient.getInstance().post(HttpUrl.authCodedUrl, params, new JsonHttpResponseHandler() { 142 HttpClient.getInstance().post(HttpUrl.authCodedUrl, params, new JsonHttpResponseHandler() {
142 143
143 @Override 144 @Override
144 public void onSuccess(int statusCode, Header[] headers, JSONObject response) { 145 public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
145 Log.e("test", "onSuccess-----" + response); 146 Log.e("test", "onSuccess-----" + response);
146 Message msg = Message.obtain(); 147 Message msg = Message.obtain();
147 msg.what = HttpCode.AUTHCODE_SUCESS; 148 msg.what = HttpCode.AUTHCODE_SUCESS;
148 msg.obj = response; 149 msg.obj = response;
149 handler.sendMessage(msg); 150 handler.sendMessage(msg);
150 } 151 }
151 152
152 @Override 153 @Override
153 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) { 154 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) {
154 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 155 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
155 } 156 }
156 }); 157 });
157 } 158 }
158 159
159 160
160 //手机号是否注册 161 //手机号是否注册
161 public void isregistered(final String mobile, final Handler handler, final Context mContext) { 162 public void isregistered(final String mobile, final Handler handler, final Context mContext) {
162 RequestParams params = new RequestParams(); 163 RequestParams params = new RequestParams();
163 params.put(HttpKey.USERNAME, mobile); 164 params.put(HttpKey.USERNAME, mobile);
164 HttpClient.getInstance().get(HttpUrl.isRegiterUrl + "?mobile=" + mobile, new JsonHttpResponseHandler() { 165 HttpClient.getInstance().get(HttpUrl.isRegiterUrl + "?mobile=" + mobile, new JsonHttpResponseHandler() {
165 @Override 166 @Override
166 public void onSuccess(int statusCode, Header[] headers, JSONObject response) { 167 public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
167 Log.e("test", "isregistered" + response.toString()); 168 Log.e("test", "isregistered" + response.toString());
168 Message msg = Message.obtain(); 169 Message msg = Message.obtain();
169 msg.what = HttpCode.IS_REFISTER; 170 msg.what = HttpCode.IS_REFISTER;
170 msg.obj = response; 171 msg.obj = response;
171 handler.sendMessage(msg); 172 handler.sendMessage(msg);
172 173
173 } 174 }
174 175
175 @Override 176 @Override
176 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) { 177 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) {
177 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 178 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
178 179
179 } 180 }
180 }); 181 });
181 } 182 }
182 183
183 //修改密码 184 //修改密码
184 public void changepwd(final Context context, String username, String old_pwd1, String newpassword3) { 185 public void changepwd(final Context context, String username, String old_pwd1, String newpassword3) {
185 mProgress = DialogPermission.showProgress(context, null, "正在修改密码...", 186 mProgress = DialogPermission.showProgress(context, null, "正在修改密码...",
186 false, true, null); 187 false, true, null);
187 RequestParams params = new RequestParams(); 188 RequestParams params = new RequestParams();
188 params.put(HttpKey.USERNAME, username); 189 params.put(HttpKey.USERNAME, username);
189 params.put(HttpKey.OLDPASS, old_pwd1); 190 params.put(HttpKey.OLDPASS, old_pwd1);
190 params.put(HttpKey.NEWPASS, newpassword3); 191 params.put(HttpKey.NEWPASS, newpassword3);
191 HttpClient.getInstance().addHeader("Accept", "*/*"); 192 HttpClient.getInstance().addHeader("Accept", "*/*");
192 HttpClient.getInstance().setTimeout(10 * 1000); 193 HttpClient.getInstance().setTimeout(10 * 1000);
193 HttpClient.getInstance().post(HttpUrl.changepassword, params, new AsyncHttpResponseHandler() { 194 HttpClient.getInstance().post(HttpUrl.changepassword, params, new AsyncHttpResponseHandler() {
194 @Override 195 @Override
195 public void onSuccess(int i, Header[] headers, byte[] bytes) { 196 public void onSuccess(int i, Header[] headers, byte[] bytes) {
196 closeProgress(); 197 closeProgress();
197 try { 198 try {
198 JSONObject jsonObject = new JSONObject(new String(bytes)); 199 JSONObject jsonObject = new JSONObject(new String(bytes));
199 String status = jsonObject.optString("status"); 200 String status = jsonObject.optString("status");
200 if (status.equals("100")) { 201 if (status.equals("100")) {
201 Log.e("test", "onSuccess" + new String(bytes)); 202 Log.e("test", "onSuccess" + new String(bytes));
202 Toast.makeText(context, "密码修改成功!", Toast.LENGTH_LONG).show(); 203 Toast.makeText(context, "密码修改成功!", Toast.LENGTH_LONG).show();
203 SaveParam.getInstance().clearData((Activity) context); 204 SaveParam.getInstance().clearData((Activity) context);
204 Intent intent = new Intent(); 205 Intent intent = new Intent();
205 intent.setClass(context, LoginAndRegisterActivity.class); 206 intent.setClass(context, LoginAndRegisterActivity.class);
206 ((Activity) context).startActivity(intent); 207 ((Activity) context).startActivity(intent);
207 ((Activity) context).finish(); 208 ((Activity) context).finish();
208 } else { 209 } else {
209 Toast.makeText(context, "密码修改失败!", Toast.LENGTH_LONG).show(); 210 Toast.makeText(context, "密码修改失败!", Toast.LENGTH_LONG).show();
210 } 211 }
211 } catch (JSONException e) { 212 } catch (JSONException e) {
212 e.printStackTrace(); 213 e.printStackTrace();
213 } 214 }
214 } 215 }
215 216
216 @Override 217 @Override
217 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) { 218 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
218 closeProgress(); 219 closeProgress();
219 Log.e("test", "onFailure" + new String(bytes)); 220 Log.e("test", "onFailure" + new String(bytes));
220 AlertUtils.showToast(context, "无法链接到服务器,请检查您的网络或稍后重试!"); 221 AlertUtils.showToast(context, "无法链接到服务器,请检查您的网络或稍后重试!");
221 } 222 }
222 }); 223 });
223 224
224 } 225 }
225 226
226 //忘记密码 227 //忘记密码
227 public void forgetpassword(final Context context, String forot_pwd_phone1, String forot_pwd_pwd3, String forot_pwd_anthcode1, Handler handler) { 228 public void forgetpassword(final Context context, String forot_pwd_phone1, String forot_pwd_pwd3, String forot_pwd_anthcode1, Handler handler) {
228 RequestParams params = new RequestParams(); 229 RequestParams params = new RequestParams();
229 params.put(HttpKey.USERNAME, forot_pwd_phone1); 230 params.put(HttpKey.USERNAME, forot_pwd_phone1);
230 params.put(HttpKey.PASSWORD, forot_pwd_pwd3); 231 params.put(HttpKey.PASSWORD, forot_pwd_pwd3);
231 params.put(HttpKey.AUTHCODE, forot_pwd_anthcode1); 232 params.put(HttpKey.AUTHCODE, forot_pwd_anthcode1);
232 HttpClient.getInstance().addHeader("Accept", "*/*"); 233 HttpClient.getInstance().addHeader("Accept", "*/*");
233 HttpClient.getInstance().post(HttpUrl.forgetpassword, params, new AsyncHttpResponseHandler() { 234 HttpClient.getInstance().post(HttpUrl.forgetpassword, params, new AsyncHttpResponseHandler() {
234 @Override 235 @Override
235 public void onSuccess(int i, Header[] headers, byte[] bytes) { 236 public void onSuccess(int i, Header[] headers, byte[] bytes) {
236 try { 237 try {
237 JSONObject jsonObject = new JSONObject(new String(bytes)); 238 JSONObject jsonObject = new JSONObject(new String(bytes));
238 String status = jsonObject.optString("status"); 239 String status = jsonObject.optString("status");
239 if (status.equals("100")) { 240 if (status.equals("100")) {
240 Log.e("test", "onSuccess" + new String(bytes)); 241 Log.e("test", "onSuccess" + new String(bytes));
241 Toast.makeText(context, "密码修改成功!", Toast.LENGTH_LONG).show(); 242 Toast.makeText(context, "密码修改成功!", Toast.LENGTH_LONG).show();
242 ((Activity) context).finish(); 243 ((Activity) context).finish();
243 } else { 244 } else {
244 Toast.makeText(context, "密码修改失败!", Toast.LENGTH_LONG).show(); 245 Toast.makeText(context, "密码修改失败!", Toast.LENGTH_LONG).show();
245 } 246 }
246 } catch (JSONException e) { 247 } catch (JSONException e) {
247 e.printStackTrace(); 248 e.printStackTrace();
248 } 249 }
249 } 250 }
250 251
251 @Override 252 @Override
252 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) { 253 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
253 Log.e("test", "onFailure" + new String(bytes)); 254 Log.e("test", "onFailure" + new String(bytes));
254 AlertUtils.showToast(context, "无法链接到服务器,请检查您的网络或稍后重试!"); 255 AlertUtils.showToast(context, "无法链接到服务器,请检查您的网络或稍后重试!");
255 } 256 }
256 }); 257 });
257 258
258 } 259 }
259 260
260 //保存用户登录信息 261 //保存用户登录信息
261 public void saveLoginInfo(Context context, String username, String password, String access_token, String userId) { 262 public void saveLoginInfo(Context context, String username, String password, String access_token, String userId) {
262 SaveParam.getInstance().saveLoginParam(context, "username", username); 263 SaveParam.getInstance().saveLoginParam(context, "username", username);
263 SaveParam.getInstance().saveLoginParam(context, "password", password); 264 SaveParam.getInstance().saveLoginParam(context, "password", password);
264 SaveParam.getInstance().saveLoginParam(context, "access_token", access_token); 265 SaveParam.getInstance().saveLoginParam(context, "access_token", access_token);
265 SaveParam.getInstance().saveLoginParam(context, "userId", userId); 266 SaveParam.getInstance().saveLoginParam(context, "userId", userId);
266 267
267 268
268 } 269 }
269 270
270 //提交保卡信息 271 //提交保卡信息
271 public void subcardinfo(final Context context, long userId, String customerName, String customerAddress, 272 public void subcardinfo(final Context context, long userId, String customerName, String customerAddress,
272 String buyAddress, String buyTime, String alterSaleCall, 273 String buyAddress, String buyTime, String alterSaleCall,
273 String productModel, String deviceNumber, String macAddress, 274 String productModel, String deviceNumber, String macAddress,
274 String mobilePhone) { 275 String mobilePhone) {
275 mProgress = DialogPermission.showProgress(context, null, "正在绑定保卡...", 276 mProgress = DialogPermission.showProgress(context, null, "正在绑定保卡...",
276 false, true, null); 277 false, true, null);
277 RequestParams params = new RequestParams(); 278 RequestParams params = new RequestParams();
278 279
279 params.put(HttpKey.USEID, userId); 280 params.put(HttpKey.USEID, userId);
280 params.put(HttpKey.CUSTOMENAME, customerName); 281 params.put(HttpKey.CUSTOMENAME, customerName);
281 params.put(HttpKey.CUSTOMADRESS, customerAddress); 282 params.put(HttpKey.CUSTOMADRESS, customerAddress);
282 params.put(HttpKey.BUYADREES, buyAddress); 283 params.put(HttpKey.BUYADREES, buyAddress);
283 params.put(HttpKey.BUYTIME, buyTime); 284 params.put(HttpKey.BUYTIME, buyTime);
284 params.put(HttpKey.ALTERSALECALL, alterSaleCall); 285 params.put(HttpKey.ALTERSALECALL, alterSaleCall);
285 params.put(HttpKey.PRODUCTMODEL, productModel); 286 params.put(HttpKey.PRODUCTMODEL, productModel);
286 params.put(HttpKey.DEVICENUMBER, deviceNumber); 287 params.put(HttpKey.DEVICENUMBER, deviceNumber);
287 params.put(HttpKey.MACADRESS, macAddress); 288 params.put(HttpKey.MACADRESS, macAddress);
288 params.put(HttpKey.MOBILPHONE, mobilePhone); 289 params.put(HttpKey.MOBILPHONE, mobilePhone);
289 290
290 HttpClient.getInstance().addHeader("Accept", "*/*"); 291 HttpClient.getInstance().addHeader("Accept", "*/*");
291 292
292 Log.e("test", "params" + params); 293 Log.e("test", "params" + params);
293 HttpClient.getInstance().setTimeout(5 * 1000); 294 HttpClient.getInstance().setTimeout(5 * 1000);
294 HttpClient.getInstance().post(context, HttpUrl.subcardinfo, params, new AsyncHttpResponseHandler() { 295 HttpClient.getInstance().post(context, HttpUrl.subcardinfo, params, new AsyncHttpResponseHandler() {
295 @Override 296 @Override
296 public void onSuccess(int i, Header[] headers, byte[] bytes) { 297 public void onSuccess(int i, Header[] headers, byte[] bytes) {
297 JSONObject jsonObject = null; 298 JSONObject jsonObject = null;
298 closeProgress(); 299 closeProgress();
299 try { 300 try {
300 jsonObject = new JSONObject(new String(bytes)); 301 jsonObject = new JSONObject(new String(bytes));
301 String status = jsonObject.optString("status"); 302 String status = jsonObject.optString("status");
302 if (status.equals("1")) { 303 if (status.equals("1")) {
303 Log.e("test", "onSuccess" + jsonObject); 304 Log.e("test", "onSuccess" + jsonObject);
304 Toast.makeText(context, "保卡绑定成功!", Toast.LENGTH_LONG).show(); 305 Toast.makeText(context, "保卡绑定成功!", Toast.LENGTH_LONG).show();
305 if (Content.cardintentflag == 1) { 306 if (Content.cardintentflag == 1) {
306 Intent intent = new Intent(); 307 Intent intent = new Intent();
307 intent.setClass((Activity) context, TheStartPageActivity.class); 308 intent.setClass((Activity) context, TheStartPageActivity.class);
308 ((Activity) context).startActivity(intent); 309 ((Activity) context).startActivity(intent);
309 ((Activity) context).overridePendingTransition(R.anim.rightin, R.anim.rightout); 310 ((Activity) context).overridePendingTransition(R.anim.rightin, R.anim.rightout);
310 ((Activity) context).finish(); 311 ((Activity) context).finish();
311 } else if (Content.cardintentflag == 2) { 312 } else if (Content.cardintentflag == 2) {
312 Intent intent = new Intent(); 313 Intent intent = new Intent();
313 intent.setClass((Activity) context, BangDingCode.class); 314 intent.setClass((Activity) context, BangDingCode.class);
314 ((Activity) context).startActivity(intent); 315 ((Activity) context).startActivity(intent);
315 ((Activity) context).overridePendingTransition(R.anim.rightin, R.anim.rightout); 316 ((Activity) context).overridePendingTransition(R.anim.rightin, R.anim.rightout);
316 ((Activity) context).finish(); 317 ((Activity) context).finish();
317 318
318 } 319 }
319 320
320 321
321 } else { 322 } else {
322 Toast.makeText(context, "保卡绑定失败!", Toast.LENGTH_LONG).show(); 323 Toast.makeText(context, "保卡绑定失败!", Toast.LENGTH_LONG).show();
323 } 324 }
324 } catch (JSONException e) { 325 } catch (JSONException e) {
325 e.printStackTrace(); 326 e.printStackTrace();
326 } 327 }
327 328
328 329
329 } 330 }
330 331
331 @Override 332 @Override
332 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) { 333 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
333 Log.e("test", "onFailure" + (throwable)); 334 Log.e("test", "onFailure" + (throwable));
334 closeProgress(); 335 closeProgress();
335 AlertUtils.showToast(context, "无法链接到服务器,请检查您的网络或稍后重试!"); 336 AlertUtils.showToast(context, "无法链接到服务器,请检查您的网络或稍后重试!");
336 337
337 } 338 }
338 }); 339 });
339 340
340 } 341 }
341 342
342 //获取保卡信息 343 //获取保卡信息
343 public void getcardinfo(final Context mContext, String deviceNumber, final Handler handler) { 344 public void getcardinfo(final Context mContext, String deviceNumber, final Handler handler) {
344 mProgress = DialogPermission.showProgress(mContext, null, "正在获取保卡信息...", 345 mProgress = DialogPermission.showProgress(mContext, null, "正在获取保卡信息...",
345 false, true, null); 346 false, true, null);
346 HttpClient.getInstance().setTimeout(5 * 1000); 347 HttpClient.getInstance().setTimeout(5 * 1000);
347 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 348 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
348 HttpClient.getInstance().get(HttpUrl.getcardinfo + "?deviceNumber=" + deviceNumber, new AsyncHttpResponseHandler() { 349 HttpClient.getInstance().get(HttpUrl.getcardinfo + "?deviceNumber=" + deviceNumber, new AsyncHttpResponseHandler() {
349 @Override 350 @Override
350 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 351 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
351 closeProgress(); 352 closeProgress();
352 Log.e("test", "保卡信息" + new String(arg2)); 353 Log.e("test", "保卡信息" + new String(arg2));
353 try { 354 try {
354 JSONObject jsonObject = new JSONObject(new String(arg2)); 355 JSONObject jsonObject = new JSONObject(new String(arg2));
355 int status = jsonObject.optInt("status"); 356 int status = jsonObject.optInt("status");
356 if (status == 1) { 357 if (status == 1) {
357 CardInfo cardInfo = GsonTool.getPerson(new String(arg2), CardInfo.class);//解析json数据 358 CardInfo cardInfo = GsonTool.getPerson(new String(arg2), CardInfo.class);//解析json数据
358 CardInfo.DataBean schoolInfoBeanList = cardInfo.getData(); 359 CardInfo.DataBean schoolInfoBeanList = cardInfo.getData();
359 Message msg = Message.obtain(); 360 Message msg = Message.obtain();
360 msg.what = HttpCode.SUCHCARDINFO; 361 msg.what = HttpCode.SUCHCARDINFO;
361 msg.obj = schoolInfoBeanList; 362 msg.obj = schoolInfoBeanList;
362 handler.sendMessage(msg); 363 handler.sendMessage(msg);
363 364
364 365
365 } else { 366 } else {
366 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!"); 367 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!");
367 368
368 } 369 }
369 } catch (JSONException e) { 370 } catch (JSONException e) {
370 e.printStackTrace(); 371 e.printStackTrace();
371 } 372 }
372 373
373 } 374 }
374 375
375 @Override 376 @Override
376 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 377 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
377 closeProgress(); 378 closeProgress();
378 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 379 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
379 } 380 }
380 }); 381 });
381 } 382 }
382 383
383 //获取是否为样机信息 384 //获取是否为样机信息
384 public void getcardinfo1(final Context mContext, String deviceNumber, final Handler handler) { 385 public void getcardinfo1(final Context mContext, String deviceNumber, final Handler handler) {
385 HttpClient.getInstance().setTimeout(5 * 1000); 386 HttpClient.getInstance().setTimeout(5 * 1000);
386 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 387 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
387 HttpClient.getInstance().get(HttpUrl.getcardinfo + "?deviceNumber=" + deviceNumber, new AsyncHttpResponseHandler() { 388 HttpClient.getInstance().get(HttpUrl.getcardinfo + "?deviceNumber=" + deviceNumber, new AsyncHttpResponseHandler() {
388 @Override 389 @Override
389 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 390 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
390 closeProgress(); 391 closeProgress();
391 Log.e("test", "保卡信息" + new String(arg2)); 392 Log.e("test", "保卡信息" + new String(arg2));
392 Message msg = Message.obtain(); 393 Message msg = Message.obtain();
393 msg.what = HttpCode.SUCHCARDINFOONE; 394 msg.what = HttpCode.SUCHCARDINFOONE;
394 msg.obj = new String(arg2); 395 msg.obj = new String(arg2);
395 handler.sendMessage(msg); 396 handler.sendMessage(msg);
396 397
397 } 398 }
398 399
399 @Override 400 @Override
400 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 401 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
401 closeProgress(); 402 closeProgress();
402 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 403 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
403 } 404 }
404 }); 405 });
405 } 406 }
406 407
407 //修改账户电话 408 //修改账户电话
408 public void changeaccountphone(final Context mContext, long userId, final String username, String authCode) { 409 public void changeaccountphone(final Context mContext, long userId, final String username, String authCode) {
409 RequestParams params = new RequestParams(); 410 RequestParams params = new RequestParams();
410 params.put("userId", userId); 411 params.put("userId", userId);
411 params.put("username", username); 412 params.put("username", username);
412 params.put("authCode", authCode); 413 params.put("authCode", authCode);
413 HttpClient.getInstance().addHeader("Accept", "*/*"); 414 HttpClient.getInstance().addHeader("Accept", "*/*");
414 HttpClient.getInstance().post(HttpUrl.chageaccountphoneURL, params, new AsyncHttpResponseHandler() { 415 HttpClient.getInstance().post(HttpUrl.chageaccountphoneURL, params, new AsyncHttpResponseHandler() {
415 @Override 416 @Override
416 public void onSuccess(int i, Header[] headers, byte[] bytes) { 417 public void onSuccess(int i, Header[] headers, byte[] bytes) {
417 try { 418 try {
418 Log.e("test", "保卡信息" + new String(bytes)); 419 Log.e("test", "保卡信息" + new String(bytes));
419 JSONObject jsonObject = new JSONObject(new String(bytes)); 420 JSONObject jsonObject = new JSONObject(new String(bytes));
420 String status = jsonObject.optString("status"); 421 String status = jsonObject.optString("status");
421 if (status.equals("1")) { 422 if (status.equals("1")) {
422 Toast.makeText(mContext, "手机号修改成功", Toast.LENGTH_LONG).show(); 423 Toast.makeText(mContext, "手机号修改成功", Toast.LENGTH_LONG).show();
423 SaveParam.getInstance().saveLoginParam(mContext, "username", username); 424 SaveParam.getInstance().saveLoginParam(mContext, "username", username);
424 ((Activity) mContext).finish(); 425 ((Activity) mContext).finish();
425 } else if (status.equals("1001")) { 426 } else if (status.equals("1001")) {
426 Toast.makeText(mContext, "验证码输入错误", Toast.LENGTH_LONG).show(); 427 Toast.makeText(mContext, "验证码输入错误", Toast.LENGTH_LONG).show();
427 } 428 }
428 else if (status.equals("1006")) { 429 else if (status.equals("1006")) {
429 AlertUtils.showToast(mContext, "该手机号已存在,请使用其他手机号重新绑定!"); 430 AlertUtils.showToast(mContext, "该手机号已存在,请使用其他手机号重新绑定!");
430 } else { 431 } else {
431 AlertUtils.showToast(mContext, "您好,服务器异常,请稍后重试"); 432 AlertUtils.showToast(mContext, "您好,服务器异常,请稍后重试");
432 } 433 }
433 } catch (JSONException e) { 434 } catch (JSONException e) {
434 e.printStackTrace(); 435 e.printStackTrace();
435 } 436 }
436 } 437 }
437 438
438 @Override 439 @Override
439 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) { 440 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
440 Log.e("test", "onFailure" + new String(bytes)); 441 Log.e("test", "onFailure" + new String(bytes));
441 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 442 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
442 } 443 }
443 }); 444 });
444 } 445 }
445 446
446 //修改保卡信息电话 447 //修改保卡信息电话
447 public void changecardinfophone(final Context mContext, long userId, final String customerPhone, String authCode) { 448 public void changecardinfophone(final Context mContext, long userId, final String customerPhone, String authCode) {
448 RequestParams params = new RequestParams(); 449 RequestParams params = new RequestParams();
449 params.put("userId", userId); 450 params.put("userId", userId);
450 params.put("customerPhone", customerPhone); 451 params.put("customerPhone", customerPhone);
451 params.put("authCode", authCode); 452 params.put("authCode", authCode);
452 HttpClient.getInstance().addHeader("Accept", "*/*"); 453 HttpClient.getInstance().addHeader("Accept", "*/*");
453 HttpClient.getInstance().post(HttpUrl.changecardinfo, params, new AsyncHttpResponseHandler() { 454 HttpClient.getInstance().post(HttpUrl.changecardinfo, params, new AsyncHttpResponseHandler() {
454 @Override 455 @Override
455 public void onSuccess(int i, Header[] headers, byte[] bytes) { 456 public void onSuccess(int i, Header[] headers, byte[] bytes) {
456 try { 457 try {
457 JSONObject jsonObject = new JSONObject(new String(bytes)); 458 JSONObject jsonObject = new JSONObject(new String(bytes));
458 String status = jsonObject.optString("status"); 459 String status = jsonObject.optString("status");
459 if (status.equals("1")) { 460 if (status.equals("1")) {
460 Toast.makeText(mContext, "手机号修改成功", Toast.LENGTH_LONG).show(); 461 Toast.makeText(mContext, "手机号修改成功", Toast.LENGTH_LONG).show();
461 SaveParam.getInstance().saveCustomizeParam(mContext, SaveParam.CARDPHONE, customerPhone); 462 SaveParam.getInstance().saveCustomizeParam(mContext, SaveParam.CARDPHONE, customerPhone);
462 ((Activity) mContext).finish(); 463 ((Activity) mContext).finish();
463 } else if (status.equals("1001")) { 464 } else if (status.equals("1001")) {
464 Toast.makeText(mContext, "验证码输入错误", Toast.LENGTH_LONG).show(); 465 Toast.makeText(mContext, "验证码输入错误", Toast.LENGTH_LONG).show();
465 } else { 466 } else {
466 AlertUtils.showToast(mContext, "您好,服务器异常,请稍后重试"); 467 AlertUtils.showToast(mContext, "您好,服务器异常,请稍后重试");
467 } 468 }
468 } catch (JSONException e) { 469 } catch (JSONException e) {
469 e.printStackTrace(); 470 e.printStackTrace();
470 } 471 }
471 } 472 }
472 473
473 @Override 474 @Override
474 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) { 475 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
475 Log.e("test", "onFailure" + new String(bytes)); 476 Log.e("test", "onFailure" + new String(bytes));
476 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 477 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
477 } 478 }
478 }); 479 });
479 } 480 }
480 481
481 //修改保卡信息地址 482 //修改保卡信息地址
482 public void changecardadressinfo(final Context mContext, long userId, final String customerPhone, String authCode, final String customerAddress) { 483 public void changecardadressinfo(final Context mContext, long userId, final String customerPhone, String authCode, final String customerAddress) {
483 RequestParams params = new RequestParams(); 484 RequestParams params = new RequestParams();
484 params.put("userId", userId); 485 params.put("userId", userId);
485 params.put("customerPhone", customerPhone); 486 params.put("customerPhone", customerPhone);
486 params.put("authCode", authCode); 487 params.put("authCode", authCode);
487 params.put("customerAddress", customerAddress); 488 params.put("customerAddress", customerAddress);
488 HttpClient.getInstance().addHeader("Accept", "*/*"); 489 HttpClient.getInstance().addHeader("Accept", "*/*");
489 HttpClient.getInstance().post(HttpUrl.changecardinfo, params, new AsyncHttpResponseHandler() { 490 HttpClient.getInstance().post(HttpUrl.changecardinfo, params, new AsyncHttpResponseHandler() {
490 @Override 491 @Override
491 public void onSuccess(int i, Header[] headers, byte[] bytes) { 492 public void onSuccess(int i, Header[] headers, byte[] bytes) {
492 try { 493 try {
493 JSONObject jsonObject = new JSONObject(new String(bytes)); 494 JSONObject jsonObject = new JSONObject(new String(bytes));
494 String status = jsonObject.optString("status"); 495 String status = jsonObject.optString("status");
495 if (status.equals("1")) { 496 if (status.equals("1")) {
496 Toast.makeText(mContext, "修改成功", Toast.LENGTH_LONG).show(); 497 Toast.makeText(mContext, "修改成功", Toast.LENGTH_LONG).show();
497 SaveParam.getInstance().saveCustomizeParam(mContext, SaveParam.ADRESSCUNSTEM, customerAddress); 498 SaveParam.getInstance().saveCustomizeParam(mContext, SaveParam.ADRESSCUNSTEM, customerAddress);
498 ((Activity) mContext).finish(); 499 ((Activity) mContext).finish();
499 } else { 500 } else {
500 AlertUtils.showToast(mContext, "您好,服务器异常,请稍后重试"); 501 AlertUtils.showToast(mContext, "您好,服务器异常,请稍后重试");
501 } 502 }
502 } catch (JSONException e) { 503 } catch (JSONException e) {
503 e.printStackTrace(); 504 e.printStackTrace();
504 } 505 }
505 } 506 }
506 507
507 @Override 508 @Override
508 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) { 509 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
509 Log.e("test", "onFailure" + new String(bytes)); 510 Log.e("test", "onFailure" + new String(bytes));
510 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 511 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
511 } 512 }
512 }); 513 });
513 } 514 }
514 515
515 //验证是否保卡信息 516 //验证是否保卡信息
516 public void cardinfocheck(final Context mContext, String deviceNumber, final Handler handler) { 517 public void cardinfocheck(final Context mContext, String deviceNumber, final Handler handler) {
517 mProgress = DialogPermission.showProgress(mContext, null, "正在验证保卡信息...", 518 mProgress = DialogPermission.showProgress(mContext, null, "正在验证保卡信息...",
518 false, true, null); 519 false, true, null);
519 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 520 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
520 HttpClient.getInstance().get(HttpUrl.cardcheck + "?deviceNumber=" + deviceNumber, new AsyncHttpResponseHandler() { 521 HttpClient.getInstance().get(HttpUrl.cardcheck + "?deviceNumber=" + deviceNumber, new AsyncHttpResponseHandler() {
521 @Override 522 @Override
522 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 523 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
523 Log.e("test", "验证保卡" + new String(arg2)); 524 Log.e("test", "验证保卡" + new String(arg2));
524 closeProgress(); 525 closeProgress();
525 Message msg = Message.obtain(); 526 Message msg = Message.obtain();
526 msg.what = HttpCode.CHECKCARD; 527 msg.what = HttpCode.CHECKCARD;
527 msg.obj = new String(arg2); 528 msg.obj = new String(arg2);
528 handler.sendMessage(msg); 529 handler.sendMessage(msg);
529 530
530 531
531 } 532 }
532 533
533 @Override 534 @Override
534 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 535 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
535 closeProgress(); 536 closeProgress();
536 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 537 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
537 //Toast.makeText(mContext, "请检查网络。。" + arg3, Toast.LENGTH_LONG).show(); 538 //Toast.makeText(mContext, "请检查网络。。" + arg3, Toast.LENGTH_LONG).show();
538 } 539 }
539 }); 540 });
540 } 541 }
541 542
542 ///获取年级 543 ///获取年级
543 public void getgrade(final Context mContext, final Handler handler) { 544 public void getgrade(final Context mContext, final Handler handler) {
544 HttpClient.getInstance().addHeader("Accept", "application/json"); 545 HttpClient.getInstance().addHeader("Accept", "application/json");
545 HttpClient.getInstance().get(HttpUrl.gradesUrl, new AsyncHttpResponseHandler() { 546 HttpClient.getInstance().get(HttpUrl.gradesUrl, new AsyncHttpResponseHandler() {
546 @Override 547 @Override
547 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 548 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
548 Log.e("test", "年级" + new String(arg2)); 549 Log.e("test", "年级" + new String(arg2));
549 GradeInfo gradeInfo = GsonTool.getPerson(new String(arg2), GradeInfo.class);//解析json数据 550 GradeInfo gradeInfo = GsonTool.getPerson(new String(arg2), GradeInfo.class);//解析json数据
550 List<GradeInfo.DataBean.ChildrenBean> gradeInfoLists = new ArrayList<GradeInfo.DataBean.ChildrenBean>(); 551 List<GradeInfo.DataBean.ChildrenBean> gradeInfoLists = new ArrayList<GradeInfo.DataBean.ChildrenBean>();
551 for (int i = 0; i < gradeInfo.getData().size() - 2; i++) { 552 for (int i = 0; i < gradeInfo.getData().size() - 2; i++) {
552 String name = gradeInfo.getData().get(i).getName(); 553 String name = gradeInfo.getData().get(i).getName();
553 int id = gradeInfo.getData().get(i).getId(); 554 int id = gradeInfo.getData().get(i).getId();
554 List<GradeInfo.DataBean.ChildrenBean> gradeinfoList = gradeInfo.getData().get(i).getChildren(); 555 List<GradeInfo.DataBean.ChildrenBean> gradeinfoList = gradeInfo.getData().get(i).getChildren();
555 for (int j = 0; j < gradeinfoList.size(); j++) { 556 for (int j = 0; j < gradeinfoList.size(); j++) {
556 String secondname = gradeinfoList.get(j).getName(); 557 String secondname = gradeinfoList.get(j).getName();
557 int secondid = gradeinfoList.get(j).getId(); 558 int secondid = gradeinfoList.get(j).getId();
558 GradeInfo.DataBean.ChildrenBean dataBean = new GradeInfo.DataBean.ChildrenBean(); 559 GradeInfo.DataBean.ChildrenBean dataBean = new GradeInfo.DataBean.ChildrenBean();
559 dataBean.setName(secondname); 560 dataBean.setName(secondname);
560 dataBean.setId(secondid); 561 dataBean.setId(secondid);
561 gradeInfoLists.add(dataBean); 562 gradeInfoLists.add(dataBean);
562 } 563 }
563 564
564 } 565 }
565 566
566 Message message = Message.obtain(); 567 Message message = Message.obtain();
567 message.what = HttpCode.GRADER; 568 message.what = HttpCode.GRADER;
568 message.obj = gradeInfoLists; 569 message.obj = gradeInfoLists;
569 handler.sendMessage(message); 570 handler.sendMessage(message);
570 571
571 572
572 } 573 }
573 574
574 @Override 575 @Override
575 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 576 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
576 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 577 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
577 } 578 }
578 }); 579 });
579 } 580 }
580 581
581 /** 582 /**
582 * 获取学校 583 * 获取学校
583 * 584 *
584 * @param mContext 585 * @param mContext
585 * @param regionId 586 * @param regionId
586 * @param gradeId 587 * @param gradeId
587 * @param handler 588 * @param handler
588 */ 589 */
589 public void getschool(final Context mContext, int regionId, int gradeId, final Handler handler) { 590 public void getschool(final Context mContext, int regionId, int gradeId, final Handler handler) {
590 HttpClient.getInstance().addHeader("Accept", "application/json"); 591 HttpClient.getInstance().addHeader("Accept", "application/json");
591 HttpClient.getInstance().get(HttpUrl.schoolUrl + "?regionId=" + regionId + "&gradeId=" + gradeId, new AsyncHttpResponseHandler() { 592 HttpClient.getInstance().get(HttpUrl.schoolUrl + "?regionId=" + regionId + "&gradeId=" + gradeId, new AsyncHttpResponseHandler() {
592 @Override 593 @Override
593 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 594 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
594 Log.e("test", "学校" + new String(arg2)); 595 Log.e("test", "学校" + new String(arg2));
595 try { 596 try {
596 JSONObject jsonObject = new JSONObject(new String(arg2)); 597 JSONObject jsonObject = new JSONObject(new String(arg2));
597 int status = jsonObject.optInt("status"); 598 int status = jsonObject.optInt("status");
598 if (status == 1) { 599 if (status == 1) {
599 SchoolInfo schoolInfo = GsonTool.getPerson(new String(arg2), SchoolInfo.class);//解析json数据 600 SchoolInfo schoolInfo = GsonTool.getPerson(new String(arg2), SchoolInfo.class);//解析json数据
600 List<SchoolInfo.DataBean> schoolInfoBeanList = schoolInfo.getData(); 601 List<SchoolInfo.DataBean> schoolInfoBeanList = schoolInfo.getData();
601 Message message = Message.obtain(); 602 Message message = Message.obtain();
602 message.what = HttpCode.SCHOOL; 603 message.what = HttpCode.SCHOOL;
603 message.obj = schoolInfoBeanList; 604 message.obj = schoolInfoBeanList;
604 handler.sendMessage(message); 605 handler.sendMessage(message);
605 606
606 607
607 } else { 608 } else {
608 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!"); 609 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!");
609 610
610 } 611 }
611 } catch (JSONException e) { 612 } catch (JSONException e) {
612 e.printStackTrace(); 613 e.printStackTrace();
613 } 614 }
614 615
615 } 616 }
616 617
617 @Override 618 @Override
618 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 619 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
619 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 620 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
620 } 621 }
621 }); 622 });
622 } 623 }
623 624
624 625
625 /** 626 /**
626 * 获取个人信息 627 * 获取个人信息
627 * 628 *
628 * @param mContext 629 * @param mContext
629 * @param userId 630 * @param userId
630 * @param handler 631 * @param handler
631 */ 632 */
632 public void getpresonalinfo(final Context mContext, long userId, int type, final Handler handler) { 633 public void getpresonalinfo(final Context mContext, long userId, int type, final Handler handler) {
633 // mProgress = DialogPermission.showProgress(mContext, null, "正在获取个人信息...", 634 // mProgress = DialogPermission.showProgress(mContext, null, "正在获取个人信息...",
634 // false, true, null); 635 // false, true, null);
635 HttpClient.getInstance().addHeader("Accept", "application/json"); 636 HttpClient.getInstance().addHeader("Accept", "application/json");
636 HttpClient.getInstance().setConnectTimeout(5 * 1000); 637 HttpClient.getInstance().setConnectTimeout(5 * 1000);
637 HttpClient.getInstance().get(HttpUrl.getpresonalinfo + "?userId=" + userId + "&type=" + type, new AsyncHttpResponseHandler() { 638 HttpClient.getInstance().get(HttpUrl.getpresonalinfo + "?userId=" + userId + "&type=" + type, new AsyncHttpResponseHandler() {
638 @Override 639 @Override
639 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 640 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
640 closeProgress(); 641 closeProgress();
641 Log.e("test", "个人信息" + new String(arg2)); 642 Log.e("test", "个人信息" + new String(arg2));
642 try { 643 try {
643 JSONObject jsonObject = new JSONObject(new String(arg2)); 644 JSONObject jsonObject = new JSONObject(new String(arg2));
644 int status = jsonObject.optInt("status"); 645 int status = jsonObject.optInt("status");
645 if (status == 1) { 646 if (status == 1) {
646 PesonalInfo pesonalInfo = GsonTool.getPerson(new String(arg2), PesonalInfo.class);//解析json数据 647 PesonalInfo pesonalInfo = GsonTool.getPerson(new String(arg2), PesonalInfo.class);//解析json数据
647 PesonalInfo.DataBean pesonalInfoBeanList = pesonalInfo.getData(); 648 PesonalInfo.DataBean pesonalInfoBeanList = pesonalInfo.getData();
648 Message message = Message.obtain(); 649 Message message = Message.obtain();
649 message.what = HttpCode.GETINFO; 650 message.what = HttpCode.GETINFO;
650 message.obj = pesonalInfoBeanList; 651 message.obj = pesonalInfoBeanList;
651 handler.sendMessage(message); 652 handler.sendMessage(message);
652 653
653 654
654 } else { 655 } else {
655 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!"); 656 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!");
656 657
657 } 658 }
658 } catch (JSONException e) { 659 } catch (JSONException e) {
659 e.printStackTrace(); 660 e.printStackTrace();
660 } 661 }
661 662
662 663
663 } 664 }
664 665
665 @Override 666 @Override
666 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 667 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
667 closeProgress(); 668 closeProgress();
668 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 669 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
669 } 670 }
670 }); 671 });
671 } 672 }
672 673
673 //修改个人信息 674 //修改个人信息
674 public void changepresonalinfo(final Context mContext, Long id, int type 675 public void changepresonalinfo(final Context mContext, Long id, int type
675 , String name, String birthday, int gradeId, long regionId, 676 , String name, String birthday, int gradeId, long regionId,
676 Object schoolId, String qq, String gender 677 Object schoolId, String qq, String gender
677 , String regionName, String devicenumber) throws UnsupportedEncodingException { 678 , String regionName, String devicenumber) throws UnsupportedEncodingException {
678 mProgress = DialogPermission.showProgress(mContext, null, "正在保存个人信息...", 679 mProgress = DialogPermission.showProgress(mContext, null, "正在保存个人信息...",
679 false, true, null); 680 false, true, null);
680 RequestParams params = new RequestParams(); 681 RequestParams params = new RequestParams();
681 682
682 params.put(HttpKey.USEID, id); 683 params.put(HttpKey.USEID, id);
683 params.put(HttpKey.TYPE, type); 684 params.put(HttpKey.TYPE, type);
684 params.put(HttpKey.NAME, name); 685 params.put(HttpKey.NAME, name);
685 params.put(HttpKey.BIRDays, birthday); 686 params.put(HttpKey.BIRDays, birthday);
686 params.put(HttpKey.GRADE, gradeId); 687 params.put(HttpKey.GRADE, gradeId);
687 params.put(HttpKey.REGION, regionId); 688 params.put(HttpKey.REGION, regionId);
688 params.put(HttpKey.SCHOOL, schoolId); 689 params.put(HttpKey.SCHOOL, schoolId);
689 params.put(HttpKey.QQ, qq); 690 params.put(HttpKey.QQ, qq);
690 params.put(HttpKey.GENDER, gender); 691 params.put(HttpKey.GENDER, gender);
691 params.put(HttpKey.REGIONNAME, regionName); 692 params.put(HttpKey.REGIONNAME, regionName);
692 params.put(HttpKey.DEVINUMBER, devicenumber); 693 params.put(HttpKey.DEVINUMBER, devicenumber);
693 Log.e("test", "个人信息" + params); 694 Log.e("test", "个人信息" + params);
694 HttpClient.getInstance().addHeader("Accept", "*/*"); 695 HttpClient.getInstance().addHeader("Accept", "*/*");
695 HttpClient.getInstance().post(mContext, HttpUrl.changepresonalinfo, params, new JsonHttpResponseHandler() { 696 HttpClient.getInstance().post(mContext, HttpUrl.changepresonalinfo, params, new JsonHttpResponseHandler() {
696 @Override 697 @Override
697 public void onSuccess(int statusCode, Header[] headers, JSONObject response) { 698 public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
698 super.onSuccess(statusCode, headers, response); 699 super.onSuccess(statusCode, headers, response);
699 closeProgress(); 700 closeProgress();
700 String status = response.optString("status"); 701 String status = response.optString("status");
701 if (status.equals("1")) { 702 if (status.equals("1")) {
702 Toast.makeText(mContext, "个人信息保存成功", Toast.LENGTH_LONG).show(); 703 Toast.makeText(mContext, "个人信息保存成功", Toast.LENGTH_LONG).show();
703 ((Activity) mContext).finish(); 704 ((Activity) mContext).finish();
704 } else { 705 } else {
705 AlertUtils.showToast(mContext, "您好,服务器异常,请稍后重试"); 706 AlertUtils.showToast(mContext, "您好,服务器异常,请稍后重试");
706 } 707 }
707 708
708 } 709 }
709 710
710 @Override 711 @Override
711 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) { 712 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) {
712 super.onFailure(statusCode, headers, throwable, errorResponse); 713 super.onFailure(statusCode, headers, throwable, errorResponse);
713 closeProgress(); 714 closeProgress();
714 Log.e("test", "onFailure" + errorResponse); 715 Log.e("test", "onFailure" + errorResponse);
715 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 716 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
716 } 717 }
717 718
718 }); 719 });
719 } 720 }
720 721
721 //提交注册信息 722 //提交注册信息
722 public void subregisterinfo(final Context mContext, Long userId 723 public void subregisterinfo(final Context mContext, Long userId
723 , String name, int gradeId, long regionId, String regionName, Object schoolId, String chinese, 724 , String name, int gradeId, long regionId, String regionName, Object schoolId, String chinese,
724 String math, String english, String physics, String chemistry, 725 String math, String english, String physics, String chemistry,
725 String history, String geography, String political, String biology, String science, final Handler handler) { 726 String history, String geography, String political, String biology, String science, final Handler handler) {
726 mProgress = DialogPermission.showProgress(mContext, null, "正在保存个人信息...", 727 mProgress = DialogPermission.showProgress(mContext, null, "正在保存个人信息...",
727 false, true, null); 728 false, true, null);
728 RequestParams params = new RequestParams(); 729 RequestParams params = new RequestParams();
729 730
730 params.put(HttpKey.USEID, userId); 731 params.put(HttpKey.USEID, userId);
731 params.put(HttpKey.NAME, name); 732 params.put(HttpKey.NAME, name);
732 params.put(HttpKey.GRADE, gradeId); 733 params.put(HttpKey.GRADE, gradeId);
733 params.put(HttpKey.REGION, regionId); 734 params.put(HttpKey.REGION, regionId);
734 params.put(HttpKey.SCHOOL, schoolId); 735 params.put(HttpKey.SCHOOL, schoolId);
735 params.put(HttpKey.REGIONNAME, regionName); 736 params.put(HttpKey.REGIONNAME, regionName);
736 params.put(HttpKey.MATH, math); 737 params.put(HttpKey.MATH, math);
737 params.put(HttpKey.ENGLISH, english); 738 params.put(HttpKey.ENGLISH, english);
738 params.put(HttpKey.PHYSICES, physics); 739 params.put(HttpKey.PHYSICES, physics);
739 params.put(HttpKey.CHEMISTRY, chemistry); 740 params.put(HttpKey.CHEMISTRY, chemistry);
740 params.put(HttpKey.HISTIRY, history); 741 params.put(HttpKey.HISTIRY, history);
741 params.put(HttpKey.GEOGRAPHY, geography); 742 params.put(HttpKey.GEOGRAPHY, geography);
742 params.put(HttpKey.POLITICAL, political); 743 params.put(HttpKey.POLITICAL, political);
743 params.put(HttpKey.BIOLOGY, biology); 744 params.put(HttpKey.BIOLOGY, biology);
744 params.put(HttpKey.SCIENCE, science); 745 params.put(HttpKey.SCIENCE, science);
745 746
746 Log.e("test", "注册信息" + params); 747 Log.e("test", "注册信息" + params);
747 HttpClient.getInstance().addHeader("Accept", "*/*"); 748 HttpClient.getInstance().addHeader("Accept", "*/*");
748 HttpClient.getInstance().post(mContext, HttpUrl.submitregisterURL, params, new JsonHttpResponseHandler() { 749 HttpClient.getInstance().post(mContext, HttpUrl.submitregisterURL, params, new JsonHttpResponseHandler() {
749 @Override 750 @Override
750 public void onSuccess(int statusCode, Header[] headers, JSONObject response) { 751 public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
751 super.onSuccess(statusCode, headers, response); 752 super.onSuccess(statusCode, headers, response);
752 closeProgress(); 753 closeProgress();
753 Message message = Message.obtain(); 754 Message message = Message.obtain();
754 message.what = HttpCode.REGISTERINFO_SUCESS; 755 message.what = HttpCode.REGISTERINFO_SUCESS;
755 message.obj = new String(String.valueOf(response)); 756 message.obj = new String(String.valueOf(response));
756 handler.sendMessage(message); 757 handler.sendMessage(message);
757 758
758 } 759 }
759 760
760 @Override 761 @Override
761 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) { 762 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) {
762 super.onFailure(statusCode, headers, throwable, errorResponse); 763 super.onFailure(statusCode, headers, throwable, errorResponse);
763 closeProgress(); 764 closeProgress();
764 Log.e("test", "onFailure" + errorResponse); 765 Log.e("test", "onFailure" + errorResponse);
765 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 766 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
766 } 767 }
767 768
768 }); 769 });
769 } 770 }
770 771
771 //修改版本信息 772 //修改版本信息
772 public void changepublishinfo(final Context mContext, String userId, String chinese, 773 public void changepublishinfo(final Context mContext, String userId, String chinese,
773 String math, String english, String physics, String chemistry, 774 String math, String english, String physics, String chemistry,
774 String history, String geography, String political, String biology, String science) { 775 String history, String geography, String political, String biology, String science) {
775 mProgress = DialogPermission.showProgress(mContext, null, "正在保存个人信息...", 776 mProgress = DialogPermission.showProgress(mContext, null, "正在保存个人信息...",
776 false, true, null); 777 false, true, null);
777 RequestParams params = new RequestParams(); 778 RequestParams params = new RequestParams();
778 params.put(HttpKey.USEID, userId); 779 params.put(HttpKey.USEID, userId);
779 params.put(HttpKey.CHINESE, chinese); 780 params.put(HttpKey.CHINESE, chinese);
780 params.put(HttpKey.MATH, math); 781 params.put(HttpKey.MATH, math);
781 params.put(HttpKey.ENGLISH, english); 782 params.put(HttpKey.ENGLISH, english);
782 params.put(HttpKey.PHYSICES, physics); 783 params.put(HttpKey.PHYSICES, physics);
783 params.put(HttpKey.CHEMISTRY, chemistry); 784 params.put(HttpKey.CHEMISTRY, chemistry);
784 params.put(HttpKey.HISTIRY, history); 785 params.put(HttpKey.HISTIRY, history);
785 params.put(HttpKey.GEOGRAPHY, geography); 786 params.put(HttpKey.GEOGRAPHY, geography);
786 params.put(HttpKey.POLITICAL, political); 787 params.put(HttpKey.POLITICAL, political);
787 params.put(HttpKey.BIOLOGY, biology); 788 params.put(HttpKey.BIOLOGY, biology);
788 params.put(HttpKey.SCIENCE, science); 789 params.put(HttpKey.SCIENCE, science);
789 790
790 Log.e("test", "版本信息信息" + params); 791 Log.e("test", "版本信息信息" + params);
791 HttpClient.getInstance().addHeader("Accept", "*/*"); 792 HttpClient.getInstance().addHeader("Accept", "*/*");
792 HttpClient.getInstance().post(mContext, HttpUrl.chagepublishURL, params, new JsonHttpResponseHandler() { 793 HttpClient.getInstance().post(mContext, HttpUrl.chagepublishURL, params, new JsonHttpResponseHandler() {
793 @Override 794 @Override
794 public void onSuccess(int statusCode, Header[] headers, JSONObject response) { 795 public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
795 super.onSuccess(statusCode, headers, response); 796 super.onSuccess(statusCode, headers, response);
796 closeProgress(); 797 closeProgress();
797 String status = response.optString("status"); 798 String status = response.optString("status");
798 if (status.equals("1")) { 799 if (status.equals("1")) {
799 Toast.makeText(mContext, "版本信息修改成功", Toast.LENGTH_LONG).show(); 800 Toast.makeText(mContext, "版本信息修改成功", Toast.LENGTH_LONG).show();
800 ((Activity) mContext).finish(); 801 ((Activity) mContext).finish();
801 } else { 802 } else {
802 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试"); 803 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试");
803 } 804 }
804 805
805 } 806 }
806 807
807 @Override 808 @Override
808 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) { 809 public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) {
809 super.onFailure(statusCode, headers, throwable, errorResponse); 810 super.onFailure(statusCode, headers, throwable, errorResponse);
810 closeProgress(); 811 closeProgress();
811 Log.e("test", "onFailure" + errorResponse); 812 Log.e("test", "onFailure" + errorResponse);
812 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 813 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
813 } 814 }
814 815
815 }); 816 });
816 } 817 }
817 818
818 //修改个性签名 819 //修改个性签名
819 public void changsignature(final Context mContext, long userId, int type, final String signature) { 820 public void changsignature(final Context mContext, long userId, int type, final String signature) {
820 RequestParams params = new RequestParams(); 821 RequestParams params = new RequestParams();
821 params.put("userId", userId); 822 params.put("userId", userId);
822 params.put("type", type); 823 params.put("type", type);
823 params.put("signature", signature); 824 params.put("signature", signature);
824 HttpClient.getInstance().addHeader("Accept", "*/*"); 825 HttpClient.getInstance().addHeader("Accept", "*/*");
825 HttpClient.getInstance().post(HttpUrl.signature, params, new AsyncHttpResponseHandler() { 826 HttpClient.getInstance().post(HttpUrl.signature, params, new AsyncHttpResponseHandler() {
826 @Override 827 @Override
827 public void onSuccess(int i, Header[] headers, byte[] bytes) { 828 public void onSuccess(int i, Header[] headers, byte[] bytes) {
828 try { 829 try {
829 JSONObject jsonObject = new JSONObject(new String(bytes)); 830 JSONObject jsonObject = new JSONObject(new String(bytes));
830 String status = jsonObject.optString("status"); 831 String status = jsonObject.optString("status");
831 if (status.equals("1")) { 832 if (status.equals("1")) {
832 Toast.makeText(mContext, "个性签名修改成功", Toast.LENGTH_LONG).show(); 833 Toast.makeText(mContext, "个性签名修改成功", Toast.LENGTH_LONG).show();
833 } else { 834 } else {
834 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试"); 835 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试");
835 } 836 }
836 } catch (JSONException e) { 837 } catch (JSONException e) {
837 e.printStackTrace(); 838 e.printStackTrace();
838 } 839 }
839 } 840 }
840 841
841 @Override 842 @Override
842 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) { 843 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
843 //Log.e("test", "onFailure" + new String(bytes)); 844 //Log.e("test", "onFailure" + new String(bytes));
844 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 845 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
845 } 846 }
846 }); 847 });
847 } 848 }
848 849
849 /** 850 /**
850 * 获取个性签名 851 * 获取个性签名
851 * 852 *
852 * @param mContext 853 * @param mContext
853 * @param userId 854 * @param userId
854 * @param handler 855 * @param handler
855 */ 856 */
856 public void getsignatures(final Context mContext, long userId, int type, final Handler handler) { 857 public void getsignatures(final Context mContext, long userId, int type, final Handler handler) {
857 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 858 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
858 HttpClient.getInstance().get(HttpUrl.getsignature + "?userId=" + userId + "&type=" + type, new AsyncHttpResponseHandler() { 859 HttpClient.getInstance().get(HttpUrl.getsignature + "?userId=" + userId + "&type=" + type, new AsyncHttpResponseHandler() {
859 @Override 860 @Override
860 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 861 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
861 Log.e("test", "个性签名" + new String(arg2)); 862 Log.e("test", "个性签名" + new String(arg2));
862 try { 863 try {
863 JSONObject jsonObject = new JSONObject(new String(arg2)); 864 JSONObject jsonObject = new JSONObject(new String(arg2));
864 int status = jsonObject.optInt("status"); 865 int status = jsonObject.optInt("status");
865 if (status == 1) { 866 if (status == 1) {
866 SignInfo signInfo = GsonTool.getPerson(new String(arg2), SignInfo.class);//解析json数据 867 SignInfo signInfo = GsonTool.getPerson(new String(arg2), SignInfo.class);//解析json数据
867 SignInfo.DataBean signInfoBeanList = signInfo.getData(); 868 SignInfo.DataBean signInfoBeanList = signInfo.getData();
868 Message message = Message.obtain(); 869 Message message = Message.obtain();
869 message.what = HttpCode.SIGN; 870 message.what = HttpCode.SIGN;
870 message.obj = signInfoBeanList; 871 message.obj = signInfoBeanList;
871 handler.sendMessage(message); 872 handler.sendMessage(message);
872 873
873 874
874 } else if (status == 1000) { 875 } else if (status == 1000) {
875 //AlertUtils.showToast(mContext, "您还没有签名哦"); 876 //AlertUtils.showToast(mContext, "您还没有签名哦");
876 877
877 } else { 878 } else {
878 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!"); 879 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!");
879 } 880 }
880 } catch (JSONException e) { 881 } catch (JSONException e) {
881 e.printStackTrace(); 882 e.printStackTrace();
882 } 883 }
883 884
884 885
885 } 886 }
886 887
887 @Override 888 @Override
888 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 889 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
889 //Log.e("test", "失败原因" + arg3); 890 //Log.e("test", "失败原因" + arg3);
890 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 891 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
891 } 892 }
892 }); 893 });
893 } 894 }
894 895
895 /** 896 /**
896 * 用户反馈 897 * 用户反馈
897 * 898 *
898 * @param mContext 899 * @param mContext
899 * @param userId 900 * @param userId
900 * @param content 901 * @param content
901 * @param contact 902 * @param contact
902 * @param imgs 903 * @param imgs
903 * @param feedtype 904 * @param feedtype
904 * @throws UnsupportedEncodingException 905 * @throws UnsupportedEncodingException
905 */ 906 */
906 public void feedback(final Context mContext, String userId, String content, 907 public void feedback(final Context mContext, String userId, String content,
907 String contact, String imgs, String feedtype) throws UnsupportedEncodingException { 908 String contact, String imgs, String feedtype) throws UnsupportedEncodingException {
908 mProgress = DialogPermission.showProgress(mContext, null, "正在提交反馈内容...", 909 mProgress = DialogPermission.showProgress(mContext, null, "正在提交反馈内容...",
909 false, true, null); 910 false, true, null);
910 File file = new File(imgs); 911 File file = new File(imgs);
911 RequestParams params = new RequestParams(); 912 RequestParams params = new RequestParams();
912 try { 913 try {
913 params.put("userId", userId); 914 params.put("userId", userId);
914 params.put("content", content); 915 params.put("content", content);
915 params.put("contact", contact); 916 params.put("contact", contact);
916 if (file.exists() && file.length() > 0) { 917 if (file.exists() && file.length() > 0) {
917 params.put("imgs", file); 918 params.put("imgs", file);
918 } 919 }
919 params.put("feedtype", feedtype); 920 params.put("feedtype", feedtype);
920 } catch (FileNotFoundException e) { 921 } catch (FileNotFoundException e) {
921 e.printStackTrace(); 922 e.printStackTrace();
922 } 923 }
923 Log.e("test", "onSuccess" + params); 924 Log.e("test", "onSuccess" + params);
924 HttpClient.getInstance().post(HttpUrl.feedbackURL, params, new AsyncHttpResponseHandler() { 925 HttpClient.getInstance().post(HttpUrl.feedbackURL, params, new AsyncHttpResponseHandler() {
925 @Override 926 @Override
926 public void onSuccess(int i, Header[] headers, byte[] bytes) { 927 public void onSuccess(int i, Header[] headers, byte[] bytes) {
927 closeProgress(); 928 closeProgress();
928 Log.e("test", "onSuccess" + new String(bytes)); 929 Log.e("test", "onSuccess" + new String(bytes));
929 try { 930 try {
930 JSONObject jsonObject = new JSONObject(new String(bytes)); 931 JSONObject jsonObject = new JSONObject(new String(bytes));
931 String status = jsonObject.optString("status"); 932 String status = jsonObject.optString("status");
932 if (status.equals("1")) { 933 if (status.equals("1")) {
933 Toast.makeText(mContext, "您的宝贵意见已经提交成功。", Toast.LENGTH_LONG).show(); 934 Toast.makeText(mContext, "您的宝贵意见已经提交成功。", Toast.LENGTH_LONG).show();
934 ((Activity) mContext).finish(); 935 ((Activity) mContext).finish();
935 } else { 936 } else {
936 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试"); 937 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试");
937 } 938 }
938 } catch (JSONException e) { 939 } catch (JSONException e) {
939 e.printStackTrace(); 940 e.printStackTrace();
940 } 941 }
941 } 942 }
942 943
943 @Override 944 @Override
944 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) { 945 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
945 closeProgress(); 946 closeProgress();
946 //Log.e("test", "错误信息" + new String(bytes)); 947 //Log.e("test", "错误信息" + new String(bytes));
947 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 948 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
948 949
949 } 950 }
950 }); 951 });
951 952
952 } 953 }
953 954
954 /** 955 /**
955 * 查询子账户信息 956 * 查询子账户信息
956 * 957 *
957 * @param mContext 958 * @param mContext
958 * @param userId 959 * @param userId
959 * @param handler 960 * @param handler
960 */ 961 */
961 public void getchildAccountinfo(final Context mContext, long userId, String deviceNumber, final Handler handler) { 962 public void getchildAccountinfo(final Context mContext, long userId, String deviceNumber, final Handler handler) {
962 mProgress = DialogPermission.showProgress(mContext, null, "正在获取子账户信息...", 963 mProgress = DialogPermission.showProgress(mContext, null, "正在获取子账户信息...",
963 false, true, null); 964 false, true, null);
964 965
965 Log.e("test", "ID" + userId + "deviceNumber" + deviceNumber); 966 Log.e("test", "ID" + userId + "deviceNumber" + deviceNumber);
966 HttpClient.getInstance().setTimeout(5 * 1000); 967 HttpClient.getInstance().setTimeout(5 * 1000);
967 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 968 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
968 HttpClient.getInstance().get(HttpUrl.childUserURL + "?userId=" + userId + "&deviceNumber=" + deviceNumber, new AsyncHttpResponseHandler() { 969 HttpClient.getInstance().get(HttpUrl.childUserURL + "?userId=" + userId + "&deviceNumber=" + deviceNumber, new AsyncHttpResponseHandler() {
969 @Override 970 @Override
970 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 971 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
971 closeProgress(); 972 closeProgress();
972 Log.e("test", "子账户信息" + new String(arg2)); 973 Log.e("test", "子账户信息" + new String(arg2));
973 try { 974 try {
974 JSONObject jsonObject = new JSONObject(new String(arg2)); 975 JSONObject jsonObject = new JSONObject(new String(arg2));
975 int status = jsonObject.optInt("status"); 976 int status = jsonObject.optInt("status");
976 if (status == 1) { 977 if (status == 1) {
977 ChildsInfo childsInfo = GsonTool.getPerson(new String(arg2), ChildsInfo.class);//解析json数据 978 ChildsInfo childsInfo = GsonTool.getPerson(new String(arg2), ChildsInfo.class);//解析json数据
978 Log.e("test", "子账户信息" + childsInfo); 979 Log.e("test", "子账户信息" + childsInfo);
979 List<ChildsInfo.DataBean> schoolInfoBeanList = childsInfo.getData(); 980 List<ChildsInfo.DataBean> schoolInfoBeanList = childsInfo.getData();
980 Log.e("test", "子账户信息" + schoolInfoBeanList); 981 Log.e("test", "子账户信息" + schoolInfoBeanList);
981 Message msg = Message.obtain(); 982 Message msg = Message.obtain();
982 msg.what = HttpCode.CHILDS_SUCESS; 983 msg.what = HttpCode.CHILDS_SUCESS;
983 msg.obj = schoolInfoBeanList; 984 msg.obj = schoolInfoBeanList;
984 handler.sendMessage(msg); 985 handler.sendMessage(msg);
985 986
986 } else { 987 } else {
987 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后再试!"); 988 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后再试!");
988 989
989 } 990 }
990 } catch (JSONException e) { 991 } catch (JSONException e) {
991 e.printStackTrace(); 992 e.printStackTrace();
992 993
993 } 994 }
994 995
995 } 996 }
996 997
997 @Override 998 @Override
998 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 999 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
999 closeProgress(); 1000 closeProgress();
1000 // Log.e("test", "错误信息" + new String(arg2)); 1001 // Log.e("test", "错误信息" + new String(arg2));
1001 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1002 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1002 } 1003 }
1003 }); 1004 });
1004 1005
1005 } 1006 }
1006 1007
1007 /** 1008 /**
1008 * 删除子账户信息 1009 * 删除子账户信息
1009 * 1010 *
1010 * @param mContext 1011 * @param mContext
1011 * @param subAccountId 1012 * @param subAccountId
1012 */ 1013 */
1013 public void deletechildAccountinfo(final Context mContext, String subAccountId) { 1014 public void deletechildAccountinfo(final Context mContext, String subAccountId) {
1014 mProgress = DialogPermission.showProgress(mContext, null, "正在删除子账户...", 1015 mProgress = DialogPermission.showProgress(mContext, null, "正在删除子账户...",
1015 false, true, null); 1016 false, true, null);
1016 HttpClient.getInstance().setTimeout(5 * 1000); 1017 HttpClient.getInstance().setTimeout(5 * 1000);
1017 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1018 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1018 HttpClient.getInstance().get(HttpUrl.deletechildUserURL + "?subAccountId=" + subAccountId, new AsyncHttpResponseHandler() { 1019 HttpClient.getInstance().get(HttpUrl.deletechildUserURL + "?subAccountId=" + subAccountId, new AsyncHttpResponseHandler() {
1019 @Override 1020 @Override
1020 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1021 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1021 closeProgress(); 1022 closeProgress();
1022 Log.e("test", "子账户信息" + new String(arg2)); 1023 Log.e("test", "子账户信息" + new String(arg2));
1023 try { 1024 try {
1024 JSONObject jsonObject = new JSONObject(new String(arg2)); 1025 JSONObject jsonObject = new JSONObject(new String(arg2));
1025 int status = jsonObject.optInt("status"); 1026 int status = jsonObject.optInt("status");
1026 if (status == 1) { 1027 if (status == 1) {
1027 AlertUtils.showToast(mContext, "子账号删除成功!"); 1028 AlertUtils.showToast(mContext, "子账号删除成功!");
1028 ((Activity) mContext).finish(); 1029 ((Activity) mContext).finish();
1029 } else { 1030 } else {
1030 AlertUtils.showToast(mContext, "你好,子账号删除失败!"); 1031 AlertUtils.showToast(mContext, "你好,子账号删除失败!");
1031 1032
1032 } 1033 }
1033 } catch (JSONException e) { 1034 } catch (JSONException e) {
1034 e.printStackTrace(); 1035 e.printStackTrace();
1035 } 1036 }
1036 1037
1037 } 1038 }
1038 1039
1039 @Override 1040 @Override
1040 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1041 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1041 closeProgress(); 1042 closeProgress();
1042 Log.e("test", "错误信息" + new String(arg2)); 1043 Log.e("test", "错误信息" + new String(arg2));
1043 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1044 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1044 } 1045 }
1045 }); 1046 });
1046 1047
1047 } 1048 }
1048 1049
1049 /** 1050 /**
1050 * 添加子账户信息 1051 * 添加子账户信息
1051 */ 1052 */
1052 public void addchildAccountinfo(final Context mContext, long parentId, String image, 1053 public void addchildAccountinfo(final Context mContext, long parentId, String image,
1053 String name, final Long grade, Object school, Long region 1054 String name, final Long grade, Object school, Long region
1054 , String deviceNumber, String regionName) { 1055 , String deviceNumber, String regionName) {
1055 mProgress = DialogPermission.showProgress(mContext, null, "正在添加子账户...", 1056 mProgress = DialogPermission.showProgress(mContext, null, "正在添加子账户...",
1056 false, true, null); 1057 false, true, null);
1057 RequestParams params = new RequestParams(); 1058 RequestParams params = new RequestParams();
1058 1059
1059 params.put(HttpKey.PARENTID, parentId); 1060 params.put(HttpKey.PARENTID, parentId);
1060 params.put(HttpKey.IMAGE, image); 1061 params.put(HttpKey.IMAGE, image);
1061 params.put(HttpKey.NAME, name); 1062 params.put(HttpKey.NAME, name);
1062 params.put(HttpKey.GRADE, grade); 1063 params.put(HttpKey.GRADE, grade);
1063 params.put(HttpKey.SCHOOL, school); 1064 params.put(HttpKey.SCHOOL, school);
1064 params.put(HttpKey.REGION, region); 1065 params.put(HttpKey.REGION, region);
1065 params.put(HttpKey.DEVINUMBER, deviceNumber); 1066 params.put(HttpKey.DEVINUMBER, deviceNumber);
1066 params.put(HttpKey.REGIONNAME, regionName); 1067 params.put(HttpKey.REGIONNAME, regionName);
1067 1068
1068 Log.e("test", "子账户信息" + params); 1069 Log.e("test", "子账户信息" + params);
1069 HttpClient.getInstance().addHeader("Accept", "*/*"); 1070 HttpClient.getInstance().addHeader("Accept", "*/*");
1070 HttpClient.getInstance().setTimeout(5 * 1000); 1071 HttpClient.getInstance().setTimeout(5 * 1000);
1071 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1072 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1072 HttpClient.getInstance().post(HttpUrl.addchildUserURL, params, new AsyncHttpResponseHandler() { 1073 HttpClient.getInstance().post(HttpUrl.addchildUserURL, params, new AsyncHttpResponseHandler() {
1073 @Override 1074 @Override
1074 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1075 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1075 closeProgress(); 1076 closeProgress();
1076 1077
1077 Log.e("test", "子账户信息" + new String(arg2)); 1078 Log.e("test", "子账户信息" + new String(arg2));
1078 try { 1079 try {
1079 JSONObject jsonObject = new JSONObject(new String(arg2)); 1080 JSONObject jsonObject = new JSONObject(new String(arg2));
1080 int status = jsonObject.optInt("status"); 1081 int status = jsonObject.optInt("status");
1081 if (status == 1) { 1082 if (status == 1) {
1082 AlertUtils.showToast(mContext, "子账号添加成功!"); 1083 AlertUtils.showToast(mContext, "子账号添加成功!");
1083 ((Activity) mContext).finish(); 1084 ((Activity) mContext).finish();
1084 } else { 1085 } else {
1085 AlertUtils.showToast(mContext, "你好,子账号添加失败!"); 1086 AlertUtils.showToast(mContext, "你好,子账号添加失败!");
1086 1087
1087 } 1088 }
1088 } catch (JSONException e) { 1089 } catch (JSONException e) {
1089 e.printStackTrace(); 1090 e.printStackTrace();
1090 } 1091 }
1091 1092
1092 } 1093 }
1093 1094
1094 @Override 1095 @Override
1095 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1096 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1096 closeProgress(); 1097 closeProgress();
1097 Log.e("test", "错误信息" + new String(arg2)); 1098 Log.e("test", "错误信息" + new String(arg2));
1098 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1099 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1099 } 1100 }
1100 }); 1101 });
1101 1102
1102 } 1103 }
1103 1104
1104 /** 1105 /**
1105 * 切换子账户信息 1106 * 切换子账户信息
1106 * 1107 *
1107 * @param mContext 1108 * @param mContext
1108 * @param subAccountId 1109 * @param subAccountId
1109 */ 1110 */
1110 public void changechildAccountinfo(final Context mContext, String subAccountId, long userId 1111 public void changechildAccountinfo(final Context mContext, String subAccountId, long userId
1111 , String deviceNumber, int type) { 1112 , String deviceNumber, int type) {
1112 mProgress = DialogPermission.showProgress(mContext, null, "正在切换子账户...", 1113 mProgress = DialogPermission.showProgress(mContext, null, "正在切换子账户...",
1113 false, true, null); 1114 false, true, null);
1114 HttpClient.getInstance().setTimeout(5 * 1000); 1115 HttpClient.getInstance().setTimeout(5 * 1000);
1115 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1116 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1116 HttpClient.getInstance().get(HttpUrl.changechildUserURL + "?subAccountId=" + subAccountId + "&userId=" + userId 1117 HttpClient.getInstance().get(HttpUrl.changechildUserURL + "?subAccountId=" + subAccountId + "&userId=" + userId
1117 + "&deviceNumber=" + deviceNumber + "&type=" + type, new AsyncHttpResponseHandler() { 1118 + "&deviceNumber=" + deviceNumber + "&type=" + type, new AsyncHttpResponseHandler() {
1118 @Override 1119 @Override
1119 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1120 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1120 closeProgress(); 1121 closeProgress();
1121 Log.e("test", "子账户信息" + new String(arg2)); 1122 Log.e("test", "子账户信息" + new String(arg2));
1122 try { 1123 try {
1123 JSONObject jsonObject = new JSONObject(new String(arg2)); 1124 JSONObject jsonObject = new JSONObject(new String(arg2));
1124 int status = jsonObject.optInt("status"); 1125 int status = jsonObject.optInt("status");
1125 if (status == 1) { 1126 if (status == 1) {
1126 AlertUtils.showToast(mContext, "子账号切换成功!"); 1127 AlertUtils.showToast(mContext, "子账号切换成功!");
1127 ((Activity) mContext).finish(); 1128 ((Activity) mContext).finish();
1128 1129
1129 } else { 1130 } else {
1130 AlertUtils.showToast(mContext, "你好,子账号切换失败!"); 1131 AlertUtils.showToast(mContext, "你好,子账号切换失败!");
1131 1132
1132 } 1133 }
1133 } catch (JSONException e) { 1134 } catch (JSONException e) {
1134 e.printStackTrace(); 1135 e.printStackTrace();
1135 } 1136 }
1136 1137
1137 } 1138 }
1138 1139
1139 @Override 1140 @Override
1140 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1141 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1141 closeProgress(); 1142 closeProgress();
1142 Log.e("test", "错误信息" + new String(arg2)); 1143 //Log.e("test", "错误信息" + new String(arg2));
1143 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1144 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1144 } 1145 }
1145 }); 1146 });
1146 1147
1147 } 1148 }
1148 1149
1149 /** 1150 /**
1150 * 切换主账户信息 1151 * 切换主账户信息
1151 * 1152 *
1152 * @param mContext 1153 * @param mContext
1153 * @param type 1154 * @param type
1154 */ 1155 */
1155 public void Accountinfo(final Context mContext, long userId 1156 public void Accountinfo(final Context mContext, long userId
1156 , String deviceNumber, int type) { 1157 , String deviceNumber, int type) {
1157 mProgress = DialogPermission.showProgress(mContext, null, "正在切换主账户...", 1158 mProgress = DialogPermission.showProgress(mContext, null, "正在切换主账户...",
1158 false, true, null); 1159 false, true, null);
1159 HttpClient.getInstance().setTimeout(5 * 1000); 1160 HttpClient.getInstance().setTimeout(5 * 1000);
1160 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1161 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1161 HttpClient.getInstance().get(HttpUrl.changechildUserURL + "?userId=" + userId + "&deviceNumber=" + deviceNumber 1162 HttpClient.getInstance().get(HttpUrl.changechildUserURL + "?userId=" + userId + "&deviceNumber=" + deviceNumber
1162 + "&type=" + type, new AsyncHttpResponseHandler() { 1163 + "&type=" + type, new AsyncHttpResponseHandler() {
1163 @Override 1164 @Override
1164 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1165 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1165 closeProgress(); 1166 closeProgress();
1166 Log.e("test", "子账户信息" + new String(arg2)); 1167 Log.e("test", "子账户信息" + new String(arg2));
1167 try { 1168 try {
1168 JSONObject jsonObject = new JSONObject(new String(arg2)); 1169 JSONObject jsonObject = new JSONObject(new String(arg2));
1169 int status = jsonObject.optInt("status"); 1170 int status = jsonObject.optInt("status");
1170 if (status == 1) { 1171 if (status == 1) {
1171 AlertUtils.showToast(mContext, "主账号切换成功!"); 1172 AlertUtils.showToast(mContext, "主账号切换成功!");
1172 ((Activity) mContext).finish(); 1173 ((Activity) mContext).finish();
1173 1174
1174 } else { 1175 } else {
1175 AlertUtils.showToast(mContext, "你好,主账号切换失败!"); 1176 AlertUtils.showToast(mContext, "你好,主账号切换失败!");
1176 1177
1177 } 1178 }
1178 } catch (JSONException e) { 1179 } catch (JSONException e) {
1179 e.printStackTrace(); 1180 e.printStackTrace();
1180 } 1181 }
1181 1182
1182 } 1183 }
1183 1184
1184 @Override 1185 @Override
1185 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1186 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1186 closeProgress(); 1187 closeProgress();
1187 Log.e("test", "错误信息" + new String(arg2)); 1188 Log.e("test", "错误信息" + new String(arg2));
1188 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1189 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1189 } 1190 }
1190 }); 1191 });
1191 1192
1192 } 1193 }
1193 1194
1194 /** 1195 /**
1195 * 头像拍张 1196 * 头像拍张
1196 * 1197 *
1197 * @param mContext 1198 * @param mContext
1198 * @param userId 1199 * @param userId
1199 * @param img 1200 * @param img
1200 * @throws UnsupportedEncodingException 1201 * @throws UnsupportedEncodingException
1201 */ 1202 */
1202 public void header(final Context mContext, String userId, String type, String img) throws UnsupportedEncodingException { 1203 public void header(final Context mContext, String userId, String type, String img) throws UnsupportedEncodingException {
1203 File file = new File(img); 1204 File file = new File(img);
1204 if (file.exists() && file.length() > 0) { 1205 if (file.exists() && file.length() > 0) {
1205 RequestParams params = new RequestParams(); 1206 RequestParams params = new RequestParams();
1206 try { 1207 try {
1207 params.put("userId", userId); 1208 params.put("userId", userId);
1208 params.put("type", type); 1209 params.put("type", type);
1209 params.put("img", file); 1210 params.put("img", file);
1210 } catch (FileNotFoundException e) { 1211 } catch (FileNotFoundException e) {
1211 e.printStackTrace(); 1212 e.printStackTrace();
1212 } 1213 }
1213 Log.e("test", "params" + params); 1214 Log.e("test", "params" + params);
1214 HttpClient.getInstance().setTimeout(5 * 1000); 1215 HttpClient.getInstance().setTimeout(5 * 1000);
1215 HttpClient.getInstance().post(HttpUrl.headerURL, params, new AsyncHttpResponseHandler() { 1216 HttpClient.getInstance().post(HttpUrl.headerURL, params, new AsyncHttpResponseHandler() {
1216 @Override 1217 @Override
1217 public void onSuccess(int i, Header[] headers, byte[] bytes) { 1218 public void onSuccess(int i, Header[] headers, byte[] bytes) {
1218 Log.e("test", "onSuccess" + new String(bytes)); 1219 Log.e("test", "onSuccess" + new String(bytes));
1219 try { 1220 try {
1220 JSONObject jsonObject = new JSONObject(new String(bytes)); 1221 JSONObject jsonObject = new JSONObject(new String(bytes));
1221 String status = jsonObject.optString("status"); 1222 String status = jsonObject.optString("status");
1222 JSONObject jsonObject1 = jsonObject.getJSONObject("data"); 1223 JSONObject jsonObject1 = jsonObject.getJSONObject("data");
1223 String imagUrl = jsonObject1.optString("imgUrl"); 1224 String imagUrl = jsonObject1.optString("imgUrl");
1224 SaveParam.getInstance().saveLoginParam(mContext, SaveParam.HEADURL, imagUrl); 1225 SaveParam.getInstance().saveLoginParam(mContext, SaveParam.HEADURL, imagUrl);
1225 if (status.equals("1")) { 1226 if (status.equals("1")) {
1226 Toast.makeText(mContext, "头像上传成功。", Toast.LENGTH_LONG).show(); 1227 Toast.makeText(mContext, "头像上传成功。", Toast.LENGTH_LONG).show();
1227 } else { 1228 } else {
1228 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试"); 1229 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试");
1229 } 1230 }
1230 } catch (JSONException e) { 1231 } catch (JSONException e) {
1231 e.printStackTrace(); 1232 e.printStackTrace();
1232 } 1233 }
1233 } 1234 }
1234 1235
1235 @Override 1236 @Override
1236 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) { 1237 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
1237 closeProgress(); 1238 closeProgress();
1238 Log.e("test", "错误信息" + new String(bytes)); 1239 Log.e("test", "错误信息" + new String(bytes));
1239 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1240 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1240 1241
1241 } 1242 }
1242 }); 1243 });
1243 } else { 1244 } else {
1244 Toast.makeText(mContext, "文件不存在", Toast.LENGTH_LONG).show(); 1245 Toast.makeText(mContext, "文件不存在", Toast.LENGTH_LONG).show();
1245 } 1246 }
1246 } 1247 }
1247 1248
1248 /** 1249 /**
1249 * 头像默认 1250 * 头像默认
1250 * 1251 *
1251 * @param mContext 1252 * @param mContext
1252 * @param userId 1253 * @param userId
1253 * @param 1254 * @param
1254 * @throws UnsupportedEncodingException 1255 * @throws UnsupportedEncodingException
1255 */ 1256 */
1256 public void headerdeft(final Context mContext, String userId, String type, String defaultImg) throws UnsupportedEncodingException { 1257 public void headerdeft(final Context mContext, String userId, String type, String defaultImg) throws UnsupportedEncodingException {
1257 RequestParams params = new RequestParams(); 1258 RequestParams params = new RequestParams();
1258 params.put("userId", userId); 1259 params.put("userId", userId);
1259 params.put("type", type); 1260 params.put("type", type);
1260 params.put("defaultImg", defaultImg); 1261 params.put("defaultImg", defaultImg);
1261 Log.e("test", "params" + params); 1262 Log.e("test", "params" + params);
1262 HttpClient.getInstance().setTimeout(5 * 1000); 1263 HttpClient.getInstance().setTimeout(5 * 1000);
1263 HttpClient.getInstance().post(HttpUrl.headerdefaultURL, params, new AsyncHttpResponseHandler() { 1264 HttpClient.getInstance().post(HttpUrl.headerdefaultURL, params, new AsyncHttpResponseHandler() {
1264 @Override 1265 @Override
1265 public void onSuccess(int i, Header[] headers, byte[] bytes) { 1266 public void onSuccess(int i, Header[] headers, byte[] bytes) {
1266 Log.e("test", "onSuccess" + new String(bytes)); 1267 Log.e("test", "onSuccess" + new String(bytes));
1267 try { 1268 try {
1268 JSONObject jsonObject = new JSONObject(new String(bytes)); 1269 JSONObject jsonObject = new JSONObject(new String(bytes));
1269 String status = jsonObject.optString("status"); 1270 String status = jsonObject.optString("status");
1270 JSONObject jsonObject1 = jsonObject.getJSONObject("data"); 1271 JSONObject jsonObject1 = jsonObject.getJSONObject("data");
1271 String imagUrl = jsonObject1.optString("imgUrl"); 1272 String imagUrl = jsonObject1.optString("imgUrl");
1272 SaveParam.getInstance().saveLoginParam(mContext, SaveParam.HEADURL, imagUrl); 1273 SaveParam.getInstance().saveLoginParam(mContext, SaveParam.HEADURL, imagUrl);
1273 if (status.equals("1")) { 1274 if (status.equals("1")) {
1274 Toast.makeText(mContext, "头像上传成功。", Toast.LENGTH_LONG).show(); 1275 Toast.makeText(mContext, "头像上传成功。", Toast.LENGTH_LONG).show();
1275 } else { 1276 } else {
1276 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试"); 1277 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试");
1277 } 1278 }
1278 } catch (JSONException e) { 1279 } catch (JSONException e) {
1279 e.printStackTrace(); 1280 e.printStackTrace();
1280 } 1281 }
1281 } 1282 }
1282 1283
1283 @Override 1284 @Override
1284 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) { 1285 public void onFailure(int i, Header[] headers, byte[] bytes, Throwable throwable) {
1285 closeProgress(); 1286 closeProgress();
1286 Log.e("test", "错误信息" + new String(bytes)); 1287 Log.e("test", "错误信息" + new String(bytes));
1287 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1288 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1288 1289
1289 } 1290 }
1290 }); 1291 });
1291 } 1292 }
1292 1293
1293 /** 1294 /**
1294 * 检查注册信息是否完整 1295 * 检查注册信息是否完整
1295 * 1296 *
1296 * @param mContext 1297 * @param mContext
1297 * @param userId 1298 * @param userId
1298 */ 1299 */
1299 public void registerinfocheck(final Context mContext, long userId, final Handler handler) { 1300 public void registerinfocheck(final Context mContext, long userId, final Handler handler) {
1300 mProgress = DialogPermission.showProgress(mContext, null, "正在检查注册信息是否完整...", 1301 mProgress = DialogPermission.showProgress(mContext, null, "正在检查注册信息是否完整...",
1301 false, true, null); 1302 false, true, null);
1302 HttpClient.getInstance().setTimeout(5 * 1000); 1303 HttpClient.getInstance().setTimeout(5 * 1000);
1303 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1304 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1304 HttpClient.getInstance().get(HttpUrl.isRegisterInfoCompleteURL + "?userId=" + userId, new AsyncHttpResponseHandler() { 1305 HttpClient.getInstance().get(HttpUrl.isRegisterInfoCompleteURL + "?userId=" + userId, new AsyncHttpResponseHandler() {
1305 @Override 1306 @Override
1306 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1307 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1307 closeProgress(); 1308 closeProgress();
1308 Log.e("test", "注册信息" + new String(arg2)); 1309 Log.e("test", "注册信息" + new String(arg2));
1309 Message msg = Message.obtain(); 1310 Message msg = Message.obtain();
1310 msg.what = HttpCode.REGISTER_SUCESS; 1311 msg.what = HttpCode.REGISTER_SUCESS;
1311 msg.obj = new String(arg2); 1312 msg.obj = new String(arg2);
1312 handler.sendMessage(msg); 1313 handler.sendMessage(msg);
1313 1314
1314 } 1315 }
1315 1316
1316 @Override 1317 @Override
1317 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1318 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1318 closeProgress(); 1319 closeProgress();
1319 // Log.e("test", "错误信息" + new String(arg2)); 1320 // Log.e("test", "错误信息" + new String(arg2));
1320 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1321 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1321 1322
1322 } 1323 }
1323 }); 1324 });
1324 1325
1325 } 1326 }
1326 1327
1327 /** 1328 /**
1328 * 获取最近学习视频 1329 * 获取最近学习视频
1329 * 1330 *
1330 * @param mContext 1331 * @param mContext
1331 * @param userId 1332 * @param userId
1332 */ 1333 */
1333 public void getstuyvidioinfo(final Context mContext, long userId, final Handler handler) { 1334 public void getstuyvidioinfo(final Context mContext, long userId, final Handler handler) {
1334 mProgress = DialogPermission.showProgress(mContext, null, "正在获取最近学习视频...", 1335 mProgress = DialogPermission.showProgress(mContext, null, "正在获取最近学习视频...",
1335 false, true, null); 1336 false, true, null);
1336 HttpClient.getInstance().setTimeout(5 * 1000); 1337 HttpClient.getInstance().setTimeout(5 * 1000);
1337 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1338 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1338 HttpClient.getInstance().get(HttpUrl.getvidioURL + "?userId=" + userId, new AsyncHttpResponseHandler() { 1339 HttpClient.getInstance().get(HttpUrl.getvidioURL + "?userId=" + userId, new AsyncHttpResponseHandler() {
1339 @Override 1340 @Override
1340 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1341 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1341 closeProgress(); 1342 closeProgress();
1342 Log.e("test", "近学习视频" + new String(arg2)); 1343 Log.e("test", "近学习视频" + new String(arg2));
1343 try { 1344 try {
1344 JSONObject jsonObject = new JSONObject(new String(arg2)); 1345 JSONObject jsonObject = new JSONObject(new String(arg2));
1345 int status = jsonObject.optInt("status"); 1346 int status = jsonObject.optInt("status");
1346 if (status == 1) { 1347 if (status == 1) {
1347 VideoInfo videoInfo = GsonTool.getPerson(new String(arg2), VideoInfo.class);//解析json数据 1348 VideoInfo videoInfo = GsonTool.getPerson(new String(arg2), VideoInfo.class);//解析json数据
1348 List<VideoInfo.DataBean> schoolInfoBeanList = videoInfo.getData(); 1349 List<VideoInfo.DataBean> schoolInfoBeanList = videoInfo.getData();
1349 Message msg = Message.obtain(); 1350 Message msg = Message.obtain();
1350 msg.what = HttpCode.GETVIDIO_SUCESS; 1351 msg.what = HttpCode.GETVIDIO_SUCESS;
1351 msg.obj = schoolInfoBeanList; 1352 msg.obj = schoolInfoBeanList;
1352 handler.sendMessage(msg); 1353 handler.sendMessage(msg);
1353 1354
1354 } else { 1355 } else {
1355 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后再试!"); 1356 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后再试!");
1356 1357
1357 } 1358 }
1358 } catch (JSONException e) { 1359 } catch (JSONException e) {
1359 e.printStackTrace(); 1360 e.printStackTrace();
1360 1361
1361 } 1362 }
1362 1363
1363 } 1364 }
1364 1365
1365 @Override 1366 @Override
1366 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1367 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1367 closeProgress(); 1368 closeProgress();
1368 // Log.e("test", "错误信息" + new String(arg2)); 1369 // Log.e("test", "错误信息" + new String(arg2));
1369 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1370 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1370 1371
1371 } 1372 }
1372 }); 1373 });
1373 1374
1374 } 1375 }
1375 1376
1376 1377
1377 /** 1378 /**
1378 * 系统升级 1379 * 系统升级
1379 * 1380 *
1380 * @param mContext 1381 * @param mContext
1381 * @param pid appName 1382 * @param pid appName
1382 */ 1383 */
1383 public void updateAPP(final Context mContext, String pid, String appName, final Handler handler) { 1384 public void updateAPP(final Context mContext, String pid, String appName, final Handler handler) {
1384 mProgress = DialogPermission.showProgress(mContext, null, "正在检测是否升级版本...", 1385 // mProgress = DialogPermission.showProgress(mContext, null, "正在检测是否升级版本...",
1385 false, true, null); 1386 // false, true, null);
1386 HttpClient.getInstance().setTimeout(5 * 1000); 1387 HttpClient.getInstance().setTimeout(5 * 1000);
1387 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1388 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1388 HttpClient.getInstance().get(HttpUrl.updateappURL + "?pid=" + pid + "&appName=" + appName, new AsyncHttpResponseHandler() { 1389 HttpClient.getInstance().get(HttpUrl.updateappURL + "?pid=" + pid + "&appName=" + appName, new AsyncHttpResponseHandler() {
1389 @Override 1390 @Override
1390 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1391 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1391 closeProgress(); 1392 //closeProgress();
1392 Log.e("test", "版本升级信息" + new String(arg2)); 1393 Log.e("test", "版本升级信息" + new String(arg2));
1393 AppVersion appVersion = GsonTool.getPerson(new String(arg2), AppVersion.class);//解析json数据 1394 Gson gson = new Gson();
1394 Message msg = Message.obtain(); 1395 List<AppVersion> applist = gson.fromJson(new String(arg2),
1395 msg.what = HttpCode.APPUPDATE_SUCESS; 1396 new TypeToken<List<AppVersion>>() {}.getType());
1396 msg.obj = appVersion; 1397 Log.e("test", "版本升级信息" + applist);
1397 handler.sendMessage(msg); 1398 Message msg = Message.obtain();
1399 msg.what = HttpCode.APPUPDATE_SUCESS;
1400 msg.obj = applist;
1401 handler.sendMessage(msg);
1402
1398 1403
1399 1404
1400 } 1405 }
1401 1406
1402 @Override 1407 @Override
1403 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1408 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1404 closeProgress(); 1409 //closeProgress();
1405 Log.e("test", "错误信息" + new String(arg2)); 1410 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1406 } 1411 }
1407 }); 1412 });
1408 1413
1409 } 1414 }
1410 1415
1411 //版本信息 1416 //版本信息
1412 public void versioninfo(final Context mContext, String subjectName, final Handler handler) { 1417 public void versioninfo(final Context mContext, String subjectName, final Handler handler) {
1413 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1418 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1414 HttpClient.getInstance().get(HttpUrl.getversionURL + "?subjectName=" + subjectName, new AsyncHttpResponseHandler() { 1419 HttpClient.getInstance().get(HttpUrl.getversionURL + "?subjectName=" + subjectName, new AsyncHttpResponseHandler() {
1415 @Override 1420 @Override
1416 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1421 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1417 Log.e("test", "版本信息" + new String(arg2)); 1422 Log.e("test", "版本信息" + new String(arg2));
1418 try { 1423 try {
1419 JSONObject jsonObject = new JSONObject(new String(arg2)); 1424 JSONObject jsonObject = new JSONObject(new String(arg2));
1420 int status = jsonObject.optInt("status"); 1425 int status = jsonObject.optInt("status");
1421 if (status == 1) { 1426 if (status == 1) {
1422 VersionInfo versionInfo = GsonTool.getPerson(new String(arg2), VersionInfo.class);//解析json数据 1427 VersionInfo versionInfo = GsonTool.getPerson(new String(arg2), VersionInfo.class);//解析json数据
1423 List<VersionInfo.DataBean> versionInfoList = versionInfo.getData(); 1428 List<VersionInfo.DataBean> versionInfoList = versionInfo.getData();
1424 Message message = Message.obtain(); 1429 Message message = Message.obtain();
1425 message.what = HttpCode.VERSION_SUCESS; 1430 message.what = HttpCode.VERSION_SUCESS;
1426 message.obj = versionInfoList; 1431 message.obj = versionInfoList;
1427 handler.sendMessage(message); 1432 handler.sendMessage(message);
1428 1433
1429 } else if (status == 1000) { 1434 } else if (status == 1000) {
1430 AlertUtils.showToast(mContext, "你好,该科目没有版本信息"); 1435 AlertUtils.showToast(mContext, "你好,该科目没有版本信息");
1431 1436
1432 } else { 1437 } else {
1433 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!"); 1438 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!");
1434 } 1439 }
1435 } catch (JSONException e) { 1440 } catch (JSONException e) {
1436 e.printStackTrace(); 1441 e.printStackTrace();
1437 } 1442 }
1438 1443
1439 1444
1440 } 1445 }
1441 1446
1442 @Override 1447 @Override
1443 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1448 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1444 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1449 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1445 } 1450 }
1446 }); 1451 });
1447 } 1452 }
1448 1453
1449 1454
1450 ///省级接口 1455 ///省级接口
1451 public void provices(final Context mContext, final Handler handler) { 1456 public void provices(final Context mContext, final Handler handler) {
1452 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1457 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1453 HttpClient.getInstance().get(HttpUrl.provinceUrl, new AsyncHttpResponseHandler() { 1458 HttpClient.getInstance().get(HttpUrl.provinceUrl, new AsyncHttpResponseHandler() {
1454 @Override 1459 @Override
1455 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1460 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1456 Log.e("test", "省" + new String(arg2)); 1461 Log.e("test", "省" + new String(arg2));
1457 try { 1462 try {
1458 JSONObject jsonObject = new JSONObject(new String(arg2)); 1463 JSONObject jsonObject = new JSONObject(new String(arg2));
1459 int status = jsonObject.optInt("status"); 1464 int status = jsonObject.optInt("status");
1460 if (status == 100) { 1465 if (status == 100) {
1461 ProvinceInfo provinceInfo = GsonTool.getPerson(new String(arg2), ProvinceInfo.class);//解析json数据 1466 ProvinceInfo provinceInfo = GsonTool.getPerson(new String(arg2), ProvinceInfo.class);//解析json数据
1462 Log.e("test", "状态码" + provinceInfo.getStatus()); 1467 Log.e("test", "状态码" + provinceInfo.getStatus());
1463 List<ProvinceInfo.ProvincesBean> provincesBeanList = provinceInfo.getProvinces(); 1468 List<ProvinceInfo.ProvincesBean> provincesBeanList = provinceInfo.getProvinces();
1464 Message message = Message.obtain(); 1469 Message message = Message.obtain();
1465 message.what = HttpCode.PROVICES; 1470 message.what = HttpCode.PROVICES;
1466 message.obj = provincesBeanList; 1471 message.obj = provincesBeanList;
1467 handler.sendMessage(message); 1472 handler.sendMessage(message);
1468 1473
1469 1474
1470 } else { 1475 } else {
1471 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!"); 1476 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!");
1472 1477
1473 } 1478 }
1474 } catch (JSONException e) { 1479 } catch (JSONException e) {
1475 e.printStackTrace(); 1480 e.printStackTrace();
1476 } 1481 }
1477 1482
1478 1483
1479 } 1484 }
1480 1485
1481 @Override 1486 @Override
1482 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1487 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1483 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1488 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1484 } 1489 }
1485 }); 1490 });
1486 } 1491 }
1487 1492
1488 //获取版本信息接口 1493 //获取版本信息接口
1489 public void getpublishinfo(final Context mContext, Object userId, int gradeId, int type, final Handler handler) { 1494 public void getpublishinfo(final Context mContext, Object userId, int gradeId, int type, final Handler handler) {
1490 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1495 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1491 HttpClient.getInstance().get(HttpUrl.getpublishURL + "?userId=" + userId + "&gradeId=" + gradeId + "&type=" + type, new AsyncHttpResponseHandler() { 1496 HttpClient.getInstance().get(HttpUrl.getpublishURL + "?userId=" + userId + "&gradeId=" + gradeId + "&type=" + type, new AsyncHttpResponseHandler() {
1492 @Override 1497 @Override
1493 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1498 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1494 Log.e("test", "获取版本信息接口" + new String(arg2)); 1499 Log.e("test", "获取版本信息接口" + new String(arg2));
1495 try { 1500 try {
1496 JSONObject jsonObject = new JSONObject(new String(arg2)); 1501 JSONObject jsonObject = new JSONObject(new String(arg2));
1497 int status = jsonObject.optInt("status"); 1502 int status = jsonObject.optInt("status");
1498 if (status == 1) { 1503 if (status == 1) {
1499 Gson gson = new Gson(); 1504 Gson gson = new Gson();
1500 DefautPublishInfo defautPublishInfo = gson.fromJson(new String(arg2), DefautPublishInfo.class); 1505 DefautPublishInfo defautPublishInfo = gson.fromJson(new String(arg2), DefautPublishInfo.class);
1501 List<DefautPublishInfo.DataBean> defautPublishInfoBeanList = defautPublishInfo.getData(); 1506 List<DefautPublishInfo.DataBean> defautPublishInfoBeanList = defautPublishInfo.getData();
1502 Message message = Message.obtain(); 1507 Message message = Message.obtain();
1503 message.what = HttpCode.PUBLISH_SUCESS; 1508 message.what = HttpCode.PUBLISH_SUCESS;
1504 message.obj = defautPublishInfoBeanList; 1509 message.obj = defautPublishInfoBeanList;
1505 handler.sendMessage(message); 1510 handler.sendMessage(message);
1506 1511
1507 } else { 1512 } else {
1508 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!"); 1513 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!");
1509 1514
1510 } 1515 }
1511 } catch (JSONException e) { 1516 } catch (JSONException e) {
1512 e.printStackTrace(); 1517 e.printStackTrace();
1513 } 1518 }
1514 1519
1515 1520
1516 } 1521 }
1517 1522
1518 @Override 1523 @Override
1519 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1524 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1520 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1525 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1521 } 1526 }
1522 }); 1527 });
1523 } 1528 }
1524 1529
1525 1530
1526 //市级接口 1531 //市级接口
1527 public void cityinfo(final Context mContext, long regionId, final Handler handler) { 1532 public void cityinfo(final Context mContext, long regionId, final Handler handler) {
1528 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1533 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1529 HttpClient.getInstance().get(HttpUrl.cityUrl + "?regionId=" + regionId, new AsyncHttpResponseHandler() { 1534 HttpClient.getInstance().get(HttpUrl.cityUrl + "?regionId=" + regionId, new AsyncHttpResponseHandler() {
1530 @Override 1535 @Override
1531 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1536 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1532 Log.e("test", "市" + new String(arg2)); 1537 Log.e("test", "市" + new String(arg2));
1533 try { 1538 try {
1534 JSONObject jsonObject = new JSONObject(new String(arg2)); 1539 JSONObject jsonObject = new JSONObject(new String(arg2));
1535 int status = jsonObject.optInt("status"); 1540 int status = jsonObject.optInt("status");
1536 if (status == 100) { 1541 if (status == 100) {
1537 Gson gson = new Gson(); 1542 Gson gson = new Gson();
1538 CityInfo cityInfo = gson.fromJson(new String(arg2), CityInfo.class); 1543 CityInfo cityInfo = gson.fromJson(new String(arg2), CityInfo.class);
1539 List<CityInfo.CitiesBean> cityInfoBeanList = cityInfo.getCities(); 1544 List<CityInfo.CitiesBean> cityInfoBeanList = cityInfo.getCities();
1540 Message message = Message.obtain(); 1545 Message message = Message.obtain();
1541 message.what = HttpCode.CITYS; 1546 message.what = HttpCode.CITYS;
1542 message.obj = cityInfoBeanList; 1547 message.obj = cityInfoBeanList;
1543 handler.sendMessage(message); 1548 handler.sendMessage(message);
1544 1549
1545 } else { 1550 } else {
1546 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!"); 1551 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!");
1547 1552
1548 } 1553 }
1549 } catch (JSONException e) { 1554 } catch (JSONException e) {
1550 e.printStackTrace(); 1555 e.printStackTrace();
1551 } 1556 }
1552 1557
1553 1558
1554 } 1559 }
1555 1560
1556 @Override 1561 @Override
1557 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1562 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1558 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1563 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1559 } 1564 }
1560 }); 1565 });
1561 } 1566 }
1562 1567
1563 //区县级接口 1568 //区县级接口
1564 public void countyinfo(final Context mContext, int parentId, final Handler handler) { 1569 public void countyinfo(final Context mContext, int parentId, final Handler handler) {
1565 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 1570 HttpClient.getInstance().addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
1566 HttpClient.getInstance().get(HttpUrl.countyUrl + "?regionId=" + parentId, new AsyncHttpResponseHandler() { 1571 HttpClient.getInstance().get(HttpUrl.countyUrl + "?regionId=" + parentId, new AsyncHttpResponseHandler() {
1567 @Override 1572 @Override
1568 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { 1573 public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
1569 Log.e("test", "区" + new String(arg2)); 1574 Log.e("test", "区" + new String(arg2));
1570 try { 1575 try {
1571 JSONObject jsonObject = new JSONObject(new String(arg2)); 1576 JSONObject jsonObject = new JSONObject(new String(arg2));
1572 int status = jsonObject.optInt("status"); 1577 int status = jsonObject.optInt("status");
1573 if (status == 100) { 1578 if (status == 100) {
1574 Gson gson = new Gson(); 1579 Gson gson = new Gson();
1575 CountyInfo countyInfo = gson.fromJson(new String(arg2), CountyInfo.class); 1580 CountyInfo countyInfo = gson.fromJson(new String(arg2), CountyInfo.class);
1576 List<CountyInfo.CountiesBean> countyInfoInfoBeanList = countyInfo.getCounties(); 1581 List<CountyInfo.CountiesBean> countyInfoInfoBeanList = countyInfo.getCounties();
1577 Message message = Message.obtain(); 1582 Message message = Message.obtain();
1578 message.what = HttpCode.COUNTRY; 1583 message.what = HttpCode.COUNTRY;
1579 message.obj = countyInfoInfoBeanList; 1584 message.obj = countyInfoInfoBeanList;
1580 handler.sendMessage(message); 1585 handler.sendMessage(message);
1581 } else { 1586 } else {
1582 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!"); 1587 AlertUtils.showToast(mContext, "你好,服务器异常,请稍后重试!");
1583 1588
1584 } 1589 }
1585 } catch (JSONException e) { 1590 } catch (JSONException e) {
1586 e.printStackTrace(); 1591 e.printStackTrace();
1587 } 1592 }
1588 1593
1589 1594
1590 } 1595 }
1591 1596
1592 @Override 1597 @Override
1593 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { 1598 public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
1594 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!"); 1599 AlertUtils.showToast(mContext, "无法链接到服务器,请检查您的网络或稍后重试!");
1595 } 1600 }
1596 }); 1601 });
1597 } 1602 }
1598 1603
1599 1604
1600 private void closeProgress() { 1605 private void closeProgress() {
1601 try { 1606 try {
1602 if (mProgress != null) { 1607 if (mProgress != null) {
1603 mProgress.dismiss(); 1608 mProgress.dismiss();
1604 mProgress = null; 1609 mProgress = null;
1605 } 1610 }
1606 } catch (Exception e) { 1611 } catch (Exception e) {
1607 e.printStackTrace(); 1612 e.printStackTrace();
1608 } 1613 }
1609 } 1614 }
1610 1615
1611 public boolean onKeyDown(int keyCode, KeyEvent event) { 1616 public boolean onKeyDown(int keyCode, KeyEvent event) {
1612 if (keyCode == KeyEvent.KEYCODE_BACK) { 1617 if (keyCode == KeyEvent.KEYCODE_BACK) {
1613 1618
1614 HttpManager.getInstance().closeProgress(); 1619 HttpManager.getInstance().closeProgress();
1615 } 1620 }
1616 1621
1617 return false; 1622 return false;
1618 1623
1619 } 1624 }
1620 1625
1621 } 1626 }
1622 1627
PersonalCenter/app/src/main/java/com/hjx/personalcenter/model/AppVersion.java
1 package com.hjx.personalcenter.model; 1 package com.hjx.personalcenter.model;
2 2
3 import java.io.Serializable; 3 import java.io.Serializable;
4 4
5 /** 5 /**
6 * Created by h on 2017/8/29. 6 * Created by h on 2017/8/29.
7 */ 7 */
8 8
9 public class AppVersion implements Serializable{ 9 public class AppVersion implements Serializable{
10 10
11 /** 11 /**
12 * version_name : 1.7.1.201608028708 12 * version_name : 3.6.201707281400
13 * versioncode : 176 13 * versioncode : 702
14 * pid : com.ozing.appstore 14 * pid : com.ozing.studentregister
15 * downloads : 15 * downloads :
16 * app_name : 应用商城 16 * app_name : 个人中心
17 * msg : 919,929,939界面优化 17 * msg : 优化升级
18 * url : http://hjxprodbucket.oss.aliyuncs.com/static/upload/app/pad/2016-08-18/AppStore-816.apk 18 * url : http://hjxprodbucket.oss.aliyuncs.com/static/upload/app/pad/2017-07-31/ozing-user2.apk
19 * forceupdate : false 19 * forceupdate : false
20 * size : 4805 20 * size : 2921
21 * encrypted : false 21 * encrypted : false
22 * encryptedUrl : 22 * encryptedUrl :
23 * order : 23 * order :
24 * visiable : true 24 * visiable : true
25 * release_date : 1471449600000 25 * release_date : 1501430400000
26 */ 26 */
27 27
28 private String version_name; 28 private String version_name;
29 private int versioncode; 29 private int versioncode;
30 private String pid; 30 private String pid;
31 private String downloads; 31 private String downloads;
32 private String app_name; 32 private String app_name;
33 private String msg; 33 private String msg;
34 private String url; 34 private String url;
35 private String forceupdate; 35 private String forceupdate;
36 private int size; 36 private int size;
37 private boolean encrypted; 37 private boolean encrypted;
38 private String encryptedUrl; 38 private String encryptedUrl;
39 private String order; 39 private String order;
40 private String visiable; 40 private String visiable;
41 private long release_date; 41 private long release_date;
42 42
43 public String getVersion_name() {
44 return version_name;
45 }
46
47 public void setVersion_name(String version_name) { 43 public void setVersion_name(String version_name) {
48 this.version_name = version_name; 44 this.version_name = version_name;
49 } 45 }
50 46
51 public int getVersioncode() {
52 return versioncode;
53 }
54
55 public void setVersioncode(int versioncode) { 47 public void setVersioncode(int versioncode) {
56 this.versioncode = versioncode; 48 this.versioncode = versioncode;
57 } 49 }
58 50
59 public String getPid() {
60 return pid;
61 }
62
63 public void setPid(String pid) { 51 public void setPid(String pid) {
64 this.pid = pid; 52 this.pid = pid;
65 } 53 }
66 54
67 public String getDownloads() {
68 return downloads;
69 }
70
71 public void setDownloads(String downloads) { 55 public void setDownloads(String downloads) {
72 this.downloads = downloads; 56 this.downloads = downloads;
73 } 57 }
74 58
75 public String getApp_name() {
76 return app_name;
77 }
78
79 public void setApp_name(String app_name) { 59 public void setApp_name(String app_name) {
80 this.app_name = app_name; 60 this.app_name = app_name;
81 } 61 }
82 62
83 public String getMsg() {
84 return msg;
85 }
86
87 public void setMsg(String msg) { 63 public void setMsg(String msg) {
88 this.msg = msg; 64 this.msg = msg;
89 } 65 }
90 66
91 public String getUrl() {
92 return url;
93 }
94
95 public void setUrl(String url) { 67 public void setUrl(String url) {
96 this.url = url; 68 this.url = url;
97 } 69 }
98 70
99 public String getForceupdate() {
100 return forceupdate;
101 }
102
103 public void setForceupdate(String forceupdate) { 71 public void setForceupdate(String forceupdate) {
104 this.forceupdate = forceupdate; 72 this.forceupdate = forceupdate;
105 } 73 }
106 74
107 public int getSize() {
108 return size;
109 }
110
111 public void setSize(int size) { 75 public void setSize(int size) {
112 this.size = size; 76 this.size = size;
113 } 77 }
114 78
115 public boolean isEncrypted() {
116 return encrypted;
117 }
118
119 public void setEncrypted(boolean encrypted) { 79 public void setEncrypted(boolean encrypted) {
120 this.encrypted = encrypted; 80 this.encrypted = encrypted;
121 } 81 }
122 82
123 public String getEncryptedUrl() {
124 return encryptedUrl;
125 }
126
127 public void setEncryptedUrl(String encryptedUrl) { 83 public void setEncryptedUrl(String encryptedUrl) {
128 this.encryptedUrl = encryptedUrl; 84 this.encryptedUrl = encryptedUrl;
129 } 85 }
130 86
131 public String getOrder() {
132 return order;
133 }
134
135 public void setOrder(String order) { 87 public void setOrder(String order) {
136 this.order = order; 88 this.order = order;
137 } 89 }
138 90
139 public String getVisiable() {
140 return visiable;
141 }
142
143 public void setVisiable(String visiable) { 91 public void setVisiable(String visiable) {
144 this.visiable = visiable; 92 this.visiable = visiable;
145 } 93 }
146 94
147 public long getRelease_date() {
148 return release_date;
149 }
150
151 public void setRelease_date(long release_date) { 95 public void setRelease_date(long release_date) {
152 this.release_date = release_date; 96 this.release_date = release_date;
153 } 97 }
98
99 public String getVersion_name() {
PersonalCenter/app/src/main/java/com/hjx/personalcenter/update/UpdateChecker.java
1 package com.hjx.personalcenter.update; 1 package com.hjx.personalcenter.update;
2 2
3 /** 3 /**
4 * Created by l on 2017/7/17. 4 * Created by l on 2017/7/17.
5 */ 5 */
6 6
7 import android.app.Activity; 7 import android.app.Activity;
8 import android.app.ProgressDialog; 8 import android.app.ProgressDialog;
9 import android.content.Context; 9 import android.content.Context;
10 import android.content.DialogInterface; 10 import android.content.DialogInterface;
11 import android.content.Intent; 11 import android.content.Intent;
12 import android.content.pm.PackageManager; 12 import android.content.pm.PackageManager;
13 import android.net.Uri; 13 import android.net.Uri;
14 import android.os.Bundle; 14 import android.os.Bundle;
15 import android.os.Environment; 15 import android.os.Environment;
16 import android.os.Handler; 16 import android.os.Handler;
17 import android.os.Message; 17 import android.os.Message;
18 import android.os.ResultReceiver; 18 import android.os.ResultReceiver;
19 import android.support.v4.app.FragmentActivity; 19 import android.support.v4.app.FragmentActivity;
20 import android.view.View; 20 import android.view.View;
21 21
22 import com.hjx.personalcenter.http.HttpCode; 22 import com.hjx.personalcenter.http.HttpCode;
23 import com.hjx.personalcenter.http.HttpManager; 23 import com.hjx.personalcenter.http.HttpManager;
24 import com.hjx.personalcenter.model.AppVersion; 24 import com.hjx.personalcenter.model.AppVersion;
25 import com.mylhyl.circledialog.CircleDialog; 25 import com.mylhyl.circledialog.CircleDialog;
26 26
27 import java.io.File; 27 import java.io.File;
28 import java.util.ArrayList;
28 29
29 public class UpdateChecker{ 30 public class UpdateChecker{
30 private static final String TAG = "UpdateChecker"; 31 private static final String TAG = "UpdateChecker";
31 private Context mContext; 32 private Context mContext;
32 //检查版本信息的线程 33 //检查版本信息的线程
33 private Thread mThread; 34 private Thread mThread;
34 35
35 private AppVersion mAppVersion; 36 private ArrayList<AppVersion> mAppVersion;
36 //下载apk的对话框 37 //下载apk的对话框
37 private ProgressDialog mProgressDialog; 38 private ProgressDialog mProgressDialog;
38 39
39 private File apkFile; 40 private File apkFile;
40 41 private int visncode;
41 42 private String downUrl;
43 private String msgs;
44 private String qiangzi;
45
46 Handler handler = new Handler(){
47 public void handleMessage(Message msg) {
48 if (msg.what == HttpCode.APPUPDATE_SUCESS) {
49 mAppVersion = (ArrayList<AppVersion>) msg.obj;
50 for (AppVersion appVersion : mAppVersion){
51 visncode = appVersion.getVersioncode();
52 downUrl = appVersion.getUrl();
53 msgs = appVersion.getMsg();
54 qiangzi = appVersion.getForceupdate();
55 }
56 try{
57 int versionCode = mContext.getPackageManager().getPackageInfo(mContext.getPackageName(), 0).versionCode;
58 if (visncode > versionCode) {
59 if("true".equals(qiangzi)){
60 showForceUpdateDialog();
61 }else{
62 showUpdateDialog();
63 }
64 } else {
65 //Toast.makeText(mContext, "已经是最新版本", Toast.LENGTH_SHORT).show();
66 }
67 }catch (PackageManager.NameNotFoundException ignored) {
68 //
69 }
70 }
71 }
72 };
42 public UpdateChecker(Context context) { 73 public UpdateChecker(Context context) {
43 mContext = context; 74 mContext = context;
44 // instantiate it within the onCreate method 75 // instantiate it within the onCreate method
45 mProgressDialog = new ProgressDialog(context); 76 mProgressDialog = new ProgressDialog(context);
46 mProgressDialog.setMessage("正在下载"); 77 mProgressDialog.setMessage("正在下载");
47 mProgressDialog.setIndeterminate(false); 78 mProgressDialog.setIndeterminate(false);
48 mProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); 79 mProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
49 mProgressDialog.setCancelable(true); 80 mProgressDialog.setCancelable(true);
50 mProgressDialog.setOnCancelListener(new DialogInterface.OnCancelListener() { 81 mProgressDialog.setOnCancelListener(new DialogInterface.OnCancelListener() {
51 @Override 82 @Override
52 public void onCancel(DialogInterface dialog) { 83 public void onCancel(DialogInterface dialog) {
53 84
54 } 85 }
55 }); 86 });
56 mProgressDialog.setOnDismissListener(new DialogInterface.OnDismissListener() { 87 mProgressDialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
57 @Override 88 @Override
58 public void onDismiss(DialogInterface dialog) { 89 public void onDismiss(DialogInterface dialog) {
59 // TODO Auto-generated method stub 90 // TODO Auto-generated method stub
60 91
61 } 92 }
62 }); 93 });
63 } 94 }
64 95
65 public void checkForUpdates() { 96 public void checkForUpdates() {
66 97
67 final Handler handler = new Handler(){
68 public void handleMessage(Message msg) {
69 if (msg.what == HttpCode.APPUPDATE_SUCESS) {
70 mAppVersion = (AppVersion) msg.obj;
71 try{
72 int versionCode = mContext.getPackageManager().getPackageInfo(mContext.getPackageName(), 0).versionCode;
73 if (mAppVersion.getVersioncode() > versionCode) {
74 if(mAppVersion.isEncrypted()){
75 showForceUpdateDialog();
76 }else{
77 showUpdateDialog();
78 }
79 } else {
80 //Toast.makeText(mContext, "已经是最新版本", Toast.LENGTH_SHORT).show();
81 }
82 }catch (PackageManager.NameNotFoundException ignored) {
83 //
84 }
85 }
86 }
87 };
88 98
89 mThread = new Thread() { 99 // mThread = new Thread() {
90 @Override 100 // @Override
91 public void run() { 101 // public void run() {
92 try { 102 // try {
93 HttpManager.getInstance().updateAPP(mContext,"com.hjx.personalcenter","呼叫老师安卓Pad",handler); 103 HttpManager.getInstance().updateAPP(mContext,"com.hjx.personalcenter","个人中心",handler);
94 }catch (Exception e){ 104 // }catch (Exception e){
95 e.printStackTrace(); 105 // e.printStackTrace();
96 } 106 // }
97 107 //
98 } 108 // }
99 }; 109 // };
100 mThread.start(); 110 // mThread.start();
101 } 111 }
102 112
103 private void showForceUpdateDialog() { 113 private void showForceUpdateDialog() {
104 new CircleDialog.Builder((FragmentActivity)mContext) 114 new CircleDialog.Builder((FragmentActivity)mContext)
105 .setCanceledOnTouchOutside(false) 115 .setCanceledOnTouchOutside(false)
106 .setCancelable(false) 116 .setCancelable(false)
107 .setWidth(0.5f) 117 .setWidth(0.5f)
108 .setTitle("升级提示") 118 .setTitle("升级提示")
119 .setText(msgs)
109 .setNegative("取消", new View.OnClickListener() { 120 .setNegative("取消", new View.OnClickListener() {
110 @Override 121 @Override
111 public void onClick(View v) { 122 public void onClick(View v) {
112 ((Activity)mContext).finish(); 123 ((Activity)mContext).finish();
113 124
114 } 125 }
115 }) 126 })
116 .setPositive("确定", new View.OnClickListener() { 127 .setPositive("确定", new View.OnClickListener() {
117 @Override 128 @Override
118 public void onClick(View v) { 129 public void onClick(View v) {
119 downLoadApk(); 130 downLoadApk();
120 } 131 }
121 }) 132 })
122 .show(); 133 .show();
123 } 134 }
124 135
125 private void showUpdateDialog() { 136 private void showUpdateDialog() {
126 new CircleDialog.Builder((FragmentActivity)mContext) 137 new CircleDialog.Builder((FragmentActivity)mContext)
127 .setCanceledOnTouchOutside(false) 138 .setCanceledOnTouchOutside(false)
128 .setCancelable(false) 139 .setCancelable(false)
129 .setWidth(0.5f) 140 .setWidth(0.5f)
130 .setTitle("升级提示") 141 .setTitle("升级提示")
142 .setText(msgs)
131 .setNegative("取消", null) 143 .setNegative("取消", null)
132 .setPositive("确定", new View.OnClickListener() { 144 .setPositive("确定", new View.OnClickListener() {
133 @Override 145 @Override
134 public void onClick(View v) { 146 public void onClick(View v) {
135 downLoadApk(); 147 downLoadApk();
136 } 148 }
137 }) 149 })
138 .show(); 150 .show();
139 } 151 }
140 152
141 private void downLoadApk() { 153 private void downLoadApk() {
142 String apkUrl = mAppVersion.getUrl(); 154 String apkUrl = downUrl;
143 String dir = mContext.getExternalFilesDir( "apk").getAbsolutePath(); 155 String dir = mContext.getExternalFilesDir( "apk").getAbsolutePath();
144 File folder = Environment.getExternalStoragePublicDirectory(dir); 156 File folder = Environment.getExternalStoragePublicDirectory(dir);
145 if(folder.exists() && folder.isDirectory()) { 157 if(folder.exists() && folder.isDirectory()) {
146 //do nothing 158 //do nothing
147 }else { 159 }else {
148 folder.mkdirs(); 160 folder.mkdirs();
149 } 161 }
150 String filename = apkUrl.substring(apkUrl.lastIndexOf("/"),apkUrl.length()); 162 String filename = apkUrl.substring(apkUrl.lastIndexOf("/"),apkUrl.length());
151 String destinationFilePath = dir + "/" + filename; 163 String destinationFilePath = dir + "/" + filename;
152 apkFile = new File(destinationFilePath); 164 apkFile = new File(destinationFilePath);
153 if(mAppVersion.isEncrypted()){ 165 if("true".equals(qiangzi)){
154 mProgressDialog.setCancelable(false); 166 mProgressDialog.setCancelable(false);
155 } 167 }
156 mProgressDialog.show(); 168 mProgressDialog.show();
157 Intent intent = new Intent(mContext, DownloadService.class); 169 Intent intent = new Intent(mContext, DownloadService.class);
158 intent.putExtra("url", apkUrl); 170 intent.putExtra("url", apkUrl);
159 intent.putExtra("dest", destinationFilePath); 171 intent.putExtra("dest", destinationFilePath);
160 intent.putExtra("receiver", new DownloadReceiver(new Handler())); 172 intent.putExtra("receiver", new DownloadReceiver(new Handler()));
161 mContext.startService(intent); 173 mContext.startService(intent);
162 } 174 }
163 175
164 private class DownloadReceiver extends ResultReceiver{ 176 private class DownloadReceiver extends ResultReceiver{
165 public DownloadReceiver(Handler handler) { 177 public DownloadReceiver(Handler handler) {
166 super(handler); 178 super(handler);
167 } 179 }
168 @Override 180 @Override
169 protected void onReceiveResult(int resultCode, Bundle resultData) { 181 protected void onReceiveResult(int resultCode, Bundle resultData) {
170 super.onReceiveResult(resultCode, resultData); 182 super.onReceiveResult(resultCode, resultData);
PersonalCenter/build.gradle
1 // Top-level build file where you can add configuration options common to all sub-projects/modules. 1 // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 2
3 buildscript { 3 buildscript {
4 repositories { 4 repositories {
5 jcenter() 5 jcenter()
6 } 6 }
7 dependencies { 7 dependencies {
8 classpath 'com.android.tools.build:gradle:2.2.3' 8 classpath 'com.android.tools.build:gradle:2.3.3'
9 9
10 // NOTE: Do not place your application dependencies here; they belong 10 // NOTE: Do not place your application dependencies here; they belong
11 // in the individual module build.gradle files 11 // in the individual module build.gradle files
12 classpath 'com.novoda:bintray-release:0.3.4' 12 classpath 'com.novoda:bintray-release:0.3.4'
13 classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5' 13 classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
14 } 14 }
15 } 15 }
16 16
17 allprojects { 17 allprojects {
18 repositories { 18 repositories {
19 jcenter() 19 jcenter()
20 } 20 }
21 } 21 }
22 22
23 task clean(type: Delete) { 23 task clean(type: Delete) {
24 delete rootProject.buildDir 24 delete rootProject.buildDir
25 } 25 }
26 26
PersonalCenter/circledialog/build.gradle
1 apply plugin: 'com.android.library' 1 apply plugin: 'com.android.library'
2 apply plugin: 'maven' 2 apply plugin: 'maven'
3 apply plugin: 'com.novoda.bintray-release' 3 apply plugin: 'com.novoda.bintray-release'
4 4
5 android { 5 android {
6 compileSdkVersion 23 6 compileSdkVersion 23
7 buildToolsVersion "23.0.3" 7 buildToolsVersion '25.0.0'
8 defaultConfig { 8 defaultConfig {
9 minSdkVersion 15 9 minSdkVersion 15
10 targetSdkVersion 23 10 targetSdkVersion 23
11 versionCode 1 11 versionCode 1
12 versionName "2017.5.8" 12 versionName "2017.5.8"
13 } 13 }
14 buildTypes { 14 buildTypes {
15 release { 15 release {
16 minifyEnabled false 16 minifyEnabled false
17 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 17 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18 } 18 }
19 } 19 }
20 productFlavors { 20 productFlavors {
21 } 21 }
22 lintOptions { 22 lintOptions {
23 abortOnError false 23 abortOnError false
24 checkReleaseBuilds false 24 checkReleaseBuilds false
25 } 25 }
26 } 26 }
27 27
28 dependencies { 28 dependencies {
29 compile 'com.android.support:appcompat-v7:23.4.0' 29 compile 'com.android.support:appcompat-v7:23.4.0'
30 } 30 }
31 31
32 publish { 32 publish {
33 userOrg = 'mylhyl' 33 userOrg = 'mylhyl'
34 groupId = 'com.mylhyl' 34 groupId = 'com.mylhyl'
35 artifactId = 'circleDialog' 35 artifactId = 'circleDialog'
36 version = '2.1.6' 36 version = '2.1.6'
37 description = 'circleDialog ios style' 37 description = 'circleDialog ios style'
38 website = "https://github.com/mylhyl/Android-CircleDialog" 38 website = "https://github.com/mylhyl/Android-CircleDialog"
39 } 39 }
PersonalCenter/gradle/wrapper/gradle-wrapper.properties
1 #Mon Dec 28 10:00:20 PST 2015 1 #Mon Sep 25 14:19:39 CST 2017
2 distributionBase=GRADLE_USER_HOME 2 distributionBase=GRADLE_USER_HOME
3 distributionPath=wrapper/dists 3 distributionPath=wrapper/dists
4 zipStoreBase=GRADLE_USER_HOME 4 zipStoreBase=GRADLE_USER_HOME
5 zipStorePath=wrapper/dists 5 zipStorePath=wrapper/dists
6 distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip 6 distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
7 7
PersonalCenter/projectFilesBackup/.idea/workspace.xml
File was created 1 <?xml version="1.0" encoding="UTF-8"?>
2 <project version="4">
3 <component name="AndroidLayouts">
4 <shared>
5 <config />
6 </shared>
7 </component>
8 <component name="AndroidLogFilters">
9 <option name="TOOL_WINDOW_LOG_LEVEL" value="verbose" />
10 <option name="TOOL_WINDOW_CONFIGURED_FILTER" value="No Filters" />
11 </component>
12 <component name="ChangeListManager">
13 <list default="true" id="784baace-4300-40f4-87e6-3737cc99d97c" name="Default" comment="" />
14 <ignored path="PersonalCenter.iws" />
15 <ignored path=".idea/workspace.xml" />
16 <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
17 <option name="TRACKING_ENABLED" value="true" />
18 <option name="SHOW_DIALOG" value="false" />
19 <option name="HIGHLIGHT_CONFLICTS" value="true" />
20 <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
21 <option name="LAST_RESOLUTION" value="IGNORE" />
22 </component>
23 <component name="ChangesViewManager" flattened_view="true" show_ignored="false" />
24 <component name="CreatePatchCommitExecutor">
25 <option name="PATCH_PATH" value="" />
26 </component>
27 <component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
28 <component name="ExternalProjectsData">
29 <projectState path="$PROJECT_DIR$">
30 <ProjectState />
31 </projectState>
32 </component>
33 <component name="ExternalProjectsManager">
34 <system id="GRADLE">
35 <state>
36 <projects_view>
37 <tree_state />
38 </projects_view>
39 </state>
40 </system>
41 </component>
42 <component name="FavoritesManager">
43 <favorites_list name="PersonalCenter" />
44 </component>
45 <component name="FileEditorManager">
46 <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
47 <file leaf-file-name="PresonInfoFragment.java" pinned="false" current-in-tab="false">
48 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/fragment/PresonInfoFragment.java">
49 <provider selected="true" editor-type-id="text-editor">
50 <state relative-caret-position="2610">
51 <caret line="145" column="39" selection-start-line="145" selection-start-column="39" selection-end-line="145" selection-end-column="39" />
52 <folding />
53 </state>
54 </provider>
55 </entry>
56 </file>
57 <file leaf-file-name="MainActivity.java" pinned="false" current-in-tab="false">
58 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/MainActivity.java">
59 <provider selected="true" editor-type-id="text-editor">
60 <state relative-caret-position="162">
61 <caret line="570" column="5" selection-start-line="570" selection-start-column="5" selection-end-line="570" selection-end-column="5" />
62 <folding>
63 <element signature="imports" expanded="true" />
64 </folding>
65 </state>
66 </provider>
67 </entry>
68 </file>
69 <file leaf-file-name="build.gradle" pinned="false" current-in-tab="true">
70 <entry file="file://$PROJECT_DIR$/app/build.gradle">
71 <provider selected="true" editor-type-id="text-editor">
72 <state relative-caret-position="162">
73 <caret line="9" column="21" selection-start-line="9" selection-start-column="21" selection-end-line="9" selection-end-column="21" />
74 <folding />
75 </state>
76 </provider>
77 </entry>
78 </file>
79 <file leaf-file-name="VersionsInfoFragment.java" pinned="false" current-in-tab="false">
80 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/fragment/VersionsInfoFragment.java">
81 <provider selected="true" editor-type-id="text-editor">
82 <state relative-caret-position="2250">
83 <caret line="154" column="38" selection-start-line="154" selection-start-column="38" selection-end-line="154" selection-end-column="38" />
84 <folding>
85 <element signature="imports" expanded="false" />
86 </folding>
87 </state>
88 </provider>
89 </entry>
90 </file>
91 <file leaf-file-name="RegisterInfoActivity.java" pinned="false" current-in-tab="false">
92 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/RegisterInfoActivity.java">
93 <provider selected="true" editor-type-id="text-editor">
94 <state relative-caret-position="1692">
95 <caret line="122" column="34" selection-start-line="122" selection-start-column="34" selection-end-line="122" selection-end-column="34" />
96 <folding>
97 <element signature="imports" expanded="false" />
98 <element signature="e#7459#7460#0" expanded="false" />
99 <element signature="e#7491#7492#0" expanded="false" />
100 </folding>
101 </state>
102 </provider>
103 </entry>
104 </file>
105 <file leaf-file-name="AccountManagementActivity.java" pinned="false" current-in-tab="false">
106 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/AccountManagementActivity.java">
107 <provider selected="true" editor-type-id="text-editor">
108 <state relative-caret-position="288">
109 <caret line="41" column="21" selection-start-line="41" selection-start-column="21" selection-end-line="41" selection-end-column="21" />
110 <folding>
111 <element signature="imports" expanded="false" />
112 </folding>
113 </state>
114 </provider>
115 </entry>
116 </file>
117 <file leaf-file-name="AccountChildsAdapter.java" pinned="false" current-in-tab="false">
118 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/adapter/AccountChildsAdapter.java">
119 <provider selected="true" editor-type-id="text-editor">
120 <state relative-caret-position="2700">
121 <caret line="177" column="36" selection-start-line="177" selection-start-column="20" selection-end-line="177" selection-end-column="44" />
122 <folding>
123 <element signature="imports" expanded="false" />
124 <element signature="e#1807#1808#0" expanded="false" />
125 <element signature="e#1848#1849#0" expanded="false" />
126 <element signature="e#1892#1893#0" expanded="false" />
127 <element signature="e#1962#1963#0" expanded="false" />
128 </folding>
129 </state>
130 </provider>
131 </entry>
132 </file>
133 <file leaf-file-name="SaveParam.java" pinned="false" current-in-tab="false">
134 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/db/SaveParam.java">
135 <provider selected="true" editor-type-id="text-editor">
136 <state relative-caret-position="252">
137 <caret line="16" column="25" selection-start-line="16" selection-start-column="25" selection-end-line="16" selection-end-column="25" />
138 <folding>
139 <element signature="imports" expanded="false" />
140 </folding>
141 </state>
142 </provider>
143 </entry>
144 </file>
145 <file leaf-file-name="Content.java" pinned="false" current-in-tab="false">
146 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/db/Content.java">
147 <provider selected="true" editor-type-id="text-editor">
148 <state relative-caret-position="162">
149 <caret line="9" column="23" selection-start-line="9" selection-start-column="23" selection-end-line="9" selection-end-column="23" />
150 <folding />
151 </state>
152 </provider>
153 </entry>
154 </file>
155 <file leaf-file-name="GradeListDialog.java" pinned="false" current-in-tab="false">
156 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/GradeListDialog.java">
157 <provider selected="true" editor-type-id="text-editor">
158 <state relative-caret-position="1098">
159 <caret line="90" column="7" selection-start-line="90" selection-start-column="7" selection-end-line="90" selection-end-column="101" />
160 <folding>
161 <element signature="imports" expanded="false" />
162 <element signature="e#1404#1405#0" expanded="false" />
163 <element signature="e#1445#1446#0" expanded="false" />
164 <element signature="e#3125#3126#0" expanded="false" />
165 <element signature="e#3166#3167#0" expanded="false" />
166 </folding>
167 </state>
168 </provider>
169 </entry>
170 </file>
171 </leaf>
172 </component>
173 <component name="FileTemplateManagerImpl">
174 <option name="RECENT_TEMPLATES">
175 <list>
176 <option value="resourceFile" />
177 <option value="ASClass" />
178 <option value="layoutResourceFile_vertical" />
179 </list>
180 </option>
181 </component>
182 <component name="GenerateSignedApkSettings">
183 <option name="KEY_STORE_PATH" value="C:\Users\h\Desktop\签名\个人中心签名\search.dat" />
184 <option name="KEY_ALIAS" value="知识搜索" />
185 <option name="REMEMBER_PASSWORDS" value="true" />
186 </component>
187 <component name="GradleLocalSettings">
188 <option name="availableProjects">
189 <map>
190 <entry>
191 <key>
192 <ExternalProjectPojo>
193 <option name="name" value="PersonalCenter" />
194 <option name="path" value="$PROJECT_DIR$" />
195 </ExternalProjectPojo>
196 </key>
197 <value>
198 <list>
199 <ExternalProjectPojo>
200 <option name="name" value=":app" />
201 <option name="path" value="$PROJECT_DIR$/app" />
202 </ExternalProjectPojo>
203 <ExternalProjectPojo>
204 <option name="name" value=":circledialog" />
205 <option name="path" value="$PROJECT_DIR$/circledialog" />
206 </ExternalProjectPojo>
207 <ExternalProjectPojo>
208 <option name="name" value=":mypresonallibrary" />
209 <option name="path" value="$PROJECT_DIR$/mypresonallibrary" />
210 </ExternalProjectPojo>
211 <ExternalProjectPojo>
212 <option name="name" value="PersonalCenter" />
213 <option name="path" value="$PROJECT_DIR$" />
214 </ExternalProjectPojo>
215 <ExternalProjectPojo>
216 <option name="name" value=":pickerview" />
217 <option name="path" value="$PROJECT_DIR$/pickerview" />
218 </ExternalProjectPojo>
219 </list>
220 </value>
221 </entry>
222 </map>
223 </option>
224 <option name="availableTasks">
225 <map>
226 <entry key="$PROJECT_DIR$">
227 <value>
228 <list>
229 <ExternalTaskPojo>
230 <option name="description" value="Displays the sub-projects of root project 'PersonalCenter'." />
231 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
232 <option name="name" value="projects" />
233 </ExternalTaskPojo>
234 <ExternalTaskPojo>
235 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
236 <option name="name" value="packageReleaseResources" />
237 </ExternalTaskPojo>
238 <ExternalTaskPojo>
239 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
240 <option name="name" value="validateSigningDebugAndroidTest" />
241 </ExternalTaskPojo>
242 <ExternalTaskPojo>
243 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
244 <option name="name" value="mavenAndroidJavadocs" />
245 </ExternalTaskPojo>
246 <ExternalTaskPojo>
247 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
248 <option name="name" value="prepareDebugDependencies" />
249 </ExternalTaskPojo>
250 <ExternalTaskPojo>
251 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
252 <option name="name" value="copyDebugLint" />
253 </ExternalTaskPojo>
254 <ExternalTaskPojo>
255 <option name="description" value="Prepare com.android.support:support-vector-drawable:23.4.0" />
256 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
257 <option name="name" value="prepareComAndroidSupportSupportVectorDrawable2340Library" />
258 </ExternalTaskPojo>
259 <ExternalTaskPojo>
260 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
261 <option name="name" value="assembleDebugUnitTest" />
262 </ExternalTaskPojo>
263 <ExternalTaskPojo>
264 <option name="description" value="Creates a version of android.jar that's suitable for unit tests." />
265 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
266 <option name="name" value="mockableAndroidJar" />
267 </ExternalTaskPojo>
268 <ExternalTaskPojo>
269 <option name="description" value="Prepare com.android.support:appcompat-v7:25.3.1" />
270 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
271 <option name="name" value="prepareComAndroidSupportAppcompatV72531Library" />
272 </ExternalTaskPojo>
273 <ExternalTaskPojo>
274 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
275 <option name="name" value="compileDebugSources" />
276 </ExternalTaskPojo>
277 <ExternalTaskPojo>
278 <option name="description" value="Prepare com.android.support:support-vector-drawable:25.3.1" />
279 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
280 <option name="name" value="prepareComAndroidSupportSupportVectorDrawable2531Library" />
281 </ExternalTaskPojo>
282 <ExternalTaskPojo>
283 <option name="description" value="Runs all device checks using Device Providers and Test Servers." />
284 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
285 <option name="name" value="deviceCheck" />
286 </ExternalTaskPojo>
287 <ExternalTaskPojo>
288 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
289 <option name="name" value="processDebugResources" />
290 </ExternalTaskPojo>
291 <ExternalTaskPojo>
292 <option name="description" value="Runs lint on all variants." />
293 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
294 <option name="name" value="lint" />
295 </ExternalTaskPojo>
296 <ExternalTaskPojo>
297 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
298 <option name="name" value="compileReleaseNdk" />
299 </ExternalTaskPojo>
300 <ExternalTaskPojo>
301 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
302 <option name="name" value="compileDebugJavaWithJavac" />
303 </ExternalTaskPojo>
304 <ExternalTaskPojo>
305 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
306 <option name="name" value="generateDebugAndroidTestBuildConfig" />
307 </ExternalTaskPojo>
308 <ExternalTaskPojo>
309 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
310 <option name="name" value="assembleDefault" />
311 </ExternalTaskPojo>
312 <ExternalTaskPojo>
313 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
314 <option name="name" value="compileDebugAndroidTestShaders" />
315 </ExternalTaskPojo>
316 <ExternalTaskPojo>
317 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
318 <option name="name" value="compileDebugAndroidTestJavaWithJavac" />
319 </ExternalTaskPojo>
320 <ExternalTaskPojo>
321 <option name="description" value="Displays the components produced by root project 'PersonalCenter'. [incubating]" />
322 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
323 <option name="name" value="components" />
324 </ExternalTaskPojo>
325 <ExternalTaskPojo>
326 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
327 <option name="name" value="processDebugAndroidTestManifest" />
328 </ExternalTaskPojo>
329 <ExternalTaskPojo>
330 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
331 <option name="name" value="compileDebugUnitTestJavaWithJavac" />
332 </ExternalTaskPojo>
333 <ExternalTaskPojo>
334 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
335 <option name="name" value="transformResourcesWithMergeJavaResForReleaseUnitTest" />
336 </ExternalTaskPojo>
337 <ExternalTaskPojo>
338 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
339 <option name="name" value="transformClassesWithDexForDebug" />
340 </ExternalTaskPojo>
341 <ExternalTaskPojo>
342 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
343 <option name="name" value="preDebugAndroidTestBuild" />
344 </ExternalTaskPojo>
345 <ExternalTaskPojo>
346 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
347 <option name="name" value="processDebugAndroidTestJavaRes" />
348 </ExternalTaskPojo>
349 <ExternalTaskPojo>
350 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
351 <option name="name" value="processReleaseUnitTestJavaRes" />
352 </ExternalTaskPojo>
353 <ExternalTaskPojo>
354 <option name="description" value="Prepare com.facebook.fresco:imagepipeline:1.1.0" />
355 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
356 <option name="name" value="prepareComFacebookFrescoImagepipeline110Library" />
357 </ExternalTaskPojo>
358 <ExternalTaskPojo>
359 <option name="description" value="Uninstalls the Release build." />
360 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
361 <option name="name" value="uninstallRelease" />
362 </ExternalTaskPojo>
363 <ExternalTaskPojo>
364 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
365 <option name="name" value="transformClassesAndResourcesWithSyncLibJarsForRelease" />
366 </ExternalTaskPojo>
367 <ExternalTaskPojo>
368 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
369 <option name="name" value="compileReleaseShaders" />
370 </ExternalTaskPojo>
371 <ExternalTaskPojo>
372 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
373 <option name="name" value="mergeReleaseResources" />
374 </ExternalTaskPojo>
375 <ExternalTaskPojo>
376 <option name="description" value="Prepare com.zaaach:toprightmenu:1.0" />
377 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
378 <option name="name" value="prepareComZaaachToprightmenu10Library" />
379 </ExternalTaskPojo>
380 <ExternalTaskPojo>
381 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
382 <option name="name" value="mavenAndroidJavadocsJar" />
383 </ExternalTaskPojo>
384 <ExternalTaskPojo>
385 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
386 <option name="name" value="prepareDebugAndroidTestDependencies" />
387 </ExternalTaskPojo>
388 <ExternalTaskPojo>
389 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
390 <option name="name" value="transformClassesAndResourcesWithSyncLibJarsForDebug" />
391 </ExternalTaskPojo>
392 <ExternalTaskPojo>
393 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
394 <option name="name" value="checkReleaseManifest" />
395 </ExternalTaskPojo>
396 <ExternalTaskPojo>
397 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
398 <option name="name" value="packageDebugResources" />
399 </ExternalTaskPojo>
400 <ExternalTaskPojo>
401 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
402 <option name="name" value="mergeReleaseJniLibFolders" />
403 </ExternalTaskPojo>
404 <ExternalTaskPojo>
405 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
406 <option name="name" value="processReleaseResources" />
407 </ExternalTaskPojo>
408 <ExternalTaskPojo>
409 <option name="description" value="Installs and runs instrumentation tests using all Device Providers." />
410 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
411 <option name="name" value="deviceAndroidTest" />
412 </ExternalTaskPojo>
413 <ExternalTaskPojo>
414 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
415 <option name="name" value="mergeDebugAndroidTestAssets" />
416 </ExternalTaskPojo>
417 <ExternalTaskPojo>
418 <option name="description" value="Prepare com.tencent.bugly:crashreport:2.6.5" />
419 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
420 <option name="name" value="prepareComTencentBuglyCrashreport265Library" />
421 </ExternalTaskPojo>
422 <ExternalTaskPojo>
423 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
424 <option name="name" value="processReleaseManifest" />
425 </ExternalTaskPojo>
426 <ExternalTaskPojo>
427 <option name="description" value="Uninstalls the android (on device) tests for the Debug build." />
428 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
429 <option name="name" value="uninstallDebugAndroidTest" />
430 </ExternalTaskPojo>
431 <ExternalTaskPojo>
432 <option name="description" value="Prepare com.android.support:appcompat-v7:23.4.0" />
433 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
434 <option name="name" value="prepareComAndroidSupportAppcompatV72340Library" />
435 </ExternalTaskPojo>
436 <ExternalTaskPojo>
437 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
438 <option name="name" value="incrementalReleaseUnitTestJavaCompilationSafeguard" />
439 </ExternalTaskPojo>
440 <ExternalTaskPojo>
441 <option name="description" value="Assembles all variants of all applications and secondary packages." />
442 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
443 <option name="name" value="assemble" />
444 </ExternalTaskPojo>
445 <ExternalTaskPojo>
446 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
447 <option name="name" value="compileReleaseUnitTestSources" />
448 </ExternalTaskPojo>
449 <ExternalTaskPojo>
450 <option name="description" value="Installs the android (on device) tests for the Debug build." />
451 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
452 <option name="name" value="installDebugAndroidTest" />
453 </ExternalTaskPojo>
454 <ExternalTaskPojo>
455 <option name="description" value="Prepare com.android.support:support-core-ui:25.3.1" />
456 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
457 <option name="name" value="prepareComAndroidSupportSupportCoreUi2531Library" />
458 </ExternalTaskPojo>
459 <ExternalTaskPojo>
460 <option name="description" value="Runs all device checks on currently connected devices." />
461 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
462 <option name="name" value="connectedCheck" />
463 </ExternalTaskPojo>
464 <ExternalTaskPojo>
465 <option name="description" value="Installs and runs the tests for debug on connected devices." />
466 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
467 <option name="name" value="connectedDebugAndroidTest" />
468 </ExternalTaskPojo>
469 <ExternalTaskPojo>
470 <option name="description" value="Assembles all the Test applications." />
471 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
472 <option name="name" value="assembleAndroidTest" />
473 </ExternalTaskPojo>
474 <ExternalTaskPojo>
475 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
476 <option name="name" value="processDebugAndroidTestResources" />
477 </ExternalTaskPojo>
478 <ExternalTaskPojo>
479 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
480 <option name="name" value="validateSigningDebug" />
481 </ExternalTaskPojo>
482 <ExternalTaskPojo>
483 <option name="description" value="Extracts Android annotations for the release variant into the archive file" />
484 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
485 <option name="name" value="extractReleaseAnnotations" />
486 </ExternalTaskPojo>
487 <ExternalTaskPojo>
488 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
489 <option name="name" value="mergeDebugResources" />
490 </ExternalTaskPojo>
491 <ExternalTaskPojo>
492 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
493 <option name="name" value="preDebugUnitTestBuild" />
494 </ExternalTaskPojo>
495 <ExternalTaskPojo>
496 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
497 <option name="name" value="compileLint" />
498 </ExternalTaskPojo>
499 <ExternalTaskPojo>
500 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
501 <option name="name" value="mergeReleaseShaders" />
502 </ExternalTaskPojo>
503 <ExternalTaskPojo>
504 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
505 <option name="name" value="compileDebugAndroidTestNdk" />
506 </ExternalTaskPojo>
507 <ExternalTaskPojo>
508 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
509 <option name="name" value="mergeDebugAndroidTestJniLibFolders" />
510 </ExternalTaskPojo>
511 <ExternalTaskPojo>
512 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
513 <option name="name" value="extractProguardFiles" />
514 </ExternalTaskPojo>
515 <ExternalTaskPojo>
516 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
517 <option name="name" value="transformClassesWithDexForDebugAndroidTest" />
518 </ExternalTaskPojo>
519 <ExternalTaskPojo>
520 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
521 <option name="name" value="assembleDebugAndroidTest" />
522 </ExternalTaskPojo>
523 <ExternalTaskPojo>
524 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
525 <option name="name" value="copyReleaseLint" />
526 </ExternalTaskPojo>
527 <ExternalTaskPojo>
528 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
529 <option name="name" value="generateDebugAndroidTestAssets" />
530 </ExternalTaskPojo>
531 <ExternalTaskPojo>
532 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
533 <option name="name" value="transformResourcesWithMergeJavaResForDebugAndroidTest" />
534 </ExternalTaskPojo>
535 <ExternalTaskPojo>
536 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
537 <option name="name" value="prepareReleaseUnitTestDependencies" />
538 </ExternalTaskPojo>
539 <ExternalTaskPojo>
540 <option name="description" value="Run unit tests for all variants." />
541 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
542 <option name="name" value="test" />
543 </ExternalTaskPojo>
544 <ExternalTaskPojo>
545 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
546 <option name="name" value="mergeDebugAndroidTestResources" />
547 </ExternalTaskPojo>
548 <ExternalTaskPojo>
549 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
550 <option name="name" value="preReleaseUnitTestBuild" />
551 </ExternalTaskPojo>
552 <ExternalTaskPojo>
553 <option name="description" value="Prepare com.android.support:support-fragment:25.3.1" />
554 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
555 <option name="name" value="prepareComAndroidSupportSupportFragment2531Library" />
556 </ExternalTaskPojo>
557 <ExternalTaskPojo>
558 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
559 <option name="name" value="generateDebugResValues" />
560 </ExternalTaskPojo>
561 <ExternalTaskPojo>
562 <option name="description" value="Runs all checks." />
563 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
564 <option name="name" value="check" />
565 </ExternalTaskPojo>
566 <ExternalTaskPojo>
567 <option name="description" value="Prepare PersonalCenter:mypresonallibrary:unspecified" />
568 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
569 <option name="name" value="preparePersonalCenterMypresonallibraryUnspecifiedLibrary" />
570 </ExternalTaskPojo>
571 <ExternalTaskPojo>
572 <option name="description" value="Prepare com.facebook.fresco:fresco:1.1.0" />
573 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
574 <option name="name" value="prepareComFacebookFrescoFresco110Library" />
575 </ExternalTaskPojo>
576 <ExternalTaskPojo>
577 <option name="description" value="Run unit tests for the debug build." />
578 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
579 <option name="name" value="testDebugUnitTest" />
580 </ExternalTaskPojo>
581 <ExternalTaskPojo>
582 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
583 <option name="name" value="jarDebugClasses" />
584 </ExternalTaskPojo>
585 <ExternalTaskPojo>
586 <option name="description" value="Prepare com.android.support:animated-vector-drawable:25.3.1" />
587 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
588 <option name="name" value="prepareComAndroidSupportAnimatedVectorDrawable2531Library" />
589 </ExternalTaskPojo>
590 <ExternalTaskPojo>
591 <option name="description" value="Installs the Debug build." />
592 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
593 <option name="name" value="installDebug" />
594 </ExternalTaskPojo>
595 <ExternalTaskPojo>
596 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
597 <option name="name" value="preBuild" />
598 </ExternalTaskPojo>
599 <ExternalTaskPojo>
600 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
601 <option name="name" value="compileReleaseAidl" />
602 </ExternalTaskPojo>
603 <ExternalTaskPojo>
604 <option name="description" value="Prepare com.android.support.test:runner:0.5" />
605 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
606 <option name="name" value="prepareComAndroidSupportTestRunner05Library" />
607 </ExternalTaskPojo>
608 <ExternalTaskPojo>
609 <option name="description" value="Runs lint on the Release build." />
610 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
611 <option name="name" value="lintRelease" />
612 </ExternalTaskPojo>
613 <ExternalTaskPojo>
614 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
615 <option name="name" value="generateDebugAssets" />
616 </ExternalTaskPojo>
617 <ExternalTaskPojo>
618 <option name="description" value="Displays all buildscript dependencies declared in root project 'PersonalCenter'." />
619 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
620 <option name="name" value="buildEnvironment" />
621 </ExternalTaskPojo>
622 <ExternalTaskPojo>
623 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
624 <option name="name" value="checkDebugManifest" />
625 </ExternalTaskPojo>
626 <ExternalTaskPojo>
627 <option name="description" value="Prints out all the source sets defined in this project." />
628 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
629 <option name="name" value="sourceSets" />
630 </ExternalTaskPojo>
631 <ExternalTaskPojo>
632 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
633 <option name="name" value="transformResourcesWithMergeJavaResForDebugUnitTest" />
634 </ExternalTaskPojo>
635 <ExternalTaskPojo>
636 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
637 <option name="name" value="compileDebugRenderscript" />
638 </ExternalTaskPojo>
639 <ExternalTaskPojo>
640 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
641 <option name="name" value="packageDebugRenderscript" />
642 </ExternalTaskPojo>
643 <ExternalTaskPojo>
644 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
645 <option name="name" value="prepareDebugUnitTestDependencies" />
646 </ExternalTaskPojo>
647 <ExternalTaskPojo>
648 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
649 <option name="name" value="generateReleaseResources" />
650 </ExternalTaskPojo>
651 <ExternalTaskPojo>
652 <option name="description" value="Runs lint on just the fatal issues in the release build." />
653 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
654 <option name="name" value="lintVitalRelease" />
655 </ExternalTaskPojo>
656 <ExternalTaskPojo>
657 <option name="description" value="Uninstalls the Debug build." />
658 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
659 <option name="name" value="uninstallDebug" />
660 </ExternalTaskPojo>
661 <ExternalTaskPojo>
662 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
663 <option name="name" value="preDebugBuild" />
664 </ExternalTaskPojo>
665 <ExternalTaskPojo>
666 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
667 <option name="name" value="transformNative_libsWithSyncJniLibsForDebug" />
668 </ExternalTaskPojo>
669 <ExternalTaskPojo>
670 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
671 <option name="name" value="generateDebugBuildConfig" />
672 </ExternalTaskPojo>
673 <ExternalTaskPojo>
674 <option name="description" value="Assembles all Release builds." />
675 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
676 <option name="name" value="assembleRelease" />
677 </ExternalTaskPojo>
678 <ExternalTaskPojo>
679 <option name="description" value="Publishes all publications produced by this project." />
680 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
681 <option name="name" value="publish" />
682 </ExternalTaskPojo>
683 <ExternalTaskPojo>
684 <option name="description" value="Publishes all Maven publications produced by this project to the local Maven cache." />
685 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
686 <option name="name" value="publishToMavenLocal" />
687 </ExternalTaskPojo>
688 <ExternalTaskPojo>
689 <option name="description" value="Uploads all artifacts belonging to configuration ':circledialog:archives'" />
690 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
691 <option name="name" value="uploadArchives" />
692 </ExternalTaskPojo>
693 <ExternalTaskPojo>
694 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
695 <option name="name" value="generateReleaseResValues" />
696 </ExternalTaskPojo>
697 <ExternalTaskPojo>
698 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
699 <option name="name" value="mergeDebugProguardFiles" />
700 </ExternalTaskPojo>
701 <ExternalTaskPojo>
702 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
703 <option name="name" value="assembleReleaseUnitTest" />
704 </ExternalTaskPojo>
705 <ExternalTaskPojo>
706 <option name="description" value="Assembles a bundle containing the library in debug." />
707 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
708 <option name="name" value="bundleDebug" />
709 </ExternalTaskPojo>
710 <ExternalTaskPojo>
711 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
712 <option name="name" value="processReleaseJavaRes" />
713 </ExternalTaskPojo>
714 <ExternalTaskPojo>
715 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
716 <option name="name" value="generateReleaseAssets" />
717 </ExternalTaskPojo>
718 <ExternalTaskPojo>
719 <option name="description" value="Runs lint on the Debug build." />
720 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
721 <option name="name" value="lintDebug" />
722 </ExternalTaskPojo>
723 <ExternalTaskPojo>
724 <option name="description" value="Prepare com.squareup.leakcanary:leakcanary-android-no-op:1.3" />
725 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
726 <option name="name" value="prepareComSquareupLeakcanaryLeakcanaryAndroidNoOp13Library" />
727 </ExternalTaskPojo>
728 <ExternalTaskPojo>
729 <option name="description" value="Assembles a bundle containing the library in release." />
730 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
731 <option name="name" value="bundleRelease" />
732 </ExternalTaskPojo>
733 <ExternalTaskPojo>
734 <option name="description" value="Displays the configuration model of root project 'PersonalCenter'. [incubating]" />
735 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
736 <option name="name" value="model" />
737 </ExternalTaskPojo>
738 <ExternalTaskPojo>
739 <option name="description" value="Displays the tasks runnable from root project 'PersonalCenter' (some of the displayed tasks may belong to subprojects)." />
740 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
741 <option name="name" value="tasks" />
742 </ExternalTaskPojo>
743 <ExternalTaskPojo>
744 <option name="description" value="Generates the Maven POM file for publication 'maven'." />
745 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
746 <option name="name" value="generatePomFileForMavenPublication" />
747 </ExternalTaskPojo>
748 <ExternalTaskPojo>
749 <option name="description" value="Initializes a new Gradle build. [incubating]" />
750 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
751 <option name="name" value="init" />
752 </ExternalTaskPojo>
753 <ExternalTaskPojo>
754 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
755 <option name="name" value="packageReleaseRenderscript" />
756 </ExternalTaskPojo>
757 <ExternalTaskPojo>
758 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
759 <option name="name" value="mergeReleaseProguardFiles" />
760 </ExternalTaskPojo>
761 <ExternalTaskPojo>
762 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
763 <option name="name" value="incrementalDebugJavaCompilationSafeguard" />
764 </ExternalTaskPojo>
765 <ExternalTaskPojo>
766 <option name="description" value="Prepare com.android.support:support-media-compat:25.3.1" />
767 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
768 <option name="name" value="prepareComAndroidSupportSupportMediaCompat2531Library" />
769 </ExternalTaskPojo>
770 <ExternalTaskPojo>
771 <option name="description" value="Displays all dependencies declared in root project 'PersonalCenter'." />
772 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
773 <option name="name" value="dependencies" />
774 </ExternalTaskPojo>
775 <ExternalTaskPojo>
776 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
777 <option name="name" value="packageDebug" />
778 </ExternalTaskPojo>
779 <ExternalTaskPojo>
780 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
781 <option name="name" value="generateDebugResources" />
782 </ExternalTaskPojo>
783 <ExternalTaskPojo>
784 <option name="description" value="Assembles and tests this project and all projects it depends on." />
785 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
786 <option name="name" value="buildNeeded" />
787 </ExternalTaskPojo>
788 <ExternalTaskPojo>
789 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
790 <option name="name" value="processDebugUnitTestJavaRes" />
791 </ExternalTaskPojo>
792 <ExternalTaskPojo>
793 <option name="description" value="Run unit tests for the release build." />
794 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
795 <option name="name" value="testReleaseUnitTest" />
796 </ExternalTaskPojo>
797 <ExternalTaskPojo>
798 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
799 <option name="name" value="mergeDebugShaders" />
800 </ExternalTaskPojo>
801 <ExternalTaskPojo>
802 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
803 <option name="name" value="transformNative_libsWithMergeJniLibsForDebugAndroidTest" />
804 </ExternalTaskPojo>
805 <ExternalTaskPojo>
806 <option name="description" value="Prepare com.android.support.test.espresso:espresso-idling-resource:2.2.2" />
807 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
808 <option name="name" value="prepareComAndroidSupportTestEspressoEspressoIdlingResource222Library" />
809 </ExternalTaskPojo>
810 <ExternalTaskPojo>
811 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
812 <option name="name" value="compileReleaseRenderscript" />
813 </ExternalTaskPojo>
814 <ExternalTaskPojo>
815 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
816 <option name="name" value="transformNative_libsWithSyncJniLibsForRelease" />
817 </ExternalTaskPojo>
818 <ExternalTaskPojo>
819 <option name="description" value="Assembles all Debug builds." />
820 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
821 <option name="name" value="assembleDebug" />
822 </ExternalTaskPojo>
823 <ExternalTaskPojo>
824 <option name="description" value="Prepare com.android.support.test:rules:0.5" />
825 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
826 <option name="name" value="prepareComAndroidSupportTestRules05Library" />
827 </ExternalTaskPojo>
828 <ExternalTaskPojo>
829 <option name="description" value="Prepare com.android.support:support-core-utils:25.3.1" />
830 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
831 <option name="name" value="prepareComAndroidSupportSupportCoreUtils2531Library" />
832 </ExternalTaskPojo>
833 <ExternalTaskPojo>
834 <option name="description" value="Prepare com.android.support:support-v4:25.3.1" />
835 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
836 <option name="name" value="prepareComAndroidSupportSupportV42531Library" />
837 </ExternalTaskPojo>
838 <ExternalTaskPojo>
839 <option name="description" value="Publishes Maven publication 'maven' to the local Maven repository." />
840 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
841 <option name="name" value="publishMavenPublicationToMavenLocal" />
842 </ExternalTaskPojo>
843 <ExternalTaskPojo>
844 <option name="description" value="Extracts Android annotations for the debug variant into the archive file" />
845 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
846 <option name="name" value="extractDebugAnnotations" />
847 </ExternalTaskPojo>
848 <ExternalTaskPojo>
849 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
850 <option name="name" value="generateDebugAndroidTestSources" />
851 </ExternalTaskPojo>
852 <ExternalTaskPojo>
853 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
854 <option name="name" value="incrementalDebugAndroidTestJavaCompilationSafeguard" />
855 </ExternalTaskPojo>
856 <ExternalTaskPojo>
857 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
858 <option name="name" value="compileDebugAndroidTestSources" />
859 </ExternalTaskPojo>
860 <ExternalTaskPojo>
861 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
862 <option name="name" value="prepareReleaseDependencies" />
863 </ExternalTaskPojo>
864 <ExternalTaskPojo>
865 <option name="description" value="Displays the insight into a specific dependency in root project 'PersonalCenter'." />
866 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
867 <option name="name" value="dependencyInsight" />
868 </ExternalTaskPojo>
869 <ExternalTaskPojo>
870 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
871 <option name="name" value="generateReleaseSources" />
872 </ExternalTaskPojo>
873 <ExternalTaskPojo>
874 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
875 <option name="name" value="preReleaseBuild" />
876 </ExternalTaskPojo>
877 <ExternalTaskPojo>
878 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
879 <option name="name" value="incrementalDebugUnitTestJavaCompilationSafeguard" />
880 </ExternalTaskPojo>
881 <ExternalTaskPojo>
882 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
883 <option name="name" value="incrementalReleaseJavaCompilationSafeguard" />
884 </ExternalTaskPojo>
885 <ExternalTaskPojo>
886 <option name="description" value="Displays a help message." />
887 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
888 <option name="name" value="help" />
889 </ExternalTaskPojo>
890 <ExternalTaskPojo>
891 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
892 <option name="name" value="mergeDebugAssets" />
893 </ExternalTaskPojo>
894 <ExternalTaskPojo>
895 <option name="description" value="Prepare com.android.support:animated-vector-drawable:23.4.0" />
896 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
897 <option name="name" value="prepareComAndroidSupportAnimatedVectorDrawable2340Library" />
898 </ExternalTaskPojo>
899 <ExternalTaskPojo>
900 <option name="description" value="Prepare com.android.support:recyclerview-v7:25.3.1" />
901 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
902 <option name="name" value="prepareComAndroidSupportRecyclerviewV72531Library" />
903 </ExternalTaskPojo>
904 <ExternalTaskPojo>
905 <option name="description" value="Prepare com.facebook.fresco:imagepipeline-base:1.1.0" />
906 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
907 <option name="name" value="prepareComFacebookFrescoImagepipelineBase110Library" />
908 </ExternalTaskPojo>
909 <ExternalTaskPojo>
910 <option name="description" value="Uninstall all applications." />
911 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
912 <option name="name" value="uninstallAll" />
913 </ExternalTaskPojo>
914 <ExternalTaskPojo>
915 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
916 <option name="name" value="transformNative_libsWithMergeJniLibsForDebug" />
917 </ExternalTaskPojo>
918 <ExternalTaskPojo>
919 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
920 <option name="name" value="packageRelease" />
921 </ExternalTaskPojo>
922 <ExternalTaskPojo>
923 <option name="description" value="Prepare PersonalCenter:circledialog:unspecified" />
924 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
925 <option name="name" value="preparePersonalCenterCircledialogUnspecifiedLibrary" />
926 </ExternalTaskPojo>
927 <ExternalTaskPojo>
928 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
929 <option name="name" value="compileDebugAidl" />
930 </ExternalTaskPojo>
931 <ExternalTaskPojo>
932 <option name="description" value="Publishes artifacts to bintray.com." />
933 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
934 <option name="name" value="bintrayUpload" />
935 </ExternalTaskPojo>
936 <ExternalTaskPojo>
937 <option name="description" value="Generates Gradle wrapper files. [incubating]" />
938 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
939 <option name="name" value="wrapper" />
940 </ExternalTaskPojo>
941 <ExternalTaskPojo>
942 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
943 <option name="name" value="generateDebugAndroidTestResValues" />
944 </ExternalTaskPojo>
945 <ExternalTaskPojo>
946 <option name="description" value="Displays the Android dependencies of the project." />
947 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
948 <option name="name" value="androidDependencies" />
949 </ExternalTaskPojo>
950 <ExternalTaskPojo>
951 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
952 <option name="name" value="compileDebugUnitTestSources" />
953 </ExternalTaskPojo>
954 <ExternalTaskPojo>
955 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
956 <option name="name" value="generateDebugSources" />
957 </ExternalTaskPojo>
958 <ExternalTaskPojo>
959 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
960 <option name="name" value="mavenAndroidSourcesJar" />
961 </ExternalTaskPojo>
962 <ExternalTaskPojo>
963 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
964 <option name="name" value="processDebugJavaRes" />
965 </ExternalTaskPojo>
966 <ExternalTaskPojo>
967 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
968 <option name="name" value="compileReleaseJavaWithJavac" />
969 </ExternalTaskPojo>
970 <ExternalTaskPojo>
971 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
972 <option name="name" value="jarReleaseClasses" />
973 </ExternalTaskPojo>
974 <ExternalTaskPojo>
975 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
976 <option name="name" value="compileDebugNdk" />
977 </ExternalTaskPojo>
978 <ExternalTaskPojo>
979 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
980 <option name="name" value="transformNative_libsWithMergeJniLibsForRelease" />
981 </ExternalTaskPojo>
982 <ExternalTaskPojo>
983 <option name="description" value="Prepare com.android.support:support-compat:25.3.1" />
984 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
985 <option name="name" value="prepareComAndroidSupportSupportCompat2531Library" />
986 </ExternalTaskPojo>
987 <ExternalTaskPojo>
988 <option name="description" value="Installs and runs instrumentation tests for all flavors on connected devices." />
989 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
990 <option name="name" value="connectedAndroidTest" />
991 </ExternalTaskPojo>
992 <ExternalTaskPojo>
993 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
994 <option name="name" value="transformClassesWithDexForRelease" />
995 </ExternalTaskPojo>
996 <ExternalTaskPojo>
997 <option name="description" value="Prepare com.facebook.fresco:drawee:1.1.0" />
998 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
999 <option name="name" value="prepareComFacebookFrescoDrawee110Library" />
1000 </ExternalTaskPojo>
1001 <ExternalTaskPojo>
1002 <option name="description" value="Prepare com.android.support:support-v4:23.4.0" />
1003 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1004 <option name="name" value="prepareComAndroidSupportSupportV42340Library" />
1005 </ExternalTaskPojo>
1006 <ExternalTaskPojo>
1007 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1008 <option name="name" value="transformResourcesWithMergeJavaResForRelease" />
1009 </ExternalTaskPojo>
1010 <ExternalTaskPojo>
1011 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1012 <option name="name" value="compileReleaseSources" />
1013 </ExternalTaskPojo>
1014 <ExternalTaskPojo>
1015 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1016 <option name="name" value="compileReleaseUnitTestJavaWithJavac" />
1017 </ExternalTaskPojo>
1018 <ExternalTaskPojo>
1019 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1020 <option name="name" value="compileDebugShaders" />
1021 </ExternalTaskPojo>
1022 <ExternalTaskPojo>
1023 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1024 <option name="name" value="transformResourcesWithMergeJavaResForDebug" />
1025 </ExternalTaskPojo>
1026 <ExternalTaskPojo>
1027 <option name="description" value="Prepare PersonalCenter:pickerview:unspecified" />
1028 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1029 <option name="name" value="preparePersonalCenterPickerviewUnspecifiedLibrary" />
1030 </ExternalTaskPojo>
1031 <ExternalTaskPojo>
1032 <option name="description" value="Assembles and tests this project and all projects that depend on it." />
1033 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1034 <option name="name" value="buildDependents" />
1035 </ExternalTaskPojo>
1036 <ExternalTaskPojo>
1037 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1038 <option name="name" value="mergeDebugJniLibFolders" />
1039 </ExternalTaskPojo>
1040 <ExternalTaskPojo>
1041 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1042 <option name="name" value="mergeReleaseAssets" />
1043 </ExternalTaskPojo>
1044 <ExternalTaskPojo>
1045 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1046 <option name="name" value="generateReleaseBuildConfig" />
1047 </ExternalTaskPojo>
1048 <ExternalTaskPojo>
1049 <option name="description" value="Prepare com.android.support.test:exposed-instrumentation-api-publish:0.5" />
1050 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1051 <option name="name" value="prepareComAndroidSupportTestExposedInstrumentationApiPublish05Library" />
1052 </ExternalTaskPojo>
1053 <ExternalTaskPojo>
1054 <option name="description" value="Displays the signing info for each variant." />
1055 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1056 <option name="name" value="signingReport" />
1057 </ExternalTaskPojo>
1058 <ExternalTaskPojo>
1059 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1060 <option name="name" value="compileDebugAndroidTestAidl" />
1061 </ExternalTaskPojo>
1062 <ExternalTaskPojo>
1063 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1064 <option name="name" value="mergeDebugAndroidTestShaders" />
1065 </ExternalTaskPojo>
1066 <ExternalTaskPojo>
1067 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1068 <option name="name" value="clean" />
1069 </ExternalTaskPojo>
1070 <ExternalTaskPojo>
1071 <option name="description" value="Assembles and tests this project." />
1072 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1073 <option name="name" value="build" />
1074 </ExternalTaskPojo>
1075 <ExternalTaskPojo>
1076 <option name="description" value="Prepare com.android.support.test.espresso:espresso-core:2.2.2" />
1077 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1078 <option name="name" value="prepareComAndroidSupportTestEspressoEspressoCore222Library" />
1079 </ExternalTaskPojo>
1080 <ExternalTaskPojo>
1081 <option name="description" value="Prepare com.squareup.leakcanary:leakcanary-android:1.3" />
1082 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1083 <option name="name" value="prepareComSquareupLeakcanaryLeakcanaryAndroid13Library" />
1084 </ExternalTaskPojo>
1085 <ExternalTaskPojo>
1086 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1087 <option name="name" value="compileDebugAndroidTestRenderscript" />
1088 </ExternalTaskPojo>
1089 <ExternalTaskPojo>
1090 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1091 <option name="name" value="generateDebugAndroidTestResources" />
1092 </ExternalTaskPojo>
1093 <ExternalTaskPojo>
1094 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1095 <option name="name" value="processDebugManifest" />
1096 </ExternalTaskPojo>
1097 <ExternalTaskPojo>
1098 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1099 <option name="name" value="packageDebugAndroidTest" />
1100 </ExternalTaskPojo>
1101 <ExternalTaskPojo>
1102 <option name="description" value="Prepare com.facebook.fresco:fbcore:1.1.0" />
1103 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1104 <option name="name" value="prepareComFacebookFrescoFbcore110Library" />
1105 </ExternalTaskPojo>
1106 <ExternalTaskPojo>
1107 <option name="description" value="Displays the properties of root project 'PersonalCenter'." />
1108 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
1109 <option name="name" value="properties" />
1110 </ExternalTaskPojo>
1111 </list>
1112 </value>
1113 </entry>
1114 <entry key="$PROJECT_DIR$/app">
1115 <value>
1116 <list>
1117 <ExternalTaskPojo>
1118 <option name="description" value="Displays the sub-projects of project ':app'." />
1119 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1120 <option name="name" value="projects" />
1121 </ExternalTaskPojo>
1122 <ExternalTaskPojo>
1123 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1124 <option name="name" value="validateSigningDebugAndroidTest" />
1125 </ExternalTaskPojo>
1126 <ExternalTaskPojo>
1127 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1128 <option name="name" value="assembleReleaseUnitTest" />
1129 </ExternalTaskPojo>
1130 <ExternalTaskPojo>
1131 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1132 <option name="name" value="prepareDebugDependencies" />
1133 </ExternalTaskPojo>
1134 <ExternalTaskPojo>
1135 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1136 <option name="name" value="processReleaseJavaRes" />
1137 </ExternalTaskPojo>
1138 <ExternalTaskPojo>
1139 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1140 <option name="name" value="generateReleaseAssets" />
1141 </ExternalTaskPojo>
1142 <ExternalTaskPojo>
1143 <option name="description" value="Runs lint on the Debug build." />
1144 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1145 <option name="name" value="lintDebug" />
1146 </ExternalTaskPojo>
1147 <ExternalTaskPojo>
1148 <option name="description" value="Prepare com.squareup.leakcanary:leakcanary-android-no-op:1.3" />
1149 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1150 <option name="name" value="prepareComSquareupLeakcanaryLeakcanaryAndroidNoOp13Library" />
1151 </ExternalTaskPojo>
1152 <ExternalTaskPojo>
1153 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1154 <option name="name" value="assembleDebugUnitTest" />
1155 </ExternalTaskPojo>
1156 <ExternalTaskPojo>
1157 <option name="description" value="Creates a version of android.jar that's suitable for unit tests." />
1158 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1159 <option name="name" value="mockableAndroidJar" />
1160 </ExternalTaskPojo>
1161 <ExternalTaskPojo>
1162 <option name="description" value="Displays the configuration model of project ':app'. [incubating]" />
1163 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1164 <option name="name" value="model" />
1165 </ExternalTaskPojo>
1166 <ExternalTaskPojo>
1167 <option name="description" value="Prepare com.android.support:appcompat-v7:25.3.1" />
1168 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1169 <option name="name" value="prepareComAndroidSupportAppcompatV72531Library" />
1170 </ExternalTaskPojo>
1171 <ExternalTaskPojo>
1172 <option name="description" value="Displays the tasks runnable from project ':app'." />
1173 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1174 <option name="name" value="tasks" />
1175 </ExternalTaskPojo>
1176 <ExternalTaskPojo>
1177 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1178 <option name="name" value="compileDebugSources" />
1179 </ExternalTaskPojo>
1180 <ExternalTaskPojo>
1181 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1182 <option name="name" value="incrementalDebugJavaCompilationSafeguard" />
1183 </ExternalTaskPojo>
1184 <ExternalTaskPojo>
1185 <option name="description" value="Prepare com.android.support:support-media-compat:25.3.1" />
1186 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1187 <option name="name" value="prepareComAndroidSupportSupportMediaCompat2531Library" />
1188 </ExternalTaskPojo>
1189 <ExternalTaskPojo>
1190 <option name="description" value="Prepare com.android.support:support-vector-drawable:25.3.1" />
1191 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1192 <option name="name" value="prepareComAndroidSupportSupportVectorDrawable2531Library" />
1193 </ExternalTaskPojo>
1194 <ExternalTaskPojo>
1195 <option name="description" value="Runs all device checks using Device Providers and Test Servers." />
1196 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1197 <option name="name" value="deviceCheck" />
1198 </ExternalTaskPojo>
1199 <ExternalTaskPojo>
1200 <option name="description" value="Displays all dependencies declared in project ':app'." />
1201 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1202 <option name="name" value="dependencies" />
1203 </ExternalTaskPojo>
1204 <ExternalTaskPojo>
1205 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1206 <option name="name" value="processDebugResources" />
1207 </ExternalTaskPojo>
1208 <ExternalTaskPojo>
1209 <option name="description" value="Runs lint on all variants." />
1210 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1211 <option name="name" value="lint" />
1212 </ExternalTaskPojo>
1213 <ExternalTaskPojo>
1214 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1215 <option name="name" value="packageDebug" />
1216 </ExternalTaskPojo>
1217 <ExternalTaskPojo>
1218 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1219 <option name="name" value="compileReleaseNdk" />
1220 </ExternalTaskPojo>
1221 <ExternalTaskPojo>
1222 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1223 <option name="name" value="generateDebugResources" />
1224 </ExternalTaskPojo>
1225 <ExternalTaskPojo>
1226 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1227 <option name="name" value="compileDebugJavaWithJavac" />
1228 </ExternalTaskPojo>
1229 <ExternalTaskPojo>
1230 <option name="description" value="Assembles and tests this project and all projects it depends on." />
1231 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1232 <option name="name" value="buildNeeded" />
1233 </ExternalTaskPojo>
1234 <ExternalTaskPojo>
1235 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1236 <option name="name" value="generateDebugAndroidTestBuildConfig" />
1237 </ExternalTaskPojo>
1238 <ExternalTaskPojo>
1239 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1240 <option name="name" value="processDebugUnitTestJavaRes" />
1241 </ExternalTaskPojo>
1242 <ExternalTaskPojo>
1243 <option name="description" value="Run unit tests for the release build." />
1244 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1245 <option name="name" value="testReleaseUnitTest" />
1246 </ExternalTaskPojo>
1247 <ExternalTaskPojo>
1248 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1249 <option name="name" value="compileDebugAndroidTestShaders" />
1250 </ExternalTaskPojo>
1251 <ExternalTaskPojo>
1252 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1253 <option name="name" value="mergeDebugShaders" />
1254 </ExternalTaskPojo>
1255 <ExternalTaskPojo>
1256 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1257 <option name="name" value="transformNative_libsWithMergeJniLibsForDebugAndroidTest" />
1258 </ExternalTaskPojo>
1259 <ExternalTaskPojo>
1260 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1261 <option name="name" value="compileDebugAndroidTestJavaWithJavac" />
1262 </ExternalTaskPojo>
1263 <ExternalTaskPojo>
1264 <option name="description" value="Displays the components produced by project ':app'. [incubating]" />
1265 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1266 <option name="name" value="components" />
1267 </ExternalTaskPojo>
1268 <ExternalTaskPojo>
1269 <option name="description" value="Prepare com.android.support.test.espresso:espresso-idling-resource:2.2.2" />
1270 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1271 <option name="name" value="prepareComAndroidSupportTestEspressoEspressoIdlingResource222Library" />
1272 </ExternalTaskPojo>
1273 <ExternalTaskPojo>
1274 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1275 <option name="name" value="compileReleaseRenderscript" />
1276 </ExternalTaskPojo>
1277 <ExternalTaskPojo>
1278 <option name="description" value="Assembles all Debug builds." />
1279 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1280 <option name="name" value="assembleDebug" />
1281 </ExternalTaskPojo>
1282 <ExternalTaskPojo>
1283 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1284 <option name="name" value="processDebugAndroidTestManifest" />
1285 </ExternalTaskPojo>
1286 <ExternalTaskPojo>
1287 <option name="description" value="Prepare com.android.support.test:rules:0.5" />
1288 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1289 <option name="name" value="prepareComAndroidSupportTestRules05Library" />
1290 </ExternalTaskPojo>
1291 <ExternalTaskPojo>
1292 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1293 <option name="name" value="compileDebugUnitTestJavaWithJavac" />
1294 </ExternalTaskPojo>
1295 <ExternalTaskPojo>
1296 <option name="description" value="Prepare com.android.support:support-core-utils:25.3.1" />
1297 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1298 <option name="name" value="prepareComAndroidSupportSupportCoreUtils2531Library" />
1299 </ExternalTaskPojo>
1300 <ExternalTaskPojo>
1301 <option name="description" value="Prepare com.android.support:support-v4:25.3.1" />
1302 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1303 <option name="name" value="prepareComAndroidSupportSupportV42531Library" />
1304 </ExternalTaskPojo>
1305 <ExternalTaskPojo>
1306 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1307 <option name="name" value="transformResourcesWithMergeJavaResForReleaseUnitTest" />
1308 </ExternalTaskPojo>
1309 <ExternalTaskPojo>
1310 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1311 <option name="name" value="transformClassesWithDexForDebug" />
1312 </ExternalTaskPojo>
1313 <ExternalTaskPojo>
1314 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1315 <option name="name" value="preDebugAndroidTestBuild" />
1316 </ExternalTaskPojo>
1317 <ExternalTaskPojo>
1318 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1319 <option name="name" value="processDebugAndroidTestJavaRes" />
1320 </ExternalTaskPojo>
1321 <ExternalTaskPojo>
1322 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1323 <option name="name" value="processReleaseUnitTestJavaRes" />
1324 </ExternalTaskPojo>
1325 <ExternalTaskPojo>
1326 <option name="description" value="Prepare com.facebook.fresco:imagepipeline:1.1.0" />
1327 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1328 <option name="name" value="prepareComFacebookFrescoImagepipeline110Library" />
1329 </ExternalTaskPojo>
1330 <ExternalTaskPojo>
1331 <option name="description" value="Uninstalls the Release build." />
1332 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1333 <option name="name" value="uninstallRelease" />
1334 </ExternalTaskPojo>
1335 <ExternalTaskPojo>
1336 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1337 <option name="name" value="compileReleaseShaders" />
1338 </ExternalTaskPojo>
1339 <ExternalTaskPojo>
1340 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1341 <option name="name" value="mergeReleaseResources" />
1342 </ExternalTaskPojo>
1343 <ExternalTaskPojo>
1344 <option name="description" value="Prepare com.zaaach:toprightmenu:1.0" />
1345 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1346 <option name="name" value="prepareComZaaachToprightmenu10Library" />
1347 </ExternalTaskPojo>
1348 <ExternalTaskPojo>
1349 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1350 <option name="name" value="generateDebugAndroidTestSources" />
1351 </ExternalTaskPojo>
1352 <ExternalTaskPojo>
1353 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1354 <option name="name" value="prepareDebugAndroidTestDependencies" />
1355 </ExternalTaskPojo>
1356 <ExternalTaskPojo>
1357 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1358 <option name="name" value="incrementalDebugAndroidTestJavaCompilationSafeguard" />
1359 </ExternalTaskPojo>
1360 <ExternalTaskPojo>
1361 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1362 <option name="name" value="checkReleaseManifest" />
1363 </ExternalTaskPojo>
1364 <ExternalTaskPojo>
1365 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1366 <option name="name" value="compileDebugAndroidTestSources" />
1367 </ExternalTaskPojo>
1368 <ExternalTaskPojo>
1369 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1370 <option name="name" value="mergeReleaseJniLibFolders" />
1371 </ExternalTaskPojo>
1372 <ExternalTaskPojo>
1373 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1374 <option name="name" value="prepareReleaseDependencies" />
1375 </ExternalTaskPojo>
1376 <ExternalTaskPojo>
1377 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1378 <option name="name" value="processReleaseResources" />
1379 </ExternalTaskPojo>
1380 <ExternalTaskPojo>
1381 <option name="description" value="Installs and runs instrumentation tests using all Device Providers." />
1382 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1383 <option name="name" value="deviceAndroidTest" />
1384 </ExternalTaskPojo>
1385 <ExternalTaskPojo>
1386 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1387 <option name="name" value="mergeDebugAndroidTestAssets" />
1388 </ExternalTaskPojo>
1389 <ExternalTaskPojo>
1390 <option name="description" value="Prepare com.tencent.bugly:crashreport:2.6.5" />
1391 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1392 <option name="name" value="prepareComTencentBuglyCrashreport265Library" />
1393 </ExternalTaskPojo>
1394 <ExternalTaskPojo>
1395 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1396 <option name="name" value="processReleaseManifest" />
1397 </ExternalTaskPojo>
1398 <ExternalTaskPojo>
1399 <option name="description" value="Uninstalls the android (on device) tests for the Debug build." />
1400 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1401 <option name="name" value="uninstallDebugAndroidTest" />
1402 </ExternalTaskPojo>
1403 <ExternalTaskPojo>
1404 <option name="description" value="Displays the insight into a specific dependency in project ':app'." />
1405 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1406 <option name="name" value="dependencyInsight" />
1407 </ExternalTaskPojo>
1408 <ExternalTaskPojo>
1409 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1410 <option name="name" value="generateReleaseSources" />
1411 </ExternalTaskPojo>
1412 <ExternalTaskPojo>
1413 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1414 <option name="name" value="incrementalReleaseUnitTestJavaCompilationSafeguard" />
1415 </ExternalTaskPojo>
1416 <ExternalTaskPojo>
1417 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1418 <option name="name" value="preReleaseBuild" />
1419 </ExternalTaskPojo>
1420 <ExternalTaskPojo>
1421 <option name="description" value="Assembles all variants of all applications and secondary packages." />
1422 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1423 <option name="name" value="assemble" />
1424 </ExternalTaskPojo>
1425 <ExternalTaskPojo>
1426 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1427 <option name="name" value="incrementalDebugUnitTestJavaCompilationSafeguard" />
1428 </ExternalTaskPojo>
1429 <ExternalTaskPojo>
1430 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1431 <option name="name" value="incrementalReleaseJavaCompilationSafeguard" />
1432 </ExternalTaskPojo>
1433 <ExternalTaskPojo>
1434 <option name="description" value="Displays a help message." />
1435 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1436 <option name="name" value="help" />
1437 </ExternalTaskPojo>
1438 <ExternalTaskPojo>
1439 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1440 <option name="name" value="compileReleaseUnitTestSources" />
1441 </ExternalTaskPojo>
1442 <ExternalTaskPojo>
1443 <option name="description" value="Installs the android (on device) tests for the Debug build." />
1444 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1445 <option name="name" value="installDebugAndroidTest" />
1446 </ExternalTaskPojo>
1447 <ExternalTaskPojo>
1448 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1449 <option name="name" value="mergeDebugAssets" />
1450 </ExternalTaskPojo>
1451 <ExternalTaskPojo>
1452 <option name="description" value="Prepare com.android.support:recyclerview-v7:25.3.1" />
1453 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1454 <option name="name" value="prepareComAndroidSupportRecyclerviewV72531Library" />
1455 </ExternalTaskPojo>
1456 <ExternalTaskPojo>
1457 <option name="description" value="Prepare com.android.support:support-core-ui:25.3.1" />
1458 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1459 <option name="name" value="prepareComAndroidSupportSupportCoreUi2531Library" />
1460 </ExternalTaskPojo>
1461 <ExternalTaskPojo>
1462 <option name="description" value="Runs all device checks on currently connected devices." />
1463 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1464 <option name="name" value="connectedCheck" />
1465 </ExternalTaskPojo>
1466 <ExternalTaskPojo>
1467 <option name="description" value="Installs and runs the tests for debug on connected devices." />
1468 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1469 <option name="name" value="connectedDebugAndroidTest" />
1470 </ExternalTaskPojo>
1471 <ExternalTaskPojo>
1472 <option name="description" value="Prepare com.facebook.fresco:imagepipeline-base:1.1.0" />
1473 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1474 <option name="name" value="prepareComFacebookFrescoImagepipelineBase110Library" />
1475 </ExternalTaskPojo>
1476 <ExternalTaskPojo>
1477 <option name="description" value="Uninstall all applications." />
1478 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1479 <option name="name" value="uninstallAll" />
1480 </ExternalTaskPojo>
1481 <ExternalTaskPojo>
1482 <option name="description" value="Assembles all the Test applications." />
1483 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1484 <option name="name" value="assembleAndroidTest" />
1485 </ExternalTaskPojo>
1486 <ExternalTaskPojo>
1487 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1488 <option name="name" value="processDebugAndroidTestResources" />
1489 </ExternalTaskPojo>
1490 <ExternalTaskPojo>
1491 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1492 <option name="name" value="transformNative_libsWithMergeJniLibsForDebug" />
1493 </ExternalTaskPojo>
1494 <ExternalTaskPojo>
1495 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1496 <option name="name" value="packageRelease" />
1497 </ExternalTaskPojo>
1498 <ExternalTaskPojo>
1499 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1500 <option name="name" value="validateSigningDebug" />
1501 </ExternalTaskPojo>
1502 <ExternalTaskPojo>
1503 <option name="description" value="Prepare PersonalCenter:circledialog:unspecified" />
1504 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1505 <option name="name" value="preparePersonalCenterCircledialogUnspecifiedLibrary" />
1506 </ExternalTaskPojo>
1507 <ExternalTaskPojo>
1508 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1509 <option name="name" value="compileDebugAidl" />
1510 </ExternalTaskPojo>
1511 <ExternalTaskPojo>
1512 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1513 <option name="name" value="mergeDebugResources" />
1514 </ExternalTaskPojo>
1515 <ExternalTaskPojo>
1516 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1517 <option name="name" value="preDebugUnitTestBuild" />
1518 </ExternalTaskPojo>
1519 <ExternalTaskPojo>
1520 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1521 <option name="name" value="compileLint" />
1522 </ExternalTaskPojo>
1523 <ExternalTaskPojo>
1524 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1525 <option name="name" value="generateDebugAndroidTestResValues" />
1526 </ExternalTaskPojo>
1527 <ExternalTaskPojo>
1528 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1529 <option name="name" value="mergeReleaseShaders" />
1530 </ExternalTaskPojo>
1531 <ExternalTaskPojo>
1532 <option name="description" value="Displays the Android dependencies of the project." />
1533 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1534 <option name="name" value="androidDependencies" />
1535 </ExternalTaskPojo>
1536 <ExternalTaskPojo>
1537 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1538 <option name="name" value="compileDebugAndroidTestNdk" />
1539 </ExternalTaskPojo>
1540 <ExternalTaskPojo>
1541 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1542 <option name="name" value="compileDebugUnitTestSources" />
1543 </ExternalTaskPojo>
1544 <ExternalTaskPojo>
1545 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1546 <option name="name" value="generateDebugSources" />
1547 </ExternalTaskPojo>
1548 <ExternalTaskPojo>
1549 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1550 <option name="name" value="mergeDebugAndroidTestJniLibFolders" />
1551 </ExternalTaskPojo>
1552 <ExternalTaskPojo>
1553 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1554 <option name="name" value="extractProguardFiles" />
1555 </ExternalTaskPojo>
1556 <ExternalTaskPojo>
1557 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1558 <option name="name" value="transformClassesWithDexForDebugAndroidTest" />
1559 </ExternalTaskPojo>
1560 <ExternalTaskPojo>
1561 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1562 <option name="name" value="assembleDebugAndroidTest" />
1563 </ExternalTaskPojo>
1564 <ExternalTaskPojo>
1565 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1566 <option name="name" value="processDebugJavaRes" />
1567 </ExternalTaskPojo>
1568 <ExternalTaskPojo>
1569 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1570 <option name="name" value="generateDebugAndroidTestAssets" />
1571 </ExternalTaskPojo>
1572 <ExternalTaskPojo>
1573 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1574 <option name="name" value="compileReleaseJavaWithJavac" />
1575 </ExternalTaskPojo>
1576 <ExternalTaskPojo>
1577 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1578 <option name="name" value="jarReleaseClasses" />
1579 </ExternalTaskPojo>
1580 <ExternalTaskPojo>
1581 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1582 <option name="name" value="transformResourcesWithMergeJavaResForDebugAndroidTest" />
1583 </ExternalTaskPojo>
1584 <ExternalTaskPojo>
1585 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1586 <option name="name" value="prepareReleaseUnitTestDependencies" />
1587 </ExternalTaskPojo>
1588 <ExternalTaskPojo>
1589 <option name="description" value="Run unit tests for all variants." />
1590 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1591 <option name="name" value="test" />
1592 </ExternalTaskPojo>
1593 <ExternalTaskPojo>
1594 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1595 <option name="name" value="compileDebugNdk" />
1596 </ExternalTaskPojo>
1597 <ExternalTaskPojo>
1598 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1599 <option name="name" value="transformNative_libsWithMergeJniLibsForRelease" />
1600 </ExternalTaskPojo>
1601 <ExternalTaskPojo>
1602 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1603 <option name="name" value="mergeDebugAndroidTestResources" />
1604 </ExternalTaskPojo>
1605 <ExternalTaskPojo>
1606 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1607 <option name="name" value="preReleaseUnitTestBuild" />
1608 </ExternalTaskPojo>
1609 <ExternalTaskPojo>
1610 <option name="description" value="Prepare com.android.support:support-fragment:25.3.1" />
1611 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1612 <option name="name" value="prepareComAndroidSupportSupportFragment2531Library" />
1613 </ExternalTaskPojo>
1614 <ExternalTaskPojo>
1615 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1616 <option name="name" value="generateDebugResValues" />
1617 </ExternalTaskPojo>
1618 <ExternalTaskPojo>
1619 <option name="description" value="Runs all checks." />
1620 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1621 <option name="name" value="check" />
1622 </ExternalTaskPojo>
1623 <ExternalTaskPojo>
1624 <option name="description" value="Prepare PersonalCenter:mypresonallibrary:unspecified" />
1625 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1626 <option name="name" value="preparePersonalCenterMypresonallibraryUnspecifiedLibrary" />
1627 </ExternalTaskPojo>
1628 <ExternalTaskPojo>
1629 <option name="description" value="Prepare com.facebook.fresco:fresco:1.1.0" />
1630 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1631 <option name="name" value="prepareComFacebookFrescoFresco110Library" />
1632 </ExternalTaskPojo>
1633 <ExternalTaskPojo>
1634 <option name="description" value="Prepare com.android.support:support-compat:25.3.1" />
1635 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1636 <option name="name" value="prepareComAndroidSupportSupportCompat2531Library" />
1637 </ExternalTaskPojo>
1638 <ExternalTaskPojo>
1639 <option name="description" value="Run unit tests for the debug build." />
1640 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1641 <option name="name" value="testDebugUnitTest" />
1642 </ExternalTaskPojo>
1643 <ExternalTaskPojo>
1644 <option name="description" value="Installs and runs instrumentation tests for all flavors on connected devices." />
1645 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1646 <option name="name" value="connectedAndroidTest" />
1647 </ExternalTaskPojo>
1648 <ExternalTaskPojo>
1649 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1650 <option name="name" value="jarDebugClasses" />
1651 </ExternalTaskPojo>
1652 <ExternalTaskPojo>
1653 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1654 <option name="name" value="transformClassesWithDexForRelease" />
1655 </ExternalTaskPojo>
1656 <ExternalTaskPojo>
1657 <option name="description" value="Prepare com.android.support:animated-vector-drawable:25.3.1" />
1658 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1659 <option name="name" value="prepareComAndroidSupportAnimatedVectorDrawable2531Library" />
1660 </ExternalTaskPojo>
1661 <ExternalTaskPojo>
1662 <option name="description" value="Prepare com.facebook.fresco:drawee:1.1.0" />
1663 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1664 <option name="name" value="prepareComFacebookFrescoDrawee110Library" />
1665 </ExternalTaskPojo>
1666 <ExternalTaskPojo>
1667 <option name="description" value="Installs the Debug build." />
1668 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1669 <option name="name" value="installDebug" />
1670 </ExternalTaskPojo>
1671 <ExternalTaskPojo>
1672 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1673 <option name="name" value="preBuild" />
1674 </ExternalTaskPojo>
1675 <ExternalTaskPojo>
1676 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1677 <option name="name" value="transformResourcesWithMergeJavaResForRelease" />
1678 </ExternalTaskPojo>
1679 <ExternalTaskPojo>
1680 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1681 <option name="name" value="compileReleaseSources" />
1682 </ExternalTaskPojo>
1683 <ExternalTaskPojo>
1684 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1685 <option name="name" value="compileReleaseUnitTestJavaWithJavac" />
1686 </ExternalTaskPojo>
1687 <ExternalTaskPojo>
1688 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1689 <option name="name" value="compileDebugShaders" />
1690 </ExternalTaskPojo>
1691 <ExternalTaskPojo>
1692 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1693 <option name="name" value="transformResourcesWithMergeJavaResForDebug" />
1694 </ExternalTaskPojo>
1695 <ExternalTaskPojo>
1696 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1697 <option name="name" value="compileReleaseAidl" />
1698 </ExternalTaskPojo>
1699 <ExternalTaskPojo>
1700 <option name="description" value="Prepare PersonalCenter:pickerview:unspecified" />
1701 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1702 <option name="name" value="preparePersonalCenterPickerviewUnspecifiedLibrary" />
1703 </ExternalTaskPojo>
1704 <ExternalTaskPojo>
1705 <option name="description" value="Prepare com.android.support.test:runner:0.5" />
1706 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1707 <option name="name" value="prepareComAndroidSupportTestRunner05Library" />
1708 </ExternalTaskPojo>
1709 <ExternalTaskPojo>
1710 <option name="description" value="Runs lint on the Release build." />
1711 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1712 <option name="name" value="lintRelease" />
1713 </ExternalTaskPojo>
1714 <ExternalTaskPojo>
1715 <option name="description" value="Assembles and tests this project and all projects that depend on it." />
1716 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1717 <option name="name" value="buildDependents" />
1718 </ExternalTaskPojo>
1719 <ExternalTaskPojo>
1720 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1721 <option name="name" value="generateDebugAssets" />
1722 </ExternalTaskPojo>
1723 <ExternalTaskPojo>
1724 <option name="description" value="Displays all buildscript dependencies declared in project ':app'." />
1725 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1726 <option name="name" value="buildEnvironment" />
1727 </ExternalTaskPojo>
1728 <ExternalTaskPojo>
1729 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1730 <option name="name" value="checkDebugManifest" />
1731 </ExternalTaskPojo>
1732 <ExternalTaskPojo>
1733 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1734 <option name="name" value="mergeDebugJniLibFolders" />
1735 </ExternalTaskPojo>
1736 <ExternalTaskPojo>
1737 <option name="description" value="Prints out all the source sets defined in this project." />
1738 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1739 <option name="name" value="sourceSets" />
1740 </ExternalTaskPojo>
1741 <ExternalTaskPojo>
1742 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1743 <option name="name" value="transformResourcesWithMergeJavaResForDebugUnitTest" />
1744 </ExternalTaskPojo>
1745 <ExternalTaskPojo>
1746 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1747 <option name="name" value="mergeReleaseAssets" />
1748 </ExternalTaskPojo>
1749 <ExternalTaskPojo>
1750 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1751 <option name="name" value="compileDebugRenderscript" />
1752 </ExternalTaskPojo>
1753 <ExternalTaskPojo>
1754 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1755 <option name="name" value="generateReleaseBuildConfig" />
1756 </ExternalTaskPojo>
1757 <ExternalTaskPojo>
1758 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1759 <option name="name" value="prepareDebugUnitTestDependencies" />
1760 </ExternalTaskPojo>
1761 <ExternalTaskPojo>
1762 <option name="description" value="Prepare com.android.support.test:exposed-instrumentation-api-publish:0.5" />
1763 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1764 <option name="name" value="prepareComAndroidSupportTestExposedInstrumentationApiPublish05Library" />
1765 </ExternalTaskPojo>
1766 <ExternalTaskPojo>
1767 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1768 <option name="name" value="generateReleaseResources" />
1769 </ExternalTaskPojo>
1770 <ExternalTaskPojo>
1771 <option name="description" value="Runs lint on just the fatal issues in the release build." />
1772 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1773 <option name="name" value="lintVitalRelease" />
1774 </ExternalTaskPojo>
1775 <ExternalTaskPojo>
1776 <option name="description" value="Uninstalls the Debug build." />
1777 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1778 <option name="name" value="uninstallDebug" />
1779 </ExternalTaskPojo>
1780 <ExternalTaskPojo>
1781 <option name="description" value="Displays the signing info for each variant." />
1782 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1783 <option name="name" value="signingReport" />
1784 </ExternalTaskPojo>
1785 <ExternalTaskPojo>
1786 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1787 <option name="name" value="compileDebugAndroidTestAidl" />
1788 </ExternalTaskPojo>
1789 <ExternalTaskPojo>
1790 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1791 <option name="name" value="mergeDebugAndroidTestShaders" />
1792 </ExternalTaskPojo>
1793 <ExternalTaskPojo>
1794 <option name="description" value="Deletes the build directory." />
1795 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1796 <option name="name" value="clean" />
1797 </ExternalTaskPojo>
1798 <ExternalTaskPojo>
1799 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1800 <option name="name" value="preDebugBuild" />
1801 </ExternalTaskPojo>
1802 <ExternalTaskPojo>
1803 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1804 <option name="name" value="generateDebugBuildConfig" />
1805 </ExternalTaskPojo>
1806 <ExternalTaskPojo>
1807 <option name="description" value="Assembles and tests this project." />
1808 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1809 <option name="name" value="build" />
1810 </ExternalTaskPojo>
1811 <ExternalTaskPojo>
1812 <option name="description" value="Assembles all Release builds." />
1813 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1814 <option name="name" value="assembleRelease" />
1815 </ExternalTaskPojo>
1816 <ExternalTaskPojo>
1817 <option name="description" value="Prepare com.android.support.test.espresso:espresso-core:2.2.2" />
1818 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1819 <option name="name" value="prepareComAndroidSupportTestEspressoEspressoCore222Library" />
1820 </ExternalTaskPojo>
1821 <ExternalTaskPojo>
1822 <option name="description" value="Prepare com.squareup.leakcanary:leakcanary-android:1.3" />
1823 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1824 <option name="name" value="prepareComSquareupLeakcanaryLeakcanaryAndroid13Library" />
1825 </ExternalTaskPojo>
1826 <ExternalTaskPojo>
1827 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1828 <option name="name" value="compileDebugAndroidTestRenderscript" />
1829 </ExternalTaskPojo>
1830 <ExternalTaskPojo>
1831 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1832 <option name="name" value="generateDebugAndroidTestResources" />
1833 </ExternalTaskPojo>
1834 <ExternalTaskPojo>
1835 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1836 <option name="name" value="processDebugManifest" />
1837 </ExternalTaskPojo>
1838 <ExternalTaskPojo>
1839 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1840 <option name="name" value="packageDebugAndroidTest" />
1841 </ExternalTaskPojo>
1842 <ExternalTaskPojo>
1843 <option name="description" value="Prepare com.facebook.fresco:fbcore:1.1.0" />
1844 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1845 <option name="name" value="prepareComFacebookFrescoFbcore110Library" />
1846 </ExternalTaskPojo>
1847 <ExternalTaskPojo>
1848 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1849 <option name="name" value="generateReleaseResValues" />
1850 </ExternalTaskPojo>
1851 <ExternalTaskPojo>
1852 <option name="description" value="Displays the properties of project ':app'." />
1853 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/app" />
1854 <option name="name" value="properties" />
1855 </ExternalTaskPojo>
1856 </list>
1857 </value>
1858 </entry>
1859 <entry key="$PROJECT_DIR$/circledialog">
1860 <value>
1861 <list>
1862 <ExternalTaskPojo>
1863 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1864 <option name="name" value="mergeDebugProguardFiles" />
1865 </ExternalTaskPojo>
1866 <ExternalTaskPojo>
1867 <option name="description" value="Displays the sub-projects of project ':circledialog'." />
1868 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1869 <option name="name" value="projects" />
1870 </ExternalTaskPojo>
1871 <ExternalTaskPojo>
1872 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1873 <option name="name" value="packageReleaseResources" />
1874 </ExternalTaskPojo>
1875 <ExternalTaskPojo>
1876 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1877 <option name="name" value="validateSigningDebugAndroidTest" />
1878 </ExternalTaskPojo>
1879 <ExternalTaskPojo>
1880 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1881 <option name="name" value="mavenAndroidJavadocs" />
1882 </ExternalTaskPojo>
1883 <ExternalTaskPojo>
1884 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1885 <option name="name" value="assembleReleaseUnitTest" />
1886 </ExternalTaskPojo>
1887 <ExternalTaskPojo>
1888 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1889 <option name="name" value="prepareDebugDependencies" />
1890 </ExternalTaskPojo>
1891 <ExternalTaskPojo>
1892 <option name="description" value="Assembles a bundle containing the library in debug." />
1893 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1894 <option name="name" value="bundleDebug" />
1895 </ExternalTaskPojo>
1896 <ExternalTaskPojo>
1897 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1898 <option name="name" value="copyDebugLint" />
1899 </ExternalTaskPojo>
1900 <ExternalTaskPojo>
1901 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1902 <option name="name" value="processReleaseJavaRes" />
1903 </ExternalTaskPojo>
1904 <ExternalTaskPojo>
1905 <option name="description" value="Prepare com.android.support:support-vector-drawable:23.4.0" />
1906 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1907 <option name="name" value="prepareComAndroidSupportSupportVectorDrawable2340Library" />
1908 </ExternalTaskPojo>
1909 <ExternalTaskPojo>
1910 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1911 <option name="name" value="generateReleaseAssets" />
1912 </ExternalTaskPojo>
1913 <ExternalTaskPojo>
1914 <option name="description" value="Runs lint on the Debug build." />
1915 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1916 <option name="name" value="lintDebug" />
1917 </ExternalTaskPojo>
1918 <ExternalTaskPojo>
1919 <option name="description" value="Assembles a bundle containing the library in release." />
1920 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1921 <option name="name" value="bundleRelease" />
1922 </ExternalTaskPojo>
1923 <ExternalTaskPojo>
1924 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1925 <option name="name" value="assembleDebugUnitTest" />
1926 </ExternalTaskPojo>
1927 <ExternalTaskPojo>
1928 <option name="description" value="Creates a version of android.jar that's suitable for unit tests." />
1929 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1930 <option name="name" value="mockableAndroidJar" />
1931 </ExternalTaskPojo>
1932 <ExternalTaskPojo>
1933 <option name="description" value="Displays the configuration model of project ':circledialog'. [incubating]" />
1934 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1935 <option name="name" value="model" />
1936 </ExternalTaskPojo>
1937 <ExternalTaskPojo>
1938 <option name="description" value="Displays the tasks runnable from project ':circledialog'." />
1939 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1940 <option name="name" value="tasks" />
1941 </ExternalTaskPojo>
1942 <ExternalTaskPojo>
1943 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1944 <option name="name" value="compileDebugSources" />
1945 </ExternalTaskPojo>
1946 <ExternalTaskPojo>
1947 <option name="description" value="Generates the Maven POM file for publication 'maven'." />
1948 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1949 <option name="name" value="generatePomFileForMavenPublication" />
1950 </ExternalTaskPojo>
1951 <ExternalTaskPojo>
1952 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1953 <option name="name" value="packageReleaseRenderscript" />
1954 </ExternalTaskPojo>
1955 <ExternalTaskPojo>
1956 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1957 <option name="name" value="mergeReleaseProguardFiles" />
1958 </ExternalTaskPojo>
1959 <ExternalTaskPojo>
1960 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1961 <option name="name" value="incrementalDebugJavaCompilationSafeguard" />
1962 </ExternalTaskPojo>
1963 <ExternalTaskPojo>
1964 <option name="description" value="Runs all device checks using Device Providers and Test Servers." />
1965 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1966 <option name="name" value="deviceCheck" />
1967 </ExternalTaskPojo>
1968 <ExternalTaskPojo>
1969 <option name="description" value="Displays all dependencies declared in project ':circledialog'." />
1970 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1971 <option name="name" value="dependencies" />
1972 </ExternalTaskPojo>
1973 <ExternalTaskPojo>
1974 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1975 <option name="name" value="processDebugResources" />
1976 </ExternalTaskPojo>
1977 <ExternalTaskPojo>
1978 <option name="description" value="Runs lint on all variants." />
1979 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1980 <option name="name" value="lint" />
1981 </ExternalTaskPojo>
1982 <ExternalTaskPojo>
1983 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1984 <option name="name" value="compileReleaseNdk" />
1985 </ExternalTaskPojo>
1986 <ExternalTaskPojo>
1987 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1988 <option name="name" value="generateDebugResources" />
1989 </ExternalTaskPojo>
1990 <ExternalTaskPojo>
1991 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1992 <option name="name" value="compileDebugJavaWithJavac" />
1993 </ExternalTaskPojo>
1994 <ExternalTaskPojo>
1995 <option name="description" value="Assembles and tests this project and all projects it depends on." />
1996 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
1997 <option name="name" value="buildNeeded" />
1998 </ExternalTaskPojo>
1999 <ExternalTaskPojo>
2000 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2001 <option name="name" value="generateDebugAndroidTestBuildConfig" />
2002 </ExternalTaskPojo>
2003 <ExternalTaskPojo>
2004 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2005 <option name="name" value="processDebugUnitTestJavaRes" />
2006 </ExternalTaskPojo>
2007 <ExternalTaskPojo>
2008 <option name="description" value="Run unit tests for the release build." />
2009 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2010 <option name="name" value="testReleaseUnitTest" />
2011 </ExternalTaskPojo>
2012 <ExternalTaskPojo>
2013 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2014 <option name="name" value="assembleDefault" />
2015 </ExternalTaskPojo>
2016 <ExternalTaskPojo>
2017 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2018 <option name="name" value="compileDebugAndroidTestShaders" />
2019 </ExternalTaskPojo>
2020 <ExternalTaskPojo>
2021 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2022 <option name="name" value="mergeDebugShaders" />
2023 </ExternalTaskPojo>
2024 <ExternalTaskPojo>
2025 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2026 <option name="name" value="transformNative_libsWithMergeJniLibsForDebugAndroidTest" />
2027 </ExternalTaskPojo>
2028 <ExternalTaskPojo>
2029 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2030 <option name="name" value="compileDebugAndroidTestJavaWithJavac" />
2031 </ExternalTaskPojo>
2032 <ExternalTaskPojo>
2033 <option name="description" value="Displays the components produced by project ':circledialog'. [incubating]" />
2034 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2035 <option name="name" value="components" />
2036 </ExternalTaskPojo>
2037 <ExternalTaskPojo>
2038 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2039 <option name="name" value="compileReleaseRenderscript" />
2040 </ExternalTaskPojo>
2041 <ExternalTaskPojo>
2042 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2043 <option name="name" value="transformNative_libsWithSyncJniLibsForRelease" />
2044 </ExternalTaskPojo>
2045 <ExternalTaskPojo>
2046 <option name="description" value="Assembles all Debug builds." />
2047 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2048 <option name="name" value="assembleDebug" />
2049 </ExternalTaskPojo>
2050 <ExternalTaskPojo>
2051 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2052 <option name="name" value="processDebugAndroidTestManifest" />
2053 </ExternalTaskPojo>
2054 <ExternalTaskPojo>
2055 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2056 <option name="name" value="compileDebugUnitTestJavaWithJavac" />
2057 </ExternalTaskPojo>
2058 <ExternalTaskPojo>
2059 <option name="description" value="Publishes Maven publication 'maven' to the local Maven repository." />
2060 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2061 <option name="name" value="publishMavenPublicationToMavenLocal" />
2062 </ExternalTaskPojo>
2063 <ExternalTaskPojo>
2064 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2065 <option name="name" value="transformResourcesWithMergeJavaResForReleaseUnitTest" />
2066 </ExternalTaskPojo>
2067 <ExternalTaskPojo>
2068 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2069 <option name="name" value="preDebugAndroidTestBuild" />
2070 </ExternalTaskPojo>
2071 <ExternalTaskPojo>
2072 <option name="description" value="Extracts Android annotations for the debug variant into the archive file" />
2073 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2074 <option name="name" value="extractDebugAnnotations" />
2075 </ExternalTaskPojo>
2076 <ExternalTaskPojo>
2077 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2078 <option name="name" value="processDebugAndroidTestJavaRes" />
2079 </ExternalTaskPojo>
2080 <ExternalTaskPojo>
2081 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2082 <option name="name" value="processReleaseUnitTestJavaRes" />
2083 </ExternalTaskPojo>
2084 <ExternalTaskPojo>
2085 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2086 <option name="name" value="transformClassesAndResourcesWithSyncLibJarsForRelease" />
2087 </ExternalTaskPojo>
2088 <ExternalTaskPojo>
2089 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2090 <option name="name" value="compileReleaseShaders" />
2091 </ExternalTaskPojo>
2092 <ExternalTaskPojo>
2093 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2094 <option name="name" value="mavenAndroidJavadocsJar" />
2095 </ExternalTaskPojo>
2096 <ExternalTaskPojo>
2097 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2098 <option name="name" value="generateDebugAndroidTestSources" />
2099 </ExternalTaskPojo>
2100 <ExternalTaskPojo>
2101 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2102 <option name="name" value="prepareDebugAndroidTestDependencies" />
2103 </ExternalTaskPojo>
2104 <ExternalTaskPojo>
2105 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2106 <option name="name" value="incrementalDebugAndroidTestJavaCompilationSafeguard" />
2107 </ExternalTaskPojo>
2108 <ExternalTaskPojo>
2109 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2110 <option name="name" value="transformClassesAndResourcesWithSyncLibJarsForDebug" />
2111 </ExternalTaskPojo>
2112 <ExternalTaskPojo>
2113 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2114 <option name="name" value="checkReleaseManifest" />
2115 </ExternalTaskPojo>
2116 <ExternalTaskPojo>
2117 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2118 <option name="name" value="packageDebugResources" />
2119 </ExternalTaskPojo>
2120 <ExternalTaskPojo>
2121 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2122 <option name="name" value="compileDebugAndroidTestSources" />
2123 </ExternalTaskPojo>
2124 <ExternalTaskPojo>
2125 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2126 <option name="name" value="mergeReleaseJniLibFolders" />
2127 </ExternalTaskPojo>
2128 <ExternalTaskPojo>
2129 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2130 <option name="name" value="prepareReleaseDependencies" />
2131 </ExternalTaskPojo>
2132 <ExternalTaskPojo>
2133 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2134 <option name="name" value="processReleaseResources" />
2135 </ExternalTaskPojo>
2136 <ExternalTaskPojo>
2137 <option name="description" value="Installs and runs instrumentation tests using all Device Providers." />
2138 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2139 <option name="name" value="deviceAndroidTest" />
2140 </ExternalTaskPojo>
2141 <ExternalTaskPojo>
2142 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2143 <option name="name" value="mergeDebugAndroidTestAssets" />
2144 </ExternalTaskPojo>
2145 <ExternalTaskPojo>
2146 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2147 <option name="name" value="processReleaseManifest" />
2148 </ExternalTaskPojo>
2149 <ExternalTaskPojo>
2150 <option name="description" value="Prepare com.android.support:appcompat-v7:23.4.0" />
2151 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2152 <option name="name" value="prepareComAndroidSupportAppcompatV72340Library" />
2153 </ExternalTaskPojo>
2154 <ExternalTaskPojo>
2155 <option name="description" value="Uninstalls the android (on device) tests for the Debug build." />
2156 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2157 <option name="name" value="uninstallDebugAndroidTest" />
2158 </ExternalTaskPojo>
2159 <ExternalTaskPojo>
2160 <option name="description" value="Displays the insight into a specific dependency in project ':circledialog'." />
2161 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2162 <option name="name" value="dependencyInsight" />
2163 </ExternalTaskPojo>
2164 <ExternalTaskPojo>
2165 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2166 <option name="name" value="generateReleaseSources" />
2167 </ExternalTaskPojo>
2168 <ExternalTaskPojo>
2169 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2170 <option name="name" value="incrementalReleaseUnitTestJavaCompilationSafeguard" />
2171 </ExternalTaskPojo>
2172 <ExternalTaskPojo>
2173 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2174 <option name="name" value="preReleaseBuild" />
2175 </ExternalTaskPojo>
2176 <ExternalTaskPojo>
2177 <option name="description" value="Assembles all variants of all applications and secondary packages." />
2178 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2179 <option name="name" value="assemble" />
2180 </ExternalTaskPojo>
2181 <ExternalTaskPojo>
2182 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2183 <option name="name" value="incrementalDebugUnitTestJavaCompilationSafeguard" />
2184 </ExternalTaskPojo>
2185 <ExternalTaskPojo>
2186 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2187 <option name="name" value="incrementalReleaseJavaCompilationSafeguard" />
2188 </ExternalTaskPojo>
2189 <ExternalTaskPojo>
2190 <option name="description" value="Displays a help message." />
2191 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2192 <option name="name" value="help" />
2193 </ExternalTaskPojo>
2194 <ExternalTaskPojo>
2195 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2196 <option name="name" value="compileReleaseUnitTestSources" />
2197 </ExternalTaskPojo>
2198 <ExternalTaskPojo>
2199 <option name="description" value="Installs the android (on device) tests for the Debug build." />
2200 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2201 <option name="name" value="installDebugAndroidTest" />
2202 </ExternalTaskPojo>
2203 <ExternalTaskPojo>
2204 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2205 <option name="name" value="mergeDebugAssets" />
2206 </ExternalTaskPojo>
2207 <ExternalTaskPojo>
2208 <option name="description" value="Prepare com.android.support:animated-vector-drawable:23.4.0" />
2209 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2210 <option name="name" value="prepareComAndroidSupportAnimatedVectorDrawable2340Library" />
2211 </ExternalTaskPojo>
2212 <ExternalTaskPojo>
2213 <option name="description" value="Runs all device checks on currently connected devices." />
2214 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2215 <option name="name" value="connectedCheck" />
2216 </ExternalTaskPojo>
2217 <ExternalTaskPojo>
2218 <option name="description" value="Installs and runs the tests for debug on connected devices." />
2219 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2220 <option name="name" value="connectedDebugAndroidTest" />
2221 </ExternalTaskPojo>
2222 <ExternalTaskPojo>
2223 <option name="description" value="Uninstall all applications." />
2224 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2225 <option name="name" value="uninstallAll" />
2226 </ExternalTaskPojo>
2227 <ExternalTaskPojo>
2228 <option name="description" value="Assembles all the Test applications." />
2229 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2230 <option name="name" value="assembleAndroidTest" />
2231 </ExternalTaskPojo>
2232 <ExternalTaskPojo>
2233 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2234 <option name="name" value="processDebugAndroidTestResources" />
2235 </ExternalTaskPojo>
2236 <ExternalTaskPojo>
2237 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2238 <option name="name" value="transformNative_libsWithMergeJniLibsForDebug" />
2239 </ExternalTaskPojo>
2240 <ExternalTaskPojo>
2241 <option name="description" value="Extracts Android annotations for the release variant into the archive file" />
2242 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2243 <option name="name" value="extractReleaseAnnotations" />
2244 </ExternalTaskPojo>
2245 <ExternalTaskPojo>
2246 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2247 <option name="name" value="compileDebugAidl" />
2248 </ExternalTaskPojo>
2249 <ExternalTaskPojo>
2250 <option name="description" value="Publishes artifacts to bintray.com." />
2251 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2252 <option name="name" value="bintrayUpload" />
2253 </ExternalTaskPojo>
2254 <ExternalTaskPojo>
2255 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2256 <option name="name" value="preDebugUnitTestBuild" />
2257 </ExternalTaskPojo>
2258 <ExternalTaskPojo>
2259 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2260 <option name="name" value="compileLint" />
2261 </ExternalTaskPojo>
2262 <ExternalTaskPojo>
2263 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2264 <option name="name" value="generateDebugAndroidTestResValues" />
2265 </ExternalTaskPojo>
2266 <ExternalTaskPojo>
2267 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2268 <option name="name" value="mergeReleaseShaders" />
2269 </ExternalTaskPojo>
2270 <ExternalTaskPojo>
2271 <option name="description" value="Displays the Android dependencies of the project." />
2272 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2273 <option name="name" value="androidDependencies" />
2274 </ExternalTaskPojo>
2275 <ExternalTaskPojo>
2276 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2277 <option name="name" value="compileDebugAndroidTestNdk" />
2278 </ExternalTaskPojo>
2279 <ExternalTaskPojo>
2280 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2281 <option name="name" value="compileDebugUnitTestSources" />
2282 </ExternalTaskPojo>
2283 <ExternalTaskPojo>
2284 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2285 <option name="name" value="generateDebugSources" />
2286 </ExternalTaskPojo>
2287 <ExternalTaskPojo>
2288 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2289 <option name="name" value="mergeDebugAndroidTestJniLibFolders" />
2290 </ExternalTaskPojo>
2291 <ExternalTaskPojo>
2292 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2293 <option name="name" value="extractProguardFiles" />
2294 </ExternalTaskPojo>
2295 <ExternalTaskPojo>
2296 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2297 <option name="name" value="mavenAndroidSourcesJar" />
2298 </ExternalTaskPojo>
2299 <ExternalTaskPojo>
2300 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2301 <option name="name" value="transformClassesWithDexForDebugAndroidTest" />
2302 </ExternalTaskPojo>
2303 <ExternalTaskPojo>
2304 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2305 <option name="name" value="assembleDebugAndroidTest" />
2306 </ExternalTaskPojo>
2307 <ExternalTaskPojo>
2308 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2309 <option name="name" value="copyReleaseLint" />
2310 </ExternalTaskPojo>
2311 <ExternalTaskPojo>
2312 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2313 <option name="name" value="processDebugJavaRes" />
2314 </ExternalTaskPojo>
2315 <ExternalTaskPojo>
2316 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2317 <option name="name" value="generateDebugAndroidTestAssets" />
2318 </ExternalTaskPojo>
2319 <ExternalTaskPojo>
2320 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2321 <option name="name" value="compileReleaseJavaWithJavac" />
2322 </ExternalTaskPojo>
2323 <ExternalTaskPojo>
2324 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2325 <option name="name" value="transformResourcesWithMergeJavaResForDebugAndroidTest" />
2326 </ExternalTaskPojo>
2327 <ExternalTaskPojo>
2328 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2329 <option name="name" value="prepareReleaseUnitTestDependencies" />
2330 </ExternalTaskPojo>
2331 <ExternalTaskPojo>
2332 <option name="description" value="Run unit tests for all variants." />
2333 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2334 <option name="name" value="test" />
2335 </ExternalTaskPojo>
2336 <ExternalTaskPojo>
2337 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2338 <option name="name" value="compileDebugNdk" />
2339 </ExternalTaskPojo>
2340 <ExternalTaskPojo>
2341 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2342 <option name="name" value="transformNative_libsWithMergeJniLibsForRelease" />
2343 </ExternalTaskPojo>
2344 <ExternalTaskPojo>
2345 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2346 <option name="name" value="mergeDebugAndroidTestResources" />
2347 </ExternalTaskPojo>
2348 <ExternalTaskPojo>
2349 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2350 <option name="name" value="preReleaseUnitTestBuild" />
2351 </ExternalTaskPojo>
2352 <ExternalTaskPojo>
2353 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2354 <option name="name" value="generateDebugResValues" />
2355 </ExternalTaskPojo>
2356 <ExternalTaskPojo>
2357 <option name="description" value="Runs all checks." />
2358 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2359 <option name="name" value="check" />
2360 </ExternalTaskPojo>
2361 <ExternalTaskPojo>
2362 <option name="description" value="Run unit tests for the debug build." />
2363 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2364 <option name="name" value="testDebugUnitTest" />
2365 </ExternalTaskPojo>
2366 <ExternalTaskPojo>
2367 <option name="description" value="Installs and runs instrumentation tests for all flavors on connected devices." />
2368 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2369 <option name="name" value="connectedAndroidTest" />
2370 </ExternalTaskPojo>
2371 <ExternalTaskPojo>
2372 <option name="description" value="Prepare com.android.support:support-v4:23.4.0" />
2373 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2374 <option name="name" value="prepareComAndroidSupportSupportV42340Library" />
2375 </ExternalTaskPojo>
2376 <ExternalTaskPojo>
2377 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2378 <option name="name" value="preBuild" />
2379 </ExternalTaskPojo>
2380 <ExternalTaskPojo>
2381 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2382 <option name="name" value="transformResourcesWithMergeJavaResForRelease" />
2383 </ExternalTaskPojo>
2384 <ExternalTaskPojo>
2385 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2386 <option name="name" value="compileReleaseSources" />
2387 </ExternalTaskPojo>
2388 <ExternalTaskPojo>
2389 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2390 <option name="name" value="compileReleaseUnitTestJavaWithJavac" />
2391 </ExternalTaskPojo>
2392 <ExternalTaskPojo>
2393 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2394 <option name="name" value="compileDebugShaders" />
2395 </ExternalTaskPojo>
2396 <ExternalTaskPojo>
2397 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2398 <option name="name" value="transformResourcesWithMergeJavaResForDebug" />
2399 </ExternalTaskPojo>
2400 <ExternalTaskPojo>
2401 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2402 <option name="name" value="compileReleaseAidl" />
2403 </ExternalTaskPojo>
2404 <ExternalTaskPojo>
2405 <option name="description" value="Runs lint on the Release build." />
2406 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2407 <option name="name" value="lintRelease" />
2408 </ExternalTaskPojo>
2409 <ExternalTaskPojo>
2410 <option name="description" value="Assembles and tests this project and all projects that depend on it." />
2411 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2412 <option name="name" value="buildDependents" />
2413 </ExternalTaskPojo>
2414 <ExternalTaskPojo>
2415 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2416 <option name="name" value="generateDebugAssets" />
2417 </ExternalTaskPojo>
2418 <ExternalTaskPojo>
2419 <option name="description" value="Displays all buildscript dependencies declared in project ':circledialog'." />
2420 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2421 <option name="name" value="buildEnvironment" />
2422 </ExternalTaskPojo>
2423 <ExternalTaskPojo>
2424 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2425 <option name="name" value="checkDebugManifest" />
2426 </ExternalTaskPojo>
2427 <ExternalTaskPojo>
2428 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2429 <option name="name" value="mergeDebugJniLibFolders" />
2430 </ExternalTaskPojo>
2431 <ExternalTaskPojo>
2432 <option name="description" value="Prints out all the source sets defined in this project." />
2433 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2434 <option name="name" value="sourceSets" />
2435 </ExternalTaskPojo>
2436 <ExternalTaskPojo>
2437 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2438 <option name="name" value="transformResourcesWithMergeJavaResForDebugUnitTest" />
2439 </ExternalTaskPojo>
2440 <ExternalTaskPojo>
2441 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2442 <option name="name" value="mergeReleaseAssets" />
2443 </ExternalTaskPojo>
2444 <ExternalTaskPojo>
2445 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2446 <option name="name" value="compileDebugRenderscript" />
2447 </ExternalTaskPojo>
2448 <ExternalTaskPojo>
2449 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2450 <option name="name" value="packageDebugRenderscript" />
2451 </ExternalTaskPojo>
2452 <ExternalTaskPojo>
2453 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2454 <option name="name" value="generateReleaseBuildConfig" />
2455 </ExternalTaskPojo>
2456 <ExternalTaskPojo>
2457 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2458 <option name="name" value="prepareDebugUnitTestDependencies" />
2459 </ExternalTaskPojo>
2460 <ExternalTaskPojo>
2461 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2462 <option name="name" value="generateReleaseResources" />
2463 </ExternalTaskPojo>
2464 <ExternalTaskPojo>
2465 <option name="description" value="Displays the signing info for each variant." />
2466 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2467 <option name="name" value="signingReport" />
2468 </ExternalTaskPojo>
2469 <ExternalTaskPojo>
2470 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2471 <option name="name" value="compileDebugAndroidTestAidl" />
2472 </ExternalTaskPojo>
2473 <ExternalTaskPojo>
2474 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2475 <option name="name" value="mergeDebugAndroidTestShaders" />
2476 </ExternalTaskPojo>
2477 <ExternalTaskPojo>
2478 <option name="description" value="Deletes the build directory." />
2479 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2480 <option name="name" value="clean" />
2481 </ExternalTaskPojo>
2482 <ExternalTaskPojo>
2483 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2484 <option name="name" value="preDebugBuild" />
2485 </ExternalTaskPojo>
2486 <ExternalTaskPojo>
2487 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2488 <option name="name" value="transformNative_libsWithSyncJniLibsForDebug" />
2489 </ExternalTaskPojo>
2490 <ExternalTaskPojo>
2491 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2492 <option name="name" value="generateDebugBuildConfig" />
2493 </ExternalTaskPojo>
2494 <ExternalTaskPojo>
2495 <option name="description" value="Assembles and tests this project." />
2496 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2497 <option name="name" value="build" />
2498 </ExternalTaskPojo>
2499 <ExternalTaskPojo>
2500 <option name="description" value="Assembles all Release builds." />
2501 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2502 <option name="name" value="assembleRelease" />
2503 </ExternalTaskPojo>
2504 <ExternalTaskPojo>
2505 <option name="description" value="Publishes all publications produced by this project." />
2506 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2507 <option name="name" value="publish" />
2508 </ExternalTaskPojo>
2509 <ExternalTaskPojo>
2510 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2511 <option name="name" value="compileDebugAndroidTestRenderscript" />
2512 </ExternalTaskPojo>
2513 <ExternalTaskPojo>
2514 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2515 <option name="name" value="generateDebugAndroidTestResources" />
2516 </ExternalTaskPojo>
2517 <ExternalTaskPojo>
2518 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2519 <option name="name" value="processDebugManifest" />
2520 </ExternalTaskPojo>
2521 <ExternalTaskPojo>
2522 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2523 <option name="name" value="packageDebugAndroidTest" />
2524 </ExternalTaskPojo>
2525 <ExternalTaskPojo>
2526 <option name="description" value="Publishes all Maven publications produced by this project to the local Maven cache." />
2527 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2528 <option name="name" value="publishToMavenLocal" />
2529 </ExternalTaskPojo>
2530 <ExternalTaskPojo>
2531 <option name="description" value="Uploads all artifacts belonging to configuration ':circledialog:archives'" />
2532 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2533 <option name="name" value="uploadArchives" />
2534 </ExternalTaskPojo>
2535 <ExternalTaskPojo>
2536 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2537 <option name="name" value="generateReleaseResValues" />
2538 </ExternalTaskPojo>
2539 <ExternalTaskPojo>
2540 <option name="description" value="Displays the properties of project ':circledialog'." />
2541 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/circledialog" />
2542 <option name="name" value="properties" />
2543 </ExternalTaskPojo>
2544 </list>
2545 </value>
2546 </entry>
2547 <entry key="$PROJECT_DIR$/mypresonallibrary">
2548 <value>
2549 <list>
2550 <ExternalTaskPojo>
2551 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2552 <option name="name" value="mergeDebugProguardFiles" />
2553 </ExternalTaskPojo>
2554 <ExternalTaskPojo>
2555 <option name="description" value="Displays the sub-projects of project ':mypresonallibrary'." />
2556 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2557 <option name="name" value="projects" />
2558 </ExternalTaskPojo>
2559 <ExternalTaskPojo>
2560 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2561 <option name="name" value="packageReleaseResources" />
2562 </ExternalTaskPojo>
2563 <ExternalTaskPojo>
2564 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2565 <option name="name" value="validateSigningDebugAndroidTest" />
2566 </ExternalTaskPojo>
2567 <ExternalTaskPojo>
2568 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2569 <option name="name" value="assembleReleaseUnitTest" />
2570 </ExternalTaskPojo>
2571 <ExternalTaskPojo>
2572 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2573 <option name="name" value="prepareDebugDependencies" />
2574 </ExternalTaskPojo>
2575 <ExternalTaskPojo>
2576 <option name="description" value="Assembles a bundle containing the library in debug." />
2577 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2578 <option name="name" value="bundleDebug" />
2579 </ExternalTaskPojo>
2580 <ExternalTaskPojo>
2581 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2582 <option name="name" value="copyDebugLint" />
2583 </ExternalTaskPojo>
2584 <ExternalTaskPojo>
2585 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2586 <option name="name" value="processReleaseJavaRes" />
2587 </ExternalTaskPojo>
2588 <ExternalTaskPojo>
2589 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2590 <option name="name" value="generateReleaseAssets" />
2591 </ExternalTaskPojo>
2592 <ExternalTaskPojo>
2593 <option name="description" value="Runs lint on the Debug build." />
2594 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2595 <option name="name" value="lintDebug" />
2596 </ExternalTaskPojo>
2597 <ExternalTaskPojo>
2598 <option name="description" value="Assembles a bundle containing the library in release." />
2599 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2600 <option name="name" value="bundleRelease" />
2601 </ExternalTaskPojo>
2602 <ExternalTaskPojo>
2603 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2604 <option name="name" value="assembleDebugUnitTest" />
2605 </ExternalTaskPojo>
2606 <ExternalTaskPojo>
2607 <option name="description" value="Creates a version of android.jar that's suitable for unit tests." />
2608 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2609 <option name="name" value="mockableAndroidJar" />
2610 </ExternalTaskPojo>
2611 <ExternalTaskPojo>
2612 <option name="description" value="Displays the configuration model of project ':mypresonallibrary'. [incubating]" />
2613 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2614 <option name="name" value="model" />
2615 </ExternalTaskPojo>
2616 <ExternalTaskPojo>
2617 <option name="description" value="Prepare com.android.support:appcompat-v7:25.3.1" />
2618 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2619 <option name="name" value="prepareComAndroidSupportAppcompatV72531Library" />
2620 </ExternalTaskPojo>
2621 <ExternalTaskPojo>
2622 <option name="description" value="Displays the tasks runnable from project ':mypresonallibrary'." />
2623 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2624 <option name="name" value="tasks" />
2625 </ExternalTaskPojo>
2626 <ExternalTaskPojo>
2627 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2628 <option name="name" value="compileDebugSources" />
2629 </ExternalTaskPojo>
2630 <ExternalTaskPojo>
2631 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2632 <option name="name" value="packageReleaseRenderscript" />
2633 </ExternalTaskPojo>
2634 <ExternalTaskPojo>
2635 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2636 <option name="name" value="mergeReleaseProguardFiles" />
2637 </ExternalTaskPojo>
2638 <ExternalTaskPojo>
2639 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2640 <option name="name" value="incrementalDebugJavaCompilationSafeguard" />
2641 </ExternalTaskPojo>
2642 <ExternalTaskPojo>
2643 <option name="description" value="Prepare com.android.support:support-media-compat:25.3.1" />
2644 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2645 <option name="name" value="prepareComAndroidSupportSupportMediaCompat2531Library" />
2646 </ExternalTaskPojo>
2647 <ExternalTaskPojo>
2648 <option name="description" value="Prepare com.android.support:support-vector-drawable:25.3.1" />
2649 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2650 <option name="name" value="prepareComAndroidSupportSupportVectorDrawable2531Library" />
2651 </ExternalTaskPojo>
2652 <ExternalTaskPojo>
2653 <option name="description" value="Runs all device checks using Device Providers and Test Servers." />
2654 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2655 <option name="name" value="deviceCheck" />
2656 </ExternalTaskPojo>
2657 <ExternalTaskPojo>
2658 <option name="description" value="Displays all dependencies declared in project ':mypresonallibrary'." />
2659 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2660 <option name="name" value="dependencies" />
2661 </ExternalTaskPojo>
2662 <ExternalTaskPojo>
2663 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2664 <option name="name" value="processDebugResources" />
2665 </ExternalTaskPojo>
2666 <ExternalTaskPojo>
2667 <option name="description" value="Runs lint on all variants." />
2668 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2669 <option name="name" value="lint" />
2670 </ExternalTaskPojo>
2671 <ExternalTaskPojo>
2672 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2673 <option name="name" value="compileReleaseNdk" />
2674 </ExternalTaskPojo>
2675 <ExternalTaskPojo>
2676 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2677 <option name="name" value="generateDebugResources" />
2678 </ExternalTaskPojo>
2679 <ExternalTaskPojo>
2680 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2681 <option name="name" value="compileDebugJavaWithJavac" />
2682 </ExternalTaskPojo>
2683 <ExternalTaskPojo>
2684 <option name="description" value="Assembles and tests this project and all projects it depends on." />
2685 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2686 <option name="name" value="buildNeeded" />
2687 </ExternalTaskPojo>
2688 <ExternalTaskPojo>
2689 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2690 <option name="name" value="generateDebugAndroidTestBuildConfig" />
2691 </ExternalTaskPojo>
2692 <ExternalTaskPojo>
2693 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2694 <option name="name" value="processDebugUnitTestJavaRes" />
2695 </ExternalTaskPojo>
2696 <ExternalTaskPojo>
2697 <option name="description" value="Run unit tests for the release build." />
2698 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2699 <option name="name" value="testReleaseUnitTest" />
2700 </ExternalTaskPojo>
2701 <ExternalTaskPojo>
2702 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2703 <option name="name" value="assembleDefault" />
2704 </ExternalTaskPojo>
2705 <ExternalTaskPojo>
2706 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2707 <option name="name" value="compileDebugAndroidTestShaders" />
2708 </ExternalTaskPojo>
2709 <ExternalTaskPojo>
2710 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2711 <option name="name" value="mergeDebugShaders" />
2712 </ExternalTaskPojo>
2713 <ExternalTaskPojo>
2714 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2715 <option name="name" value="transformNative_libsWithMergeJniLibsForDebugAndroidTest" />
2716 </ExternalTaskPojo>
2717 <ExternalTaskPojo>
2718 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2719 <option name="name" value="compileDebugAndroidTestJavaWithJavac" />
2720 </ExternalTaskPojo>
2721 <ExternalTaskPojo>
2722 <option name="description" value="Displays the components produced by project ':mypresonallibrary'. [incubating]" />
2723 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2724 <option name="name" value="components" />
2725 </ExternalTaskPojo>
2726 <ExternalTaskPojo>
2727 <option name="description" value="Prepare com.android.support.test.espresso:espresso-idling-resource:2.2.2" />
2728 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2729 <option name="name" value="prepareComAndroidSupportTestEspressoEspressoIdlingResource222Library" />
2730 </ExternalTaskPojo>
2731 <ExternalTaskPojo>
2732 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2733 <option name="name" value="compileReleaseRenderscript" />
2734 </ExternalTaskPojo>
2735 <ExternalTaskPojo>
2736 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2737 <option name="name" value="transformNative_libsWithSyncJniLibsForRelease" />
2738 </ExternalTaskPojo>
2739 <ExternalTaskPojo>
2740 <option name="description" value="Assembles all Debug builds." />
2741 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2742 <option name="name" value="assembleDebug" />
2743 </ExternalTaskPojo>
2744 <ExternalTaskPojo>
2745 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2746 <option name="name" value="processDebugAndroidTestManifest" />
2747 </ExternalTaskPojo>
2748 <ExternalTaskPojo>
2749 <option name="description" value="Prepare com.android.support.test:rules:0.5" />
2750 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2751 <option name="name" value="prepareComAndroidSupportTestRules05Library" />
2752 </ExternalTaskPojo>
2753 <ExternalTaskPojo>
2754 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2755 <option name="name" value="compileDebugUnitTestJavaWithJavac" />
2756 </ExternalTaskPojo>
2757 <ExternalTaskPojo>
2758 <option name="description" value="Prepare com.android.support:support-core-utils:25.3.1" />
2759 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2760 <option name="name" value="prepareComAndroidSupportSupportCoreUtils2531Library" />
2761 </ExternalTaskPojo>
2762 <ExternalTaskPojo>
2763 <option name="description" value="Prepare com.android.support:support-v4:25.3.1" />
2764 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2765 <option name="name" value="prepareComAndroidSupportSupportV42531Library" />
2766 </ExternalTaskPojo>
2767 <ExternalTaskPojo>
2768 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2769 <option name="name" value="transformResourcesWithMergeJavaResForReleaseUnitTest" />
2770 </ExternalTaskPojo>
2771 <ExternalTaskPojo>
2772 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2773 <option name="name" value="preDebugAndroidTestBuild" />
2774 </ExternalTaskPojo>
2775 <ExternalTaskPojo>
2776 <option name="description" value="Extracts Android annotations for the debug variant into the archive file" />
2777 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2778 <option name="name" value="extractDebugAnnotations" />
2779 </ExternalTaskPojo>
2780 <ExternalTaskPojo>
2781 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2782 <option name="name" value="processDebugAndroidTestJavaRes" />
2783 </ExternalTaskPojo>
2784 <ExternalTaskPojo>
2785 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2786 <option name="name" value="processReleaseUnitTestJavaRes" />
2787 </ExternalTaskPojo>
2788 <ExternalTaskPojo>
2789 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2790 <option name="name" value="transformClassesAndResourcesWithSyncLibJarsForRelease" />
2791 </ExternalTaskPojo>
2792 <ExternalTaskPojo>
2793 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2794 <option name="name" value="compileReleaseShaders" />
2795 </ExternalTaskPojo>
2796 <ExternalTaskPojo>
2797 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2798 <option name="name" value="generateDebugAndroidTestSources" />
2799 </ExternalTaskPojo>
2800 <ExternalTaskPojo>
2801 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2802 <option name="name" value="prepareDebugAndroidTestDependencies" />
2803 </ExternalTaskPojo>
2804 <ExternalTaskPojo>
2805 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2806 <option name="name" value="incrementalDebugAndroidTestJavaCompilationSafeguard" />
2807 </ExternalTaskPojo>
2808 <ExternalTaskPojo>
2809 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2810 <option name="name" value="transformClassesAndResourcesWithSyncLibJarsForDebug" />
2811 </ExternalTaskPojo>
2812 <ExternalTaskPojo>
2813 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2814 <option name="name" value="checkReleaseManifest" />
2815 </ExternalTaskPojo>
2816 <ExternalTaskPojo>
2817 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2818 <option name="name" value="packageDebugResources" />
2819 </ExternalTaskPojo>
2820 <ExternalTaskPojo>
2821 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2822 <option name="name" value="compileDebugAndroidTestSources" />
2823 </ExternalTaskPojo>
2824 <ExternalTaskPojo>
2825 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2826 <option name="name" value="mergeReleaseJniLibFolders" />
2827 </ExternalTaskPojo>
2828 <ExternalTaskPojo>
2829 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2830 <option name="name" value="prepareReleaseDependencies" />
2831 </ExternalTaskPojo>
2832 <ExternalTaskPojo>
2833 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2834 <option name="name" value="processReleaseResources" />
2835 </ExternalTaskPojo>
2836 <ExternalTaskPojo>
2837 <option name="description" value="Installs and runs instrumentation tests using all Device Providers." />
2838 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2839 <option name="name" value="deviceAndroidTest" />
2840 </ExternalTaskPojo>
2841 <ExternalTaskPojo>
2842 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2843 <option name="name" value="mergeDebugAndroidTestAssets" />
2844 </ExternalTaskPojo>
2845 <ExternalTaskPojo>
2846 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2847 <option name="name" value="processReleaseManifest" />
2848 </ExternalTaskPojo>
2849 <ExternalTaskPojo>
2850 <option name="description" value="Uninstalls the android (on device) tests for the Debug build." />
2851 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2852 <option name="name" value="uninstallDebugAndroidTest" />
2853 </ExternalTaskPojo>
2854 <ExternalTaskPojo>
2855 <option name="description" value="Displays the insight into a specific dependency in project ':mypresonallibrary'." />
2856 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2857 <option name="name" value="dependencyInsight" />
2858 </ExternalTaskPojo>
2859 <ExternalTaskPojo>
2860 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2861 <option name="name" value="generateReleaseSources" />
2862 </ExternalTaskPojo>
2863 <ExternalTaskPojo>
2864 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2865 <option name="name" value="incrementalReleaseUnitTestJavaCompilationSafeguard" />
2866 </ExternalTaskPojo>
2867 <ExternalTaskPojo>
2868 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2869 <option name="name" value="preReleaseBuild" />
2870 </ExternalTaskPojo>
2871 <ExternalTaskPojo>
2872 <option name="description" value="Assembles all variants of all applications and secondary packages." />
2873 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2874 <option name="name" value="assemble" />
2875 </ExternalTaskPojo>
2876 <ExternalTaskPojo>
2877 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2878 <option name="name" value="incrementalDebugUnitTestJavaCompilationSafeguard" />
2879 </ExternalTaskPojo>
2880 <ExternalTaskPojo>
2881 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2882 <option name="name" value="incrementalReleaseJavaCompilationSafeguard" />
2883 </ExternalTaskPojo>
2884 <ExternalTaskPojo>
2885 <option name="description" value="Displays a help message." />
2886 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2887 <option name="name" value="help" />
2888 </ExternalTaskPojo>
2889 <ExternalTaskPojo>
2890 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2891 <option name="name" value="compileReleaseUnitTestSources" />
2892 </ExternalTaskPojo>
2893 <ExternalTaskPojo>
2894 <option name="description" value="Installs the android (on device) tests for the Debug build." />
2895 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2896 <option name="name" value="installDebugAndroidTest" />
2897 </ExternalTaskPojo>
2898 <ExternalTaskPojo>
2899 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2900 <option name="name" value="mergeDebugAssets" />
2901 </ExternalTaskPojo>
2902 <ExternalTaskPojo>
2903 <option name="description" value="Prepare com.android.support:support-core-ui:25.3.1" />
2904 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2905 <option name="name" value="prepareComAndroidSupportSupportCoreUi2531Library" />
2906 </ExternalTaskPojo>
2907 <ExternalTaskPojo>
2908 <option name="description" value="Runs all device checks on currently connected devices." />
2909 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2910 <option name="name" value="connectedCheck" />
2911 </ExternalTaskPojo>
2912 <ExternalTaskPojo>
2913 <option name="description" value="Installs and runs the tests for debug on connected devices." />
2914 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2915 <option name="name" value="connectedDebugAndroidTest" />
2916 </ExternalTaskPojo>
2917 <ExternalTaskPojo>
2918 <option name="description" value="Uninstall all applications." />
2919 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2920 <option name="name" value="uninstallAll" />
2921 </ExternalTaskPojo>
2922 <ExternalTaskPojo>
2923 <option name="description" value="Assembles all the Test applications." />
2924 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2925 <option name="name" value="assembleAndroidTest" />
2926 </ExternalTaskPojo>
2927 <ExternalTaskPojo>
2928 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2929 <option name="name" value="processDebugAndroidTestResources" />
2930 </ExternalTaskPojo>
2931 <ExternalTaskPojo>
2932 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2933 <option name="name" value="transformNative_libsWithMergeJniLibsForDebug" />
2934 </ExternalTaskPojo>
2935 <ExternalTaskPojo>
2936 <option name="description" value="Extracts Android annotations for the release variant into the archive file" />
2937 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2938 <option name="name" value="extractReleaseAnnotations" />
2939 </ExternalTaskPojo>
2940 <ExternalTaskPojo>
2941 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2942 <option name="name" value="compileDebugAidl" />
2943 </ExternalTaskPojo>
2944 <ExternalTaskPojo>
2945 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2946 <option name="name" value="preDebugUnitTestBuild" />
2947 </ExternalTaskPojo>
2948 <ExternalTaskPojo>
2949 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2950 <option name="name" value="compileLint" />
2951 </ExternalTaskPojo>
2952 <ExternalTaskPojo>
2953 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2954 <option name="name" value="generateDebugAndroidTestResValues" />
2955 </ExternalTaskPojo>
2956 <ExternalTaskPojo>
2957 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2958 <option name="name" value="mergeReleaseShaders" />
2959 </ExternalTaskPojo>
2960 <ExternalTaskPojo>
2961 <option name="description" value="Displays the Android dependencies of the project." />
2962 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2963 <option name="name" value="androidDependencies" />
2964 </ExternalTaskPojo>
2965 <ExternalTaskPojo>
2966 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2967 <option name="name" value="compileDebugAndroidTestNdk" />
2968 </ExternalTaskPojo>
2969 <ExternalTaskPojo>
2970 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2971 <option name="name" value="compileDebugUnitTestSources" />
2972 </ExternalTaskPojo>
2973 <ExternalTaskPojo>
2974 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2975 <option name="name" value="generateDebugSources" />
2976 </ExternalTaskPojo>
2977 <ExternalTaskPojo>
2978 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2979 <option name="name" value="mergeDebugAndroidTestJniLibFolders" />
2980 </ExternalTaskPojo>
2981 <ExternalTaskPojo>
2982 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2983 <option name="name" value="extractProguardFiles" />
2984 </ExternalTaskPojo>
2985 <ExternalTaskPojo>
2986 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2987 <option name="name" value="transformClassesWithDexForDebugAndroidTest" />
2988 </ExternalTaskPojo>
2989 <ExternalTaskPojo>
2990 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2991 <option name="name" value="assembleDebugAndroidTest" />
2992 </ExternalTaskPojo>
2993 <ExternalTaskPojo>
2994 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2995 <option name="name" value="copyReleaseLint" />
2996 </ExternalTaskPojo>
2997 <ExternalTaskPojo>
2998 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
2999 <option name="name" value="processDebugJavaRes" />
3000 </ExternalTaskPojo>
3001 <ExternalTaskPojo>
3002 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3003 <option name="name" value="generateDebugAndroidTestAssets" />
3004 </ExternalTaskPojo>
3005 <ExternalTaskPojo>
3006 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3007 <option name="name" value="compileReleaseJavaWithJavac" />
3008 </ExternalTaskPojo>
3009 <ExternalTaskPojo>
3010 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3011 <option name="name" value="transformResourcesWithMergeJavaResForDebugAndroidTest" />
3012 </ExternalTaskPojo>
3013 <ExternalTaskPojo>
3014 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3015 <option name="name" value="prepareReleaseUnitTestDependencies" />
3016 </ExternalTaskPojo>
3017 <ExternalTaskPojo>
3018 <option name="description" value="Run unit tests for all variants." />
3019 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3020 <option name="name" value="test" />
3021 </ExternalTaskPojo>
3022 <ExternalTaskPojo>
3023 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3024 <option name="name" value="compileDebugNdk" />
3025 </ExternalTaskPojo>
3026 <ExternalTaskPojo>
3027 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3028 <option name="name" value="transformNative_libsWithMergeJniLibsForRelease" />
3029 </ExternalTaskPojo>
3030 <ExternalTaskPojo>
3031 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3032 <option name="name" value="mergeDebugAndroidTestResources" />
3033 </ExternalTaskPojo>
3034 <ExternalTaskPojo>
3035 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3036 <option name="name" value="preReleaseUnitTestBuild" />
3037 </ExternalTaskPojo>
3038 <ExternalTaskPojo>
3039 <option name="description" value="Prepare com.android.support:support-fragment:25.3.1" />
3040 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3041 <option name="name" value="prepareComAndroidSupportSupportFragment2531Library" />
3042 </ExternalTaskPojo>
3043 <ExternalTaskPojo>
3044 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3045 <option name="name" value="generateDebugResValues" />
3046 </ExternalTaskPojo>
3047 <ExternalTaskPojo>
3048 <option name="description" value="Runs all checks." />
3049 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3050 <option name="name" value="check" />
3051 </ExternalTaskPojo>
3052 <ExternalTaskPojo>
3053 <option name="description" value="Prepare com.android.support:support-compat:25.3.1" />
3054 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3055 <option name="name" value="prepareComAndroidSupportSupportCompat2531Library" />
3056 </ExternalTaskPojo>
3057 <ExternalTaskPojo>
3058 <option name="description" value="Run unit tests for the debug build." />
3059 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3060 <option name="name" value="testDebugUnitTest" />
3061 </ExternalTaskPojo>
3062 <ExternalTaskPojo>
3063 <option name="description" value="Installs and runs instrumentation tests for all flavors on connected devices." />
3064 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3065 <option name="name" value="connectedAndroidTest" />
3066 </ExternalTaskPojo>
3067 <ExternalTaskPojo>
3068 <option name="description" value="Prepare com.android.support:animated-vector-drawable:25.3.1" />
3069 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3070 <option name="name" value="prepareComAndroidSupportAnimatedVectorDrawable2531Library" />
3071 </ExternalTaskPojo>
3072 <ExternalTaskPojo>
3073 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3074 <option name="name" value="preBuild" />
3075 </ExternalTaskPojo>
3076 <ExternalTaskPojo>
3077 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3078 <option name="name" value="transformResourcesWithMergeJavaResForRelease" />
3079 </ExternalTaskPojo>
3080 <ExternalTaskPojo>
3081 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3082 <option name="name" value="compileReleaseSources" />
3083 </ExternalTaskPojo>
3084 <ExternalTaskPojo>
3085 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3086 <option name="name" value="compileReleaseUnitTestJavaWithJavac" />
3087 </ExternalTaskPojo>
3088 <ExternalTaskPojo>
3089 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3090 <option name="name" value="compileDebugShaders" />
3091 </ExternalTaskPojo>
3092 <ExternalTaskPojo>
3093 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3094 <option name="name" value="transformResourcesWithMergeJavaResForDebug" />
3095 </ExternalTaskPojo>
3096 <ExternalTaskPojo>
3097 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3098 <option name="name" value="compileReleaseAidl" />
3099 </ExternalTaskPojo>
3100 <ExternalTaskPojo>
3101 <option name="description" value="Prepare com.android.support.test:runner:0.5" />
3102 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3103 <option name="name" value="prepareComAndroidSupportTestRunner05Library" />
3104 </ExternalTaskPojo>
3105 <ExternalTaskPojo>
3106 <option name="description" value="Runs lint on the Release build." />
3107 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3108 <option name="name" value="lintRelease" />
3109 </ExternalTaskPojo>
3110 <ExternalTaskPojo>
3111 <option name="description" value="Assembles and tests this project and all projects that depend on it." />
3112 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3113 <option name="name" value="buildDependents" />
3114 </ExternalTaskPojo>
3115 <ExternalTaskPojo>
3116 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3117 <option name="name" value="generateDebugAssets" />
3118 </ExternalTaskPojo>
3119 <ExternalTaskPojo>
3120 <option name="description" value="Displays all buildscript dependencies declared in project ':mypresonallibrary'." />
3121 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3122 <option name="name" value="buildEnvironment" />
3123 </ExternalTaskPojo>
3124 <ExternalTaskPojo>
3125 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3126 <option name="name" value="checkDebugManifest" />
3127 </ExternalTaskPojo>
3128 <ExternalTaskPojo>
3129 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3130 <option name="name" value="mergeDebugJniLibFolders" />
3131 </ExternalTaskPojo>
3132 <ExternalTaskPojo>
3133 <option name="description" value="Prints out all the source sets defined in this project." />
3134 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3135 <option name="name" value="sourceSets" />
3136 </ExternalTaskPojo>
3137 <ExternalTaskPojo>
3138 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3139 <option name="name" value="transformResourcesWithMergeJavaResForDebugUnitTest" />
3140 </ExternalTaskPojo>
3141 <ExternalTaskPojo>
3142 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3143 <option name="name" value="mergeReleaseAssets" />
3144 </ExternalTaskPojo>
3145 <ExternalTaskPojo>
3146 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3147 <option name="name" value="compileDebugRenderscript" />
3148 </ExternalTaskPojo>
3149 <ExternalTaskPojo>
3150 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3151 <option name="name" value="packageDebugRenderscript" />
3152 </ExternalTaskPojo>
3153 <ExternalTaskPojo>
3154 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3155 <option name="name" value="generateReleaseBuildConfig" />
3156 </ExternalTaskPojo>
3157 <ExternalTaskPojo>
3158 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3159 <option name="name" value="prepareDebugUnitTestDependencies" />
3160 </ExternalTaskPojo>
3161 <ExternalTaskPojo>
3162 <option name="description" value="Prepare com.android.support.test:exposed-instrumentation-api-publish:0.5" />
3163 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3164 <option name="name" value="prepareComAndroidSupportTestExposedInstrumentationApiPublish05Library" />
3165 </ExternalTaskPojo>
3166 <ExternalTaskPojo>
3167 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3168 <option name="name" value="generateReleaseResources" />
3169 </ExternalTaskPojo>
3170 <ExternalTaskPojo>
3171 <option name="description" value="Displays the signing info for each variant." />
3172 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3173 <option name="name" value="signingReport" />
3174 </ExternalTaskPojo>
3175 <ExternalTaskPojo>
3176 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3177 <option name="name" value="compileDebugAndroidTestAidl" />
3178 </ExternalTaskPojo>
3179 <ExternalTaskPojo>
3180 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3181 <option name="name" value="mergeDebugAndroidTestShaders" />
3182 </ExternalTaskPojo>
3183 <ExternalTaskPojo>
3184 <option name="description" value="Deletes the build directory." />
3185 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3186 <option name="name" value="clean" />
3187 </ExternalTaskPojo>
3188 <ExternalTaskPojo>
3189 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3190 <option name="name" value="preDebugBuild" />
3191 </ExternalTaskPojo>
3192 <ExternalTaskPojo>
3193 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3194 <option name="name" value="transformNative_libsWithSyncJniLibsForDebug" />
3195 </ExternalTaskPojo>
3196 <ExternalTaskPojo>
3197 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3198 <option name="name" value="generateDebugBuildConfig" />
3199 </ExternalTaskPojo>
3200 <ExternalTaskPojo>
3201 <option name="description" value="Assembles and tests this project." />
3202 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3203 <option name="name" value="build" />
3204 </ExternalTaskPojo>
3205 <ExternalTaskPojo>
3206 <option name="description" value="Assembles all Release builds." />
3207 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3208 <option name="name" value="assembleRelease" />
3209 </ExternalTaskPojo>
3210 <ExternalTaskPojo>
3211 <option name="description" value="Prepare com.android.support.test.espresso:espresso-core:2.2.2" />
3212 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3213 <option name="name" value="prepareComAndroidSupportTestEspressoEspressoCore222Library" />
3214 </ExternalTaskPojo>
3215 <ExternalTaskPojo>
3216 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3217 <option name="name" value="compileDebugAndroidTestRenderscript" />
3218 </ExternalTaskPojo>
3219 <ExternalTaskPojo>
3220 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3221 <option name="name" value="generateDebugAndroidTestResources" />
3222 </ExternalTaskPojo>
3223 <ExternalTaskPojo>
3224 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3225 <option name="name" value="processDebugManifest" />
3226 </ExternalTaskPojo>
3227 <ExternalTaskPojo>
3228 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3229 <option name="name" value="packageDebugAndroidTest" />
3230 </ExternalTaskPojo>
3231 <ExternalTaskPojo>
3232 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3233 <option name="name" value="generateReleaseResValues" />
3234 </ExternalTaskPojo>
3235 <ExternalTaskPojo>
3236 <option name="description" value="Displays the properties of project ':mypresonallibrary'." />
3237 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/mypresonallibrary" />
3238 <option name="name" value="properties" />
3239 </ExternalTaskPojo>
3240 </list>
3241 </value>
3242 </entry>
3243 <entry key="$PROJECT_DIR$/pickerview">
3244 <value>
3245 <list>
3246 <ExternalTaskPojo>
3247 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3248 <option name="name" value="mergeDebugProguardFiles" />
3249 </ExternalTaskPojo>
3250 <ExternalTaskPojo>
3251 <option name="description" value="Displays the sub-projects of project ':pickerview'." />
3252 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3253 <option name="name" value="projects" />
3254 </ExternalTaskPojo>
3255 <ExternalTaskPojo>
3256 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3257 <option name="name" value="packageReleaseResources" />
3258 </ExternalTaskPojo>
3259 <ExternalTaskPojo>
3260 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3261 <option name="name" value="validateSigningDebugAndroidTest" />
3262 </ExternalTaskPojo>
3263 <ExternalTaskPojo>
3264 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3265 <option name="name" value="mavenAndroidJavadocs" />
3266 </ExternalTaskPojo>
3267 <ExternalTaskPojo>
3268 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3269 <option name="name" value="assembleReleaseUnitTest" />
3270 </ExternalTaskPojo>
3271 <ExternalTaskPojo>
3272 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3273 <option name="name" value="prepareDebugDependencies" />
3274 </ExternalTaskPojo>
3275 <ExternalTaskPojo>
3276 <option name="description" value="Assembles a bundle containing the library in debug." />
3277 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3278 <option name="name" value="bundleDebug" />
3279 </ExternalTaskPojo>
3280 <ExternalTaskPojo>
3281 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3282 <option name="name" value="copyDebugLint" />
3283 </ExternalTaskPojo>
3284 <ExternalTaskPojo>
3285 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3286 <option name="name" value="processReleaseJavaRes" />
3287 </ExternalTaskPojo>
3288 <ExternalTaskPojo>
3289 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3290 <option name="name" value="generateReleaseAssets" />
3291 </ExternalTaskPojo>
3292 <ExternalTaskPojo>
3293 <option name="description" value="Runs lint on the Debug build." />
3294 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3295 <option name="name" value="lintDebug" />
3296 </ExternalTaskPojo>
3297 <ExternalTaskPojo>
3298 <option name="description" value="Assembles a bundle containing the library in release." />
3299 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3300 <option name="name" value="bundleRelease" />
3301 </ExternalTaskPojo>
3302 <ExternalTaskPojo>
3303 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3304 <option name="name" value="assembleDebugUnitTest" />
3305 </ExternalTaskPojo>
3306 <ExternalTaskPojo>
3307 <option name="description" value="Creates a version of android.jar that's suitable for unit tests." />
3308 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3309 <option name="name" value="mockableAndroidJar" />
3310 </ExternalTaskPojo>
3311 <ExternalTaskPojo>
3312 <option name="description" value="Displays the configuration model of project ':pickerview'. [incubating]" />
3313 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3314 <option name="name" value="model" />
3315 </ExternalTaskPojo>
3316 <ExternalTaskPojo>
3317 <option name="description" value="Displays the tasks runnable from project ':pickerview'." />
3318 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3319 <option name="name" value="tasks" />
3320 </ExternalTaskPojo>
3321 <ExternalTaskPojo>
3322 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3323 <option name="name" value="compileDebugSources" />
3324 </ExternalTaskPojo>
3325 <ExternalTaskPojo>
3326 <option name="description" value="Generates the Maven POM file for publication 'maven'." />
3327 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3328 <option name="name" value="generatePomFileForMavenPublication" />
3329 </ExternalTaskPojo>
3330 <ExternalTaskPojo>
3331 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3332 <option name="name" value="packageReleaseRenderscript" />
3333 </ExternalTaskPojo>
3334 <ExternalTaskPojo>
3335 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3336 <option name="name" value="mergeReleaseProguardFiles" />
3337 </ExternalTaskPojo>
3338 <ExternalTaskPojo>
3339 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3340 <option name="name" value="incrementalDebugJavaCompilationSafeguard" />
3341 </ExternalTaskPojo>
3342 <ExternalTaskPojo>
3343 <option name="description" value="Runs all device checks using Device Providers and Test Servers." />
3344 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3345 <option name="name" value="deviceCheck" />
3346 </ExternalTaskPojo>
3347 <ExternalTaskPojo>
3348 <option name="description" value="Displays all dependencies declared in project ':pickerview'." />
3349 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3350 <option name="name" value="dependencies" />
3351 </ExternalTaskPojo>
3352 <ExternalTaskPojo>
3353 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3354 <option name="name" value="processDebugResources" />
3355 </ExternalTaskPojo>
3356 <ExternalTaskPojo>
3357 <option name="description" value="Runs lint on all variants." />
3358 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3359 <option name="name" value="lint" />
3360 </ExternalTaskPojo>
3361 <ExternalTaskPojo>
3362 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3363 <option name="name" value="compileReleaseNdk" />
3364 </ExternalTaskPojo>
3365 <ExternalTaskPojo>
3366 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3367 <option name="name" value="generateDebugResources" />
3368 </ExternalTaskPojo>
3369 <ExternalTaskPojo>
3370 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3371 <option name="name" value="compileDebugJavaWithJavac" />
3372 </ExternalTaskPojo>
3373 <ExternalTaskPojo>
3374 <option name="description" value="Assembles and tests this project and all projects it depends on." />
3375 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3376 <option name="name" value="buildNeeded" />
3377 </ExternalTaskPojo>
3378 <ExternalTaskPojo>
3379 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3380 <option name="name" value="generateDebugAndroidTestBuildConfig" />
3381 </ExternalTaskPojo>
3382 <ExternalTaskPojo>
3383 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3384 <option name="name" value="processDebugUnitTestJavaRes" />
3385 </ExternalTaskPojo>
3386 <ExternalTaskPojo>
3387 <option name="description" value="Run unit tests for the release build." />
3388 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3389 <option name="name" value="testReleaseUnitTest" />
3390 </ExternalTaskPojo>
3391 <ExternalTaskPojo>
3392 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3393 <option name="name" value="assembleDefault" />
3394 </ExternalTaskPojo>
3395 <ExternalTaskPojo>
3396 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3397 <option name="name" value="compileDebugAndroidTestShaders" />
3398 </ExternalTaskPojo>
3399 <ExternalTaskPojo>
3400 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3401 <option name="name" value="mergeDebugShaders" />
3402 </ExternalTaskPojo>
3403 <ExternalTaskPojo>
3404 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3405 <option name="name" value="transformNative_libsWithMergeJniLibsForDebugAndroidTest" />
3406 </ExternalTaskPojo>
3407 <ExternalTaskPojo>
3408 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3409 <option name="name" value="compileDebugAndroidTestJavaWithJavac" />
3410 </ExternalTaskPojo>
3411 <ExternalTaskPojo>
3412 <option name="description" value="Displays the components produced by project ':pickerview'. [incubating]" />
3413 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3414 <option name="name" value="components" />
3415 </ExternalTaskPojo>
3416 <ExternalTaskPojo>
3417 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3418 <option name="name" value="compileReleaseRenderscript" />
3419 </ExternalTaskPojo>
3420 <ExternalTaskPojo>
3421 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3422 <option name="name" value="transformNative_libsWithSyncJniLibsForRelease" />
3423 </ExternalTaskPojo>
3424 <ExternalTaskPojo>
3425 <option name="description" value="Assembles all Debug builds." />
3426 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3427 <option name="name" value="assembleDebug" />
3428 </ExternalTaskPojo>
3429 <ExternalTaskPojo>
3430 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3431 <option name="name" value="processDebugAndroidTestManifest" />
3432 </ExternalTaskPojo>
3433 <ExternalTaskPojo>
3434 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3435 <option name="name" value="compileDebugUnitTestJavaWithJavac" />
3436 </ExternalTaskPojo>
3437 <ExternalTaskPojo>
3438 <option name="description" value="Publishes Maven publication 'maven' to the local Maven repository." />
3439 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3440 <option name="name" value="publishMavenPublicationToMavenLocal" />
3441 </ExternalTaskPojo>
3442 <ExternalTaskPojo>
3443 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3444 <option name="name" value="transformResourcesWithMergeJavaResForReleaseUnitTest" />
3445 </ExternalTaskPojo>
3446 <ExternalTaskPojo>
3447 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3448 <option name="name" value="preDebugAndroidTestBuild" />
3449 </ExternalTaskPojo>
3450 <ExternalTaskPojo>
3451 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3452 <option name="name" value="processDebugAndroidTestJavaRes" />
3453 </ExternalTaskPojo>
3454 <ExternalTaskPojo>
3455 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3456 <option name="name" value="processReleaseUnitTestJavaRes" />
3457 </ExternalTaskPojo>
3458 <ExternalTaskPojo>
3459 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3460 <option name="name" value="transformClassesAndResourcesWithSyncLibJarsForRelease" />
3461 </ExternalTaskPojo>
3462 <ExternalTaskPojo>
3463 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3464 <option name="name" value="compileReleaseShaders" />
3465 </ExternalTaskPojo>
3466 <ExternalTaskPojo>
3467 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3468 <option name="name" value="mavenAndroidJavadocsJar" />
3469 </ExternalTaskPojo>
3470 <ExternalTaskPojo>
3471 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3472 <option name="name" value="generateDebugAndroidTestSources" />
3473 </ExternalTaskPojo>
3474 <ExternalTaskPojo>
3475 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3476 <option name="name" value="prepareDebugAndroidTestDependencies" />
3477 </ExternalTaskPojo>
3478 <ExternalTaskPojo>
3479 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3480 <option name="name" value="incrementalDebugAndroidTestJavaCompilationSafeguard" />
3481 </ExternalTaskPojo>
3482 <ExternalTaskPojo>
3483 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3484 <option name="name" value="transformClassesAndResourcesWithSyncLibJarsForDebug" />
3485 </ExternalTaskPojo>
3486 <ExternalTaskPojo>
3487 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3488 <option name="name" value="checkReleaseManifest" />
3489 </ExternalTaskPojo>
3490 <ExternalTaskPojo>
3491 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3492 <option name="name" value="packageDebugResources" />
3493 </ExternalTaskPojo>
3494 <ExternalTaskPojo>
3495 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3496 <option name="name" value="compileDebugAndroidTestSources" />
3497 </ExternalTaskPojo>
3498 <ExternalTaskPojo>
3499 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3500 <option name="name" value="mergeReleaseJniLibFolders" />
3501 </ExternalTaskPojo>
3502 <ExternalTaskPojo>
3503 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3504 <option name="name" value="prepareReleaseDependencies" />
3505 </ExternalTaskPojo>
3506 <ExternalTaskPojo>
3507 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3508 <option name="name" value="processReleaseResources" />
3509 </ExternalTaskPojo>
3510 <ExternalTaskPojo>
3511 <option name="description" value="Installs and runs instrumentation tests using all Device Providers." />
3512 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3513 <option name="name" value="deviceAndroidTest" />
3514 </ExternalTaskPojo>
3515 <ExternalTaskPojo>
3516 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3517 <option name="name" value="mergeDebugAndroidTestAssets" />
3518 </ExternalTaskPojo>
3519 <ExternalTaskPojo>
3520 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3521 <option name="name" value="processReleaseManifest" />
3522 </ExternalTaskPojo>
3523 <ExternalTaskPojo>
3524 <option name="description" value="Uninstalls the android (on device) tests for the Debug build." />
3525 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3526 <option name="name" value="uninstallDebugAndroidTest" />
3527 </ExternalTaskPojo>
3528 <ExternalTaskPojo>
3529 <option name="description" value="Displays the insight into a specific dependency in project ':pickerview'." />
3530 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3531 <option name="name" value="dependencyInsight" />
3532 </ExternalTaskPojo>
3533 <ExternalTaskPojo>
3534 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3535 <option name="name" value="generateReleaseSources" />
3536 </ExternalTaskPojo>
3537 <ExternalTaskPojo>
3538 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3539 <option name="name" value="incrementalReleaseUnitTestJavaCompilationSafeguard" />
3540 </ExternalTaskPojo>
3541 <ExternalTaskPojo>
3542 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3543 <option name="name" value="preReleaseBuild" />
3544 </ExternalTaskPojo>
3545 <ExternalTaskPojo>
3546 <option name="description" value="Assembles all variants of all applications and secondary packages." />
3547 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3548 <option name="name" value="assemble" />
3549 </ExternalTaskPojo>
3550 <ExternalTaskPojo>
3551 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3552 <option name="name" value="incrementalDebugUnitTestJavaCompilationSafeguard" />
3553 </ExternalTaskPojo>
3554 <ExternalTaskPojo>
3555 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3556 <option name="name" value="incrementalReleaseJavaCompilationSafeguard" />
3557 </ExternalTaskPojo>
3558 <ExternalTaskPojo>
3559 <option name="description" value="Displays a help message." />
3560 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3561 <option name="name" value="help" />
3562 </ExternalTaskPojo>
3563 <ExternalTaskPojo>
3564 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3565 <option name="name" value="compileReleaseUnitTestSources" />
3566 </ExternalTaskPojo>
3567 <ExternalTaskPojo>
3568 <option name="description" value="Installs the android (on device) tests for the Debug build." />
3569 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3570 <option name="name" value="installDebugAndroidTest" />
3571 </ExternalTaskPojo>
3572 <ExternalTaskPojo>
3573 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3574 <option name="name" value="mergeDebugAssets" />
3575 </ExternalTaskPojo>
3576 <ExternalTaskPojo>
3577 <option name="description" value="Runs all device checks on currently connected devices." />
3578 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3579 <option name="name" value="connectedCheck" />
3580 </ExternalTaskPojo>
3581 <ExternalTaskPojo>
3582 <option name="description" value="Installs and runs the tests for debug on connected devices." />
3583 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3584 <option name="name" value="connectedDebugAndroidTest" />
3585 </ExternalTaskPojo>
3586 <ExternalTaskPojo>
3587 <option name="description" value="Uninstall all applications." />
3588 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3589 <option name="name" value="uninstallAll" />
3590 </ExternalTaskPojo>
3591 <ExternalTaskPojo>
3592 <option name="description" value="Assembles all the Test applications." />
3593 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3594 <option name="name" value="assembleAndroidTest" />
3595 </ExternalTaskPojo>
3596 <ExternalTaskPojo>
3597 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3598 <option name="name" value="processDebugAndroidTestResources" />
3599 </ExternalTaskPojo>
3600 <ExternalTaskPojo>
3601 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3602 <option name="name" value="transformNative_libsWithMergeJniLibsForDebug" />
3603 </ExternalTaskPojo>
3604 <ExternalTaskPojo>
3605 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3606 <option name="name" value="compileDebugAidl" />
3607 </ExternalTaskPojo>
3608 <ExternalTaskPojo>
3609 <option name="description" value="Publishes artifacts to bintray.com." />
3610 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3611 <option name="name" value="bintrayUpload" />
3612 </ExternalTaskPojo>
3613 <ExternalTaskPojo>
3614 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3615 <option name="name" value="preDebugUnitTestBuild" />
3616 </ExternalTaskPojo>
3617 <ExternalTaskPojo>
3618 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3619 <option name="name" value="compileLint" />
3620 </ExternalTaskPojo>
3621 <ExternalTaskPojo>
3622 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3623 <option name="name" value="generateDebugAndroidTestResValues" />
3624 </ExternalTaskPojo>
3625 <ExternalTaskPojo>
3626 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3627 <option name="name" value="mergeReleaseShaders" />
3628 </ExternalTaskPojo>
3629 <ExternalTaskPojo>
3630 <option name="description" value="Displays the Android dependencies of the project." />
3631 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3632 <option name="name" value="androidDependencies" />
3633 </ExternalTaskPojo>
3634 <ExternalTaskPojo>
3635 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3636 <option name="name" value="compileDebugAndroidTestNdk" />
3637 </ExternalTaskPojo>
3638 <ExternalTaskPojo>
3639 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3640 <option name="name" value="compileDebugUnitTestSources" />
3641 </ExternalTaskPojo>
3642 <ExternalTaskPojo>
3643 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3644 <option name="name" value="generateDebugSources" />
3645 </ExternalTaskPojo>
3646 <ExternalTaskPojo>
3647 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3648 <option name="name" value="mergeDebugAndroidTestJniLibFolders" />
3649 </ExternalTaskPojo>
3650 <ExternalTaskPojo>
3651 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3652 <option name="name" value="extractProguardFiles" />
3653 </ExternalTaskPojo>
3654 <ExternalTaskPojo>
3655 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3656 <option name="name" value="mavenAndroidSourcesJar" />
3657 </ExternalTaskPojo>
3658 <ExternalTaskPojo>
3659 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3660 <option name="name" value="transformClassesWithDexForDebugAndroidTest" />
3661 </ExternalTaskPojo>
3662 <ExternalTaskPojo>
3663 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3664 <option name="name" value="assembleDebugAndroidTest" />
3665 </ExternalTaskPojo>
3666 <ExternalTaskPojo>
3667 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3668 <option name="name" value="copyReleaseLint" />
3669 </ExternalTaskPojo>
3670 <ExternalTaskPojo>
3671 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3672 <option name="name" value="processDebugJavaRes" />
3673 </ExternalTaskPojo>
3674 <ExternalTaskPojo>
3675 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3676 <option name="name" value="generateDebugAndroidTestAssets" />
3677 </ExternalTaskPojo>
3678 <ExternalTaskPojo>
3679 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3680 <option name="name" value="compileReleaseJavaWithJavac" />
3681 </ExternalTaskPojo>
3682 <ExternalTaskPojo>
3683 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3684 <option name="name" value="transformResourcesWithMergeJavaResForDebugAndroidTest" />
3685 </ExternalTaskPojo>
3686 <ExternalTaskPojo>
3687 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3688 <option name="name" value="prepareReleaseUnitTestDependencies" />
3689 </ExternalTaskPojo>
3690 <ExternalTaskPojo>
3691 <option name="description" value="Run unit tests for all variants." />
3692 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3693 <option name="name" value="test" />
3694 </ExternalTaskPojo>
3695 <ExternalTaskPojo>
3696 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3697 <option name="name" value="compileDebugNdk" />
3698 </ExternalTaskPojo>
3699 <ExternalTaskPojo>
3700 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3701 <option name="name" value="transformNative_libsWithMergeJniLibsForRelease" />
3702 </ExternalTaskPojo>
3703 <ExternalTaskPojo>
3704 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3705 <option name="name" value="mergeDebugAndroidTestResources" />
3706 </ExternalTaskPojo>
3707 <ExternalTaskPojo>
3708 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3709 <option name="name" value="preReleaseUnitTestBuild" />
3710 </ExternalTaskPojo>
3711 <ExternalTaskPojo>
3712 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3713 <option name="name" value="generateDebugResValues" />
3714 </ExternalTaskPojo>
3715 <ExternalTaskPojo>
3716 <option name="description" value="Runs all checks." />
3717 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3718 <option name="name" value="check" />
3719 </ExternalTaskPojo>
3720 <ExternalTaskPojo>
3721 <option name="description" value="Run unit tests for the debug build." />
3722 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3723 <option name="name" value="testDebugUnitTest" />
3724 </ExternalTaskPojo>
3725 <ExternalTaskPojo>
3726 <option name="description" value="Installs and runs instrumentation tests for all flavors on connected devices." />
3727 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3728 <option name="name" value="connectedAndroidTest" />
3729 </ExternalTaskPojo>
3730 <ExternalTaskPojo>
3731 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3732 <option name="name" value="preBuild" />
3733 </ExternalTaskPojo>
3734 <ExternalTaskPojo>
3735 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3736 <option name="name" value="transformResourcesWithMergeJavaResForRelease" />
3737 </ExternalTaskPojo>
3738 <ExternalTaskPojo>
3739 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3740 <option name="name" value="compileReleaseSources" />
3741 </ExternalTaskPojo>
3742 <ExternalTaskPojo>
3743 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3744 <option name="name" value="compileReleaseUnitTestJavaWithJavac" />
3745 </ExternalTaskPojo>
3746 <ExternalTaskPojo>
3747 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3748 <option name="name" value="compileDebugShaders" />
3749 </ExternalTaskPojo>
3750 <ExternalTaskPojo>
3751 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3752 <option name="name" value="transformResourcesWithMergeJavaResForDebug" />
3753 </ExternalTaskPojo>
3754 <ExternalTaskPojo>
3755 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3756 <option name="name" value="compileReleaseAidl" />
3757 </ExternalTaskPojo>
3758 <ExternalTaskPojo>
3759 <option name="description" value="Runs lint on the Release build." />
3760 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3761 <option name="name" value="lintRelease" />
3762 </ExternalTaskPojo>
3763 <ExternalTaskPojo>
3764 <option name="description" value="Assembles and tests this project and all projects that depend on it." />
3765 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3766 <option name="name" value="buildDependents" />
3767 </ExternalTaskPojo>
3768 <ExternalTaskPojo>
3769 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3770 <option name="name" value="generateDebugAssets" />
3771 </ExternalTaskPojo>
3772 <ExternalTaskPojo>
3773 <option name="description" value="Displays all buildscript dependencies declared in project ':pickerview'." />
3774 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3775 <option name="name" value="buildEnvironment" />
3776 </ExternalTaskPojo>
3777 <ExternalTaskPojo>
3778 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3779 <option name="name" value="checkDebugManifest" />
3780 </ExternalTaskPojo>
3781 <ExternalTaskPojo>
3782 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3783 <option name="name" value="mergeDebugJniLibFolders" />
3784 </ExternalTaskPojo>
3785 <ExternalTaskPojo>
3786 <option name="description" value="Prints out all the source sets defined in this project." />
3787 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3788 <option name="name" value="sourceSets" />
3789 </ExternalTaskPojo>
3790 <ExternalTaskPojo>
3791 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3792 <option name="name" value="transformResourcesWithMergeJavaResForDebugUnitTest" />
3793 </ExternalTaskPojo>
3794 <ExternalTaskPojo>
3795 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3796 <option name="name" value="mergeReleaseAssets" />
3797 </ExternalTaskPojo>
3798 <ExternalTaskPojo>
3799 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3800 <option name="name" value="compileDebugRenderscript" />
3801 </ExternalTaskPojo>
3802 <ExternalTaskPojo>
3803 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3804 <option name="name" value="packageDebugRenderscript" />
3805 </ExternalTaskPojo>
3806 <ExternalTaskPojo>
3807 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3808 <option name="name" value="generateReleaseBuildConfig" />
3809 </ExternalTaskPojo>
3810 <ExternalTaskPojo>
3811 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3812 <option name="name" value="prepareDebugUnitTestDependencies" />
3813 </ExternalTaskPojo>
3814 <ExternalTaskPojo>
3815 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3816 <option name="name" value="generateReleaseResources" />
3817 </ExternalTaskPojo>
3818 <ExternalTaskPojo>
3819 <option name="description" value="Displays the signing info for each variant." />
3820 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3821 <option name="name" value="signingReport" />
3822 </ExternalTaskPojo>
3823 <ExternalTaskPojo>
3824 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3825 <option name="name" value="compileDebugAndroidTestAidl" />
3826 </ExternalTaskPojo>
3827 <ExternalTaskPojo>
3828 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3829 <option name="name" value="mergeDebugAndroidTestShaders" />
3830 </ExternalTaskPojo>
3831 <ExternalTaskPojo>
3832 <option name="description" value="Deletes the build directory." />
3833 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3834 <option name="name" value="clean" />
3835 </ExternalTaskPojo>
3836 <ExternalTaskPojo>
3837 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3838 <option name="name" value="preDebugBuild" />
3839 </ExternalTaskPojo>
3840 <ExternalTaskPojo>
3841 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3842 <option name="name" value="transformNative_libsWithSyncJniLibsForDebug" />
3843 </ExternalTaskPojo>
3844 <ExternalTaskPojo>
3845 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3846 <option name="name" value="generateDebugBuildConfig" />
3847 </ExternalTaskPojo>
3848 <ExternalTaskPojo>
3849 <option name="description" value="Assembles and tests this project." />
3850 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3851 <option name="name" value="build" />
3852 </ExternalTaskPojo>
3853 <ExternalTaskPojo>
3854 <option name="description" value="Assembles all Release builds." />
3855 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3856 <option name="name" value="assembleRelease" />
3857 </ExternalTaskPojo>
3858 <ExternalTaskPojo>
3859 <option name="description" value="Publishes all publications produced by this project." />
3860 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3861 <option name="name" value="publish" />
3862 </ExternalTaskPojo>
3863 <ExternalTaskPojo>
3864 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3865 <option name="name" value="compileDebugAndroidTestRenderscript" />
3866 </ExternalTaskPojo>
3867 <ExternalTaskPojo>
3868 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3869 <option name="name" value="generateDebugAndroidTestResources" />
3870 </ExternalTaskPojo>
3871 <ExternalTaskPojo>
3872 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3873 <option name="name" value="processDebugManifest" />
3874 </ExternalTaskPojo>
3875 <ExternalTaskPojo>
3876 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3877 <option name="name" value="packageDebugAndroidTest" />
3878 </ExternalTaskPojo>
3879 <ExternalTaskPojo>
3880 <option name="description" value="Publishes all Maven publications produced by this project to the local Maven cache." />
3881 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3882 <option name="name" value="publishToMavenLocal" />
3883 </ExternalTaskPojo>
3884 <ExternalTaskPojo>
3885 <option name="description" value="Uploads all artifacts belonging to configuration ':pickerview:archives'" />
3886 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3887 <option name="name" value="uploadArchives" />
3888 </ExternalTaskPojo>
3889 <ExternalTaskPojo>
3890 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3891 <option name="name" value="generateReleaseResValues" />
3892 </ExternalTaskPojo>
3893 <ExternalTaskPojo>
3894 <option name="description" value="Displays the properties of project ':pickerview'." />
3895 <option name="linkedExternalProjectPath" value="$PROJECT_DIR$/pickerview" />
3896 <option name="name" value="properties" />
3897 </ExternalTaskPojo>
3898 </list>
3899 </value>
3900 </entry>
3901 </map>
3902 </option>
3903 <option name="modificationStamps">
3904 <map>
3905 <entry key="$PROJECT_DIR$" value="9025162455837" />
3906 <entry key="D:\AdroidStotu\presonalcenter\PersonalCenter" value="9025162897797" />
3907 </map>
3908 </option>
3909 <option name="projectBuildClasspath">
3910 <map>
3911 <entry key="$PROJECT_DIR$">
3912 <value>
3913 <ExternalProjectBuildClasspathPojo>
3914 <option name="modulesBuildClasspath">
3915 <map>
3916 <entry key="$PROJECT_DIR$">
3917 <value>
3918 <ExternalModuleBuildClasspathPojo>
3919 <option name="entries">
3920 <list>
3921 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle/2.2.3/344060a1bf4666fea5590eeee815fc2a79b5235a/gradle-2.2.3-sources.jar" />
3922 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle/2.2.3/7b8f79621d95e3ce1e95c0852db14d9d7e1d1951/gradle-2.2.3.jar" />
3923 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.novoda/bintray-release/0.3.4/cb71174eee0e8a07208baa52ee6af7f858445b1a/bintray-release-0.3.4-sources.jar" />
3924 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.novoda/bintray-release/0.3.4/101de762c1aa70b99601c94ccf4879695f8559d3/bintray-release-0.3.4.jar" />
3925 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.dcendents/android-maven-gradle-plugin/1.5/2c1a13fd33e662909442ce13ff669e894f225ae0/android-maven-gradle-plugin-1.5-sources.jar" />
3926 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.dcendents/android-maven-gradle-plugin/1.5/f98b3f3c79c3b918043d636f8abbf59f937306b2/android-maven-gradle-plugin-1.5.jar" />
3927 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-core/2.2.3/bfc5ed39e7ac5890d6cf80e8c5545dab9021b810/gradle-core-2.2.3-sources.jar" />
3928 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-core/2.2.3/3a777b0626810e0ccdced7d750ac4b60c279616c/gradle-core-2.2.3.jar" />
3929 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jfrog.bintray.gradle/gradle-bintray-plugin/1.3.1/c66b2388a77bbf5750b1fadff9b1ccbe3e84a86d/gradle-bintray-plugin-1.3.1-sources.jar" />
3930 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jfrog.bintray.gradle/gradle-bintray-plugin/1.3.1/12a572adeff745e7a320486f4345fad05fa23555/gradle-bintray-plugin-1.3.1.jar" />
3931 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder/2.2.3/8d059a6102806269aee14d470bc73d44c0bfa4f0/builder-2.2.3-sources.jar" />
3932 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder/2.2.3/13e7339544e824a3a5f8ecff42173c013791578b/builder-2.2.3.jar" />
3933 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint/25.2.3/9ca2dd056b351c893bae1c7ac1232454ec328517/lint-25.2.3-sources.jar" />
3934 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint/25.2.3/aa03a3669f2913b9bc6f5f4fba4418f974e48cb7/lint-25.2.3.jar" />
3935 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0.0-deprecated-use-gradle-api.jar" />
3936 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-api/2.2.3/9e3531016922fe9b88fb9f7ae9f5b0dd3289ae4f/gradle-api-2.2.3-sources.jar" />
3937 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-api/2.2.3/9a45614f789d4aab624d2a61983263885f42b615/gradle-api-2.2.3.jar" />
3938 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/compilerCommon/2.2.3/aee7a865f76af8f91963ce3f8b3f62070f6eeeb/compilerCommon-2.2.3-sources.jar" />
3939 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/compilerCommon/2.2.3/8c3829022a54acd042b5382a4a873ee2d64c29ee/compilerCommon-2.2.3.jar" />
3940 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm/5.0.4/asm-5.0.4.jar" />
3941 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-commons/5.0.4/asm-commons-5.0.4.jar" />
3942 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-gradle/5.2.1/proguard-gradle-5.2.1-sources.jar" />
3943 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-gradle/5.2.1/proguard-gradle-5.2.1.jar" />
3944 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/jacoco/org.jacoco.core/0.7.5.201505241946/org.jacoco.core-0.7.5.201505241946.jar" />
3945 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/jacoco/org.jacoco.report/0.7.5.201505241946/org.jacoco.report-0.7.5.201505241946.jar" />
3946 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/jopt-simple/jopt-simple/4.9/jopt-simple-4.9.jar" />
3947 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar" />
3948 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr/3.5.2/antlr-3.5.2.jar" />
3949 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy.modules.http-builder/http-builder/0.7.2/f1860181de06236f28f3f247aed57fa4631016d8/http-builder-0.7.2-sources.jar" />
3950 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy.modules.http-builder/http-builder/0.7.2/323092cd786480311c1cf693770f9e6fc20a8bef/http-builder-0.7.2.jar" />
3951 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-model/2.2.3/1f3c26cd56ec3199fc49634cfa37647cd811a8c3/builder-model-2.2.3-sources.jar" />
3952 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-model/2.2.3/eddf6035ce0a31651527b4c3cc239428e877c43a/builder-model-2.2.3.jar" />
3953 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-test-api/2.2.3/746c5f19def7dfc91844b3edf2f99b2356aa4610/builder-test-api-2.2.3-sources.jar" />
3954 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-test-api/2.2.3/700079fc243c217dbd6250ac01d2d6210ca8a0d6/builder-test-api-2.2.3.jar" />
3955 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdklib/25.2.3/5743d9517e0aa71e0fbcba2a20affba66b2b2753/sdklib-25.2.3-sources.jar" />
3956 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdklib/25.2.3/9f12cfc56b1df4e42fa2b73f9936b586b9a56a2/sdklib-25.2.3.jar" />
3957 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdk-common/25.2.3/30ff0547c45f5f079a7fd9c9ac69f93d3b0e955f/sdk-common-25.2.3-sources.jar" />
3958 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdk-common/25.2.3/2c49ca3df5bb961473b096bab2a615a7cda50dc/sdk-common-25.2.3.jar" />
3959 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/common/25.2.3/3ef7cd06f588852bae10a304d3855a2d51d6d642/common-25.2.3-sources.jar" />
3960 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/common/25.2.3/255aa01048bebb511d828c6a5fc668df13b8f39d/common-25.2.3.jar" />
3961 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/manifest-merger/25.2.3/34adfc7b2d9e3ae920913b46b8b075cfa2a7afb2/manifest-merger-25.2.3-sources.jar" />
3962 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/manifest-merger/25.2.3/d0212c507be4c38c39f4ee06a7df5a44f500ed3b/manifest-merger-25.2.3.jar" />
3963 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.ddms/ddmlib/25.2.3/9bb4f6b357fe6d260e5c880717c1ece8a6bae6ea/ddmlib-25.2.3-sources.jar" />
3964 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.ddms/ddmlib/25.2.3/2b66df9156f476b0ccee44b378cd09073118ff59/ddmlib-25.2.3.jar" />
3965 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/jack/jack-api/0.11.0/jack-api-0.11.0.jar" />
3966 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/jill/jill-api/0.10.0/jill-api-0.10.0.jar" />
3967 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/protos/25.2.3/a9fba9b00f139a86bd907cad4c084686ff7b1a8/protos-25.2.3-sources.jar" />
3968 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/protos/25.2.3/821098054f9667d0f2536d7f2d0200d8bdd9c898/protos-25.2.3.jar" />
3969 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/shared/25.2.3/9d18a216c427959ca0e5580fb1b9b7433ce01c73/shared-25.2.3-sources.jar" />
3970 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/shared/25.2.3/785426dac20cfe596e4cf36d01aad930ffdcb05c/shared-25.2.3.jar" />
3971 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/tracker/25.2.3/8cfb7881aaada4d0fe28c6e2ab56b7150ff8bf8a/tracker-25.2.3-sources.jar" />
3972 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/tracker/25.2.3/c807f7b3d9aa3cee795ecac620d22c5ca7dd92e1/tracker-25.2.3.jar" />
3973 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/squareup/javawriter/2.5.0/javawriter-2.5.0-sources.jar" />
3974 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/squareup/javawriter/2.5.0/javawriter-2.5.0.jar" />
3975 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48-sources.jar" />
3976 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48.jar" />
3977 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48-sources.jar" />
3978 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48.jar" />
3979 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-tree/5.0.4/asm-tree-5.0.4.jar" />
3980 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-checks/25.2.3/819e632d46915e2772112e07b779cc878cad4a88/lint-checks-25.2.3-sources.jar" />
3981 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-checks/25.2.3/eae71c1f5ce54195dc821133e3a5df8145de8ff5/lint-checks-25.2.3.jar" />
3982 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/eclipse/jdt/core/compiler/ecj/4.5.1/ecj-4.5.1.jar" />
3983 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/guava/guava/18.0/guava-18.0.jar" />
3984 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/baseLibrary/2.2.3/212ef3aaf0963bf1985c999e1daa4e8c43825a3f/baseLibrary-2.2.3-sources.jar" />
3985 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/baseLibrary/2.2.3/b4b51d1925cdfda98fd861230c1ecb5855500129/baseLibrary-2.2.3.jar" />
3986 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr4/4.5.3/antlr4-4.5.3.jar" />
3987 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-io/commons-io/2.4/commons-io-2.4-sources.jar" />
3988 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-io/commons-io/2.4/commons-io-2.4.jar" />
3989 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/googlecode/juniversalchardet/juniversalchardet/1.0.3/juniversalchardet-1.0.3.jar" />
3990 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/annotations/25.2.3/14970b6fa3881b4622abdec9d64866a687261236/annotations-25.2.3-sources.jar" />
3991 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/annotations/25.2.3/a9970f79003cbf4aaaf26a5590aca7066f209347/annotations-25.2.3.jar" />
3992 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-base/5.2.1/proguard-base-5.2.1-sources.jar" />
3993 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-base/5.2.1/proguard-base-5.2.1.jar" />
3994 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-debug-all/5.0.1/asm-debug-all-5.0.1-sources.jar" />
3995 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-debug-all/5.0.1/asm-debug-all-5.0.1.jar" />
3996 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr-runtime/3.5.2/antlr-runtime-3.5.2.jar" />
3997 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/ST4/4.0.8/ST4-4.0.8.jar" />
3998 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.2.1/6b27312b9c28b59aaeb6c21f3490045690c703d3/httpclient-4.2.1-sources.jar" />
3999 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.2.1/b69bd03af60bf487b3ae1209a644ecac587bf6fc/httpclient-4.2.1.jar" />
4000 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.json-lib/json-lib/2.3/f35340c0a0380141f62c72b76c8fb4bfa638d8c1/json-lib-2.3-jdk15.jar" />
4001 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.16/2d40ea21fae95418331ddc66efb6744a38bf59a/nekohtml-1.9.16-sources.jar" />
4002 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.16/61e35204e5a8fdb864152f84e2e3b33ab56f50ab/nekohtml-1.9.16.jar" />
4003 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xml-resolver/xml-resolver/1.2/6b72432ea1c5296783007365bb7c9a6b39dfb730/xml-resolver-1.2-sources.jar" />
4004 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xml-resolver/xml-resolver/1.2/3d0f97750b3a03e0971831566067754ba4bfd68c/xml-resolver-1.2.jar" />
4005 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.layoutlib/layoutlib-api/25.2.3/2688434b8868bd41526b79d49330116b2da464a9/layoutlib-api-25.2.3-sources.jar" />
4006 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.layoutlib/layoutlib-api/25.2.3/ead9944caa7cba814184148efe69faf8896f4478/layoutlib-api-25.2.3.jar" />
4007 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/dvlib/25.2.3/bcca419668a00afc455b481a5541c43083f1cd08/dvlib-25.2.3-sources.jar" />
4008 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/dvlib/25.2.3/5afd79f645811a98c0519141cc13900c659091a8/dvlib-25.2.3.jar" />
4009 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/repository/25.2.3/b17b0ce2b6c0063ee4ebcd49becc4054cb6b7e98/repository-25.2.3-sources.jar" />
4010 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/repository/25.2.3/179dee8115834f40bd9b39675da3a0273174c3ca/repository-25.2.3.jar" />
4011 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/code/gson/gson/2.2.4/gson-2.2.4-sources.jar" />
4012 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar" />
4013 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1-sources.jar" />
4014 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1.jar" />
4015 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1-sources.jar" />
4016 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1.jar" />
4017 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0-sources.jar" />
4018 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0.jar" />
4019 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-api/25.2.3/1124bb83bc7f77eadf151691ece08c37ac682d3f/lint-api-25.2.3-sources.jar" />
4020 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-api/25.2.3/fb7afa11dcda11d5bf0fcd3dcfec3e13ee921057/lint-api-25.2.3.jar" />
4021 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-analysis/5.0.4/asm-analysis-5.0.4.jar" />
4022 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-beanutils/commons-beanutils/1.8.0/2818502bbb50bbcbd3f57e92a2bfe4d496f37688/commons-beanutils-1.8.0-sources.jar" />
4023 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-beanutils/commons-beanutils/1.8.0/c651d5103c649c12b20d53731643e5fffceb536/commons-beanutils-1.8.0.jar" />
4024 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-collections/commons-collections/3.2.1/fa095ef874374e5b2a11f8b06c26a5d68c7cb3a4/commons-collections-3.2.1-sources.jar" />
4025 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-collections/commons-collections/3.2.1/761ea405b9b37ced573d2df0d1e3a4e0f9edc668/commons-collections-3.2.1.jar" />
4026 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.4/2b8c4b3035e45520ef42033e823c7d33e4b4402c/commons-lang-2.4-sources.jar" />
4027 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.4/16313e02a793435009f1e458fa4af5d879f6fb11/commons-lang-2.4.jar" />
4028 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1-sources.jar" />
4029 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar" />
4030 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.ezmorph/ezmorph/1.0.6/298992280d62b944afd0ae9bfe3329f5487dd434/ezmorph-1.0.6-sources.jar" />
4031 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.ezmorph/ezmorph/1.0.6/1e55d2a0253ea37745d33062852fd2c90027432/ezmorph-1.0.6.jar" />
4032 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xerces/xercesImpl/2.9.1/e30837a0843d5ea477b9334efdb730e66ffbd253/xercesImpl-2.9.1-sources.jar" />
4033 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xerces/xercesImpl/2.9.1/1136d197e2755bbde296ceee217ec5fe2917477b/xercesImpl-2.9.1.jar" />
4034 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/intellij/annotations/12.0/annotations-12.0-sources.jar" />
4035 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/intellij/annotations/12.0/annotations-12.0.jar" />
4036 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/jimfs/jimfs/1.1/jimfs-1.1.jar" />
4037 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.2.1/3f6caf5334fa83607b82e2f32dd128a9d8a0ea5e/httpcore-4.2.1-sources.jar" />
4038 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.2.1/2d503272bf0a8b5f92d64db78b4ba9abbaccc6fd/httpcore-4.2.1.jar" />
4039 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.6/61e9f9d11fe3e12ec62f633006e99d75fd7f19c8/commons-codec-1.6-sources.jar" />
4040 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.6/b7f0fc8f61ecadeb3695f0b9464755eee44374d4/commons-codec-1.6.jar" />
4041 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3-sources.jar" />
4042 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3.jar" />
4043 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.external.com-intellij/uast/145.597.4/252000592582dea402a8ff20b70c325315c2129d/uast-145.597.4-sources.jar" />
4044 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.external.com-intellij/uast/145.597.4/6b430796bdb6563146affb34fb840c64e8d1d3b1/uast-145.597.4.jar" />
4045 </list>
4046 </option>
4047 <option name="path" value="$PROJECT_DIR$" />
4048 </ExternalModuleBuildClasspathPojo>
4049 </value>
4050 </entry>
4051 <entry key="$PROJECT_DIR$/app">
4052 <value>
4053 <ExternalModuleBuildClasspathPojo>
4054 <option name="entries">
4055 <list>
4056 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle/2.2.3/344060a1bf4666fea5590eeee815fc2a79b5235a/gradle-2.2.3-sources.jar" />
4057 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle/2.2.3/7b8f79621d95e3ce1e95c0852db14d9d7e1d1951/gradle-2.2.3.jar" />
4058 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.novoda/bintray-release/0.3.4/cb71174eee0e8a07208baa52ee6af7f858445b1a/bintray-release-0.3.4-sources.jar" />
4059 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.novoda/bintray-release/0.3.4/101de762c1aa70b99601c94ccf4879695f8559d3/bintray-release-0.3.4.jar" />
4060 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.dcendents/android-maven-gradle-plugin/1.5/2c1a13fd33e662909442ce13ff669e894f225ae0/android-maven-gradle-plugin-1.5-sources.jar" />
4061 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.dcendents/android-maven-gradle-plugin/1.5/f98b3f3c79c3b918043d636f8abbf59f937306b2/android-maven-gradle-plugin-1.5.jar" />
4062 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-core/2.2.3/bfc5ed39e7ac5890d6cf80e8c5545dab9021b810/gradle-core-2.2.3-sources.jar" />
4063 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-core/2.2.3/3a777b0626810e0ccdced7d750ac4b60c279616c/gradle-core-2.2.3.jar" />
4064 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jfrog.bintray.gradle/gradle-bintray-plugin/1.3.1/c66b2388a77bbf5750b1fadff9b1ccbe3e84a86d/gradle-bintray-plugin-1.3.1-sources.jar" />
4065 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jfrog.bintray.gradle/gradle-bintray-plugin/1.3.1/12a572adeff745e7a320486f4345fad05fa23555/gradle-bintray-plugin-1.3.1.jar" />
4066 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder/2.2.3/8d059a6102806269aee14d470bc73d44c0bfa4f0/builder-2.2.3-sources.jar" />
4067 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder/2.2.3/13e7339544e824a3a5f8ecff42173c013791578b/builder-2.2.3.jar" />
4068 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint/25.2.3/9ca2dd056b351c893bae1c7ac1232454ec328517/lint-25.2.3-sources.jar" />
4069 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint/25.2.3/aa03a3669f2913b9bc6f5f4fba4418f974e48cb7/lint-25.2.3.jar" />
4070 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0.0-deprecated-use-gradle-api.jar" />
4071 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-api/2.2.3/9e3531016922fe9b88fb9f7ae9f5b0dd3289ae4f/gradle-api-2.2.3-sources.jar" />
4072 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-api/2.2.3/9a45614f789d4aab624d2a61983263885f42b615/gradle-api-2.2.3.jar" />
4073 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/compilerCommon/2.2.3/aee7a865f76af8f91963ce3f8b3f62070f6eeeb/compilerCommon-2.2.3-sources.jar" />
4074 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/compilerCommon/2.2.3/8c3829022a54acd042b5382a4a873ee2d64c29ee/compilerCommon-2.2.3.jar" />
4075 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm/5.0.4/asm-5.0.4.jar" />
4076 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-commons/5.0.4/asm-commons-5.0.4.jar" />
4077 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-gradle/5.2.1/proguard-gradle-5.2.1-sources.jar" />
4078 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-gradle/5.2.1/proguard-gradle-5.2.1.jar" />
4079 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/jacoco/org.jacoco.core/0.7.5.201505241946/org.jacoco.core-0.7.5.201505241946.jar" />
4080 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/jacoco/org.jacoco.report/0.7.5.201505241946/org.jacoco.report-0.7.5.201505241946.jar" />
4081 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/jopt-simple/jopt-simple/4.9/jopt-simple-4.9.jar" />
4082 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar" />
4083 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr/3.5.2/antlr-3.5.2.jar" />
4084 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy.modules.http-builder/http-builder/0.7.2/f1860181de06236f28f3f247aed57fa4631016d8/http-builder-0.7.2-sources.jar" />
4085 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy.modules.http-builder/http-builder/0.7.2/323092cd786480311c1cf693770f9e6fc20a8bef/http-builder-0.7.2.jar" />
4086 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-model/2.2.3/1f3c26cd56ec3199fc49634cfa37647cd811a8c3/builder-model-2.2.3-sources.jar" />
4087 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-model/2.2.3/eddf6035ce0a31651527b4c3cc239428e877c43a/builder-model-2.2.3.jar" />
4088 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-test-api/2.2.3/746c5f19def7dfc91844b3edf2f99b2356aa4610/builder-test-api-2.2.3-sources.jar" />
4089 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-test-api/2.2.3/700079fc243c217dbd6250ac01d2d6210ca8a0d6/builder-test-api-2.2.3.jar" />
4090 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdklib/25.2.3/5743d9517e0aa71e0fbcba2a20affba66b2b2753/sdklib-25.2.3-sources.jar" />
4091 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdklib/25.2.3/9f12cfc56b1df4e42fa2b73f9936b586b9a56a2/sdklib-25.2.3.jar" />
4092 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdk-common/25.2.3/30ff0547c45f5f079a7fd9c9ac69f93d3b0e955f/sdk-common-25.2.3-sources.jar" />
4093 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdk-common/25.2.3/2c49ca3df5bb961473b096bab2a615a7cda50dc/sdk-common-25.2.3.jar" />
4094 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/common/25.2.3/3ef7cd06f588852bae10a304d3855a2d51d6d642/common-25.2.3-sources.jar" />
4095 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/common/25.2.3/255aa01048bebb511d828c6a5fc668df13b8f39d/common-25.2.3.jar" />
4096 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/manifest-merger/25.2.3/34adfc7b2d9e3ae920913b46b8b075cfa2a7afb2/manifest-merger-25.2.3-sources.jar" />
4097 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/manifest-merger/25.2.3/d0212c507be4c38c39f4ee06a7df5a44f500ed3b/manifest-merger-25.2.3.jar" />
4098 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.ddms/ddmlib/25.2.3/9bb4f6b357fe6d260e5c880717c1ece8a6bae6ea/ddmlib-25.2.3-sources.jar" />
4099 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.ddms/ddmlib/25.2.3/2b66df9156f476b0ccee44b378cd09073118ff59/ddmlib-25.2.3.jar" />
4100 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/jack/jack-api/0.11.0/jack-api-0.11.0.jar" />
4101 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/jill/jill-api/0.10.0/jill-api-0.10.0.jar" />
4102 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/protos/25.2.3/a9fba9b00f139a86bd907cad4c084686ff7b1a8/protos-25.2.3-sources.jar" />
4103 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/protos/25.2.3/821098054f9667d0f2536d7f2d0200d8bdd9c898/protos-25.2.3.jar" />
4104 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/shared/25.2.3/9d18a216c427959ca0e5580fb1b9b7433ce01c73/shared-25.2.3-sources.jar" />
4105 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/shared/25.2.3/785426dac20cfe596e4cf36d01aad930ffdcb05c/shared-25.2.3.jar" />
4106 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/tracker/25.2.3/8cfb7881aaada4d0fe28c6e2ab56b7150ff8bf8a/tracker-25.2.3-sources.jar" />
4107 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/tracker/25.2.3/c807f7b3d9aa3cee795ecac620d22c5ca7dd92e1/tracker-25.2.3.jar" />
4108 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/squareup/javawriter/2.5.0/javawriter-2.5.0-sources.jar" />
4109 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/squareup/javawriter/2.5.0/javawriter-2.5.0.jar" />
4110 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48-sources.jar" />
4111 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48.jar" />
4112 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48-sources.jar" />
4113 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48.jar" />
4114 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-tree/5.0.4/asm-tree-5.0.4.jar" />
4115 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-checks/25.2.3/819e632d46915e2772112e07b779cc878cad4a88/lint-checks-25.2.3-sources.jar" />
4116 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-checks/25.2.3/eae71c1f5ce54195dc821133e3a5df8145de8ff5/lint-checks-25.2.3.jar" />
4117 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/eclipse/jdt/core/compiler/ecj/4.5.1/ecj-4.5.1.jar" />
4118 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/guava/guava/18.0/guava-18.0.jar" />
4119 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/baseLibrary/2.2.3/212ef3aaf0963bf1985c999e1daa4e8c43825a3f/baseLibrary-2.2.3-sources.jar" />
4120 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/baseLibrary/2.2.3/b4b51d1925cdfda98fd861230c1ecb5855500129/baseLibrary-2.2.3.jar" />
4121 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr4/4.5.3/antlr4-4.5.3.jar" />
4122 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-io/commons-io/2.4/commons-io-2.4-sources.jar" />
4123 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-io/commons-io/2.4/commons-io-2.4.jar" />
4124 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/googlecode/juniversalchardet/juniversalchardet/1.0.3/juniversalchardet-1.0.3.jar" />
4125 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/annotations/25.2.3/14970b6fa3881b4622abdec9d64866a687261236/annotations-25.2.3-sources.jar" />
4126 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/annotations/25.2.3/a9970f79003cbf4aaaf26a5590aca7066f209347/annotations-25.2.3.jar" />
4127 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-base/5.2.1/proguard-base-5.2.1-sources.jar" />
4128 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-base/5.2.1/proguard-base-5.2.1.jar" />
4129 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-debug-all/5.0.1/asm-debug-all-5.0.1-sources.jar" />
4130 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-debug-all/5.0.1/asm-debug-all-5.0.1.jar" />
4131 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr-runtime/3.5.2/antlr-runtime-3.5.2.jar" />
4132 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/ST4/4.0.8/ST4-4.0.8.jar" />
4133 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.2.1/6b27312b9c28b59aaeb6c21f3490045690c703d3/httpclient-4.2.1-sources.jar" />
4134 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.2.1/b69bd03af60bf487b3ae1209a644ecac587bf6fc/httpclient-4.2.1.jar" />
4135 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.json-lib/json-lib/2.3/f35340c0a0380141f62c72b76c8fb4bfa638d8c1/json-lib-2.3-jdk15.jar" />
4136 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.16/2d40ea21fae95418331ddc66efb6744a38bf59a/nekohtml-1.9.16-sources.jar" />
4137 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.16/61e35204e5a8fdb864152f84e2e3b33ab56f50ab/nekohtml-1.9.16.jar" />
4138 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xml-resolver/xml-resolver/1.2/6b72432ea1c5296783007365bb7c9a6b39dfb730/xml-resolver-1.2-sources.jar" />
4139 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xml-resolver/xml-resolver/1.2/3d0f97750b3a03e0971831566067754ba4bfd68c/xml-resolver-1.2.jar" />
4140 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.layoutlib/layoutlib-api/25.2.3/2688434b8868bd41526b79d49330116b2da464a9/layoutlib-api-25.2.3-sources.jar" />
4141 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.layoutlib/layoutlib-api/25.2.3/ead9944caa7cba814184148efe69faf8896f4478/layoutlib-api-25.2.3.jar" />
4142 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/dvlib/25.2.3/bcca419668a00afc455b481a5541c43083f1cd08/dvlib-25.2.3-sources.jar" />
4143 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/dvlib/25.2.3/5afd79f645811a98c0519141cc13900c659091a8/dvlib-25.2.3.jar" />
4144 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/repository/25.2.3/b17b0ce2b6c0063ee4ebcd49becc4054cb6b7e98/repository-25.2.3-sources.jar" />
4145 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/repository/25.2.3/179dee8115834f40bd9b39675da3a0273174c3ca/repository-25.2.3.jar" />
4146 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/code/gson/gson/2.2.4/gson-2.2.4-sources.jar" />
4147 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar" />
4148 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1-sources.jar" />
4149 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1.jar" />
4150 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1-sources.jar" />
4151 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1.jar" />
4152 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0-sources.jar" />
4153 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0.jar" />
4154 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-api/25.2.3/1124bb83bc7f77eadf151691ece08c37ac682d3f/lint-api-25.2.3-sources.jar" />
4155 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-api/25.2.3/fb7afa11dcda11d5bf0fcd3dcfec3e13ee921057/lint-api-25.2.3.jar" />
4156 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-analysis/5.0.4/asm-analysis-5.0.4.jar" />
4157 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-beanutils/commons-beanutils/1.8.0/2818502bbb50bbcbd3f57e92a2bfe4d496f37688/commons-beanutils-1.8.0-sources.jar" />
4158 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-beanutils/commons-beanutils/1.8.0/c651d5103c649c12b20d53731643e5fffceb536/commons-beanutils-1.8.0.jar" />
4159 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-collections/commons-collections/3.2.1/fa095ef874374e5b2a11f8b06c26a5d68c7cb3a4/commons-collections-3.2.1-sources.jar" />
4160 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-collections/commons-collections/3.2.1/761ea405b9b37ced573d2df0d1e3a4e0f9edc668/commons-collections-3.2.1.jar" />
4161 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.4/2b8c4b3035e45520ef42033e823c7d33e4b4402c/commons-lang-2.4-sources.jar" />
4162 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.4/16313e02a793435009f1e458fa4af5d879f6fb11/commons-lang-2.4.jar" />
4163 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1-sources.jar" />
4164 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar" />
4165 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.ezmorph/ezmorph/1.0.6/298992280d62b944afd0ae9bfe3329f5487dd434/ezmorph-1.0.6-sources.jar" />
4166 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.ezmorph/ezmorph/1.0.6/1e55d2a0253ea37745d33062852fd2c90027432/ezmorph-1.0.6.jar" />
4167 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xerces/xercesImpl/2.9.1/e30837a0843d5ea477b9334efdb730e66ffbd253/xercesImpl-2.9.1-sources.jar" />
4168 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xerces/xercesImpl/2.9.1/1136d197e2755bbde296ceee217ec5fe2917477b/xercesImpl-2.9.1.jar" />
4169 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/intellij/annotations/12.0/annotations-12.0-sources.jar" />
4170 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/intellij/annotations/12.0/annotations-12.0.jar" />
4171 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/jimfs/jimfs/1.1/jimfs-1.1.jar" />
4172 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.2.1/3f6caf5334fa83607b82e2f32dd128a9d8a0ea5e/httpcore-4.2.1-sources.jar" />
4173 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.2.1/2d503272bf0a8b5f92d64db78b4ba9abbaccc6fd/httpcore-4.2.1.jar" />
4174 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.6/61e9f9d11fe3e12ec62f633006e99d75fd7f19c8/commons-codec-1.6-sources.jar" />
4175 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.6/b7f0fc8f61ecadeb3695f0b9464755eee44374d4/commons-codec-1.6.jar" />
4176 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3-sources.jar" />
4177 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3.jar" />
4178 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.external.com-intellij/uast/145.597.4/252000592582dea402a8ff20b70c325315c2129d/uast-145.597.4-sources.jar" />
4179 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.external.com-intellij/uast/145.597.4/6b430796bdb6563146affb34fb840c64e8d1d3b1/uast-145.597.4.jar" />
4180 </list>
4181 </option>
4182 <option name="path" value="$PROJECT_DIR$/app" />
4183 </ExternalModuleBuildClasspathPojo>
4184 </value>
4185 </entry>
4186 <entry key="$PROJECT_DIR$/circledialog">
4187 <value>
4188 <ExternalModuleBuildClasspathPojo>
4189 <option name="entries">
4190 <list>
4191 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle/2.2.3/344060a1bf4666fea5590eeee815fc2a79b5235a/gradle-2.2.3-sources.jar" />
4192 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle/2.2.3/7b8f79621d95e3ce1e95c0852db14d9d7e1d1951/gradle-2.2.3.jar" />
4193 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.novoda/bintray-release/0.3.4/cb71174eee0e8a07208baa52ee6af7f858445b1a/bintray-release-0.3.4-sources.jar" />
4194 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.novoda/bintray-release/0.3.4/101de762c1aa70b99601c94ccf4879695f8559d3/bintray-release-0.3.4.jar" />
4195 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.dcendents/android-maven-gradle-plugin/1.5/2c1a13fd33e662909442ce13ff669e894f225ae0/android-maven-gradle-plugin-1.5-sources.jar" />
4196 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.dcendents/android-maven-gradle-plugin/1.5/f98b3f3c79c3b918043d636f8abbf59f937306b2/android-maven-gradle-plugin-1.5.jar" />
4197 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-core/2.2.3/bfc5ed39e7ac5890d6cf80e8c5545dab9021b810/gradle-core-2.2.3-sources.jar" />
4198 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-core/2.2.3/3a777b0626810e0ccdced7d750ac4b60c279616c/gradle-core-2.2.3.jar" />
4199 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jfrog.bintray.gradle/gradle-bintray-plugin/1.3.1/c66b2388a77bbf5750b1fadff9b1ccbe3e84a86d/gradle-bintray-plugin-1.3.1-sources.jar" />
4200 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jfrog.bintray.gradle/gradle-bintray-plugin/1.3.1/12a572adeff745e7a320486f4345fad05fa23555/gradle-bintray-plugin-1.3.1.jar" />
4201 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder/2.2.3/8d059a6102806269aee14d470bc73d44c0bfa4f0/builder-2.2.3-sources.jar" />
4202 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder/2.2.3/13e7339544e824a3a5f8ecff42173c013791578b/builder-2.2.3.jar" />
4203 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint/25.2.3/9ca2dd056b351c893bae1c7ac1232454ec328517/lint-25.2.3-sources.jar" />
4204 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint/25.2.3/aa03a3669f2913b9bc6f5f4fba4418f974e48cb7/lint-25.2.3.jar" />
4205 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0.0-deprecated-use-gradle-api.jar" />
4206 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-api/2.2.3/9e3531016922fe9b88fb9f7ae9f5b0dd3289ae4f/gradle-api-2.2.3-sources.jar" />
4207 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-api/2.2.3/9a45614f789d4aab624d2a61983263885f42b615/gradle-api-2.2.3.jar" />
4208 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/compilerCommon/2.2.3/aee7a865f76af8f91963ce3f8b3f62070f6eeeb/compilerCommon-2.2.3-sources.jar" />
4209 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/compilerCommon/2.2.3/8c3829022a54acd042b5382a4a873ee2d64c29ee/compilerCommon-2.2.3.jar" />
4210 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm/5.0.4/asm-5.0.4.jar" />
4211 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-commons/5.0.4/asm-commons-5.0.4.jar" />
4212 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-gradle/5.2.1/proguard-gradle-5.2.1-sources.jar" />
4213 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-gradle/5.2.1/proguard-gradle-5.2.1.jar" />
4214 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/jacoco/org.jacoco.core/0.7.5.201505241946/org.jacoco.core-0.7.5.201505241946.jar" />
4215 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/jacoco/org.jacoco.report/0.7.5.201505241946/org.jacoco.report-0.7.5.201505241946.jar" />
4216 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/jopt-simple/jopt-simple/4.9/jopt-simple-4.9.jar" />
4217 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar" />
4218 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr/3.5.2/antlr-3.5.2.jar" />
4219 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy.modules.http-builder/http-builder/0.7.2/f1860181de06236f28f3f247aed57fa4631016d8/http-builder-0.7.2-sources.jar" />
4220 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy.modules.http-builder/http-builder/0.7.2/323092cd786480311c1cf693770f9e6fc20a8bef/http-builder-0.7.2.jar" />
4221 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-model/2.2.3/1f3c26cd56ec3199fc49634cfa37647cd811a8c3/builder-model-2.2.3-sources.jar" />
4222 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-model/2.2.3/eddf6035ce0a31651527b4c3cc239428e877c43a/builder-model-2.2.3.jar" />
4223 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-test-api/2.2.3/746c5f19def7dfc91844b3edf2f99b2356aa4610/builder-test-api-2.2.3-sources.jar" />
4224 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-test-api/2.2.3/700079fc243c217dbd6250ac01d2d6210ca8a0d6/builder-test-api-2.2.3.jar" />
4225 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdklib/25.2.3/5743d9517e0aa71e0fbcba2a20affba66b2b2753/sdklib-25.2.3-sources.jar" />
4226 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdklib/25.2.3/9f12cfc56b1df4e42fa2b73f9936b586b9a56a2/sdklib-25.2.3.jar" />
4227 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdk-common/25.2.3/30ff0547c45f5f079a7fd9c9ac69f93d3b0e955f/sdk-common-25.2.3-sources.jar" />
4228 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdk-common/25.2.3/2c49ca3df5bb961473b096bab2a615a7cda50dc/sdk-common-25.2.3.jar" />
4229 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/common/25.2.3/3ef7cd06f588852bae10a304d3855a2d51d6d642/common-25.2.3-sources.jar" />
4230 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/common/25.2.3/255aa01048bebb511d828c6a5fc668df13b8f39d/common-25.2.3.jar" />
4231 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/manifest-merger/25.2.3/34adfc7b2d9e3ae920913b46b8b075cfa2a7afb2/manifest-merger-25.2.3-sources.jar" />
4232 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/manifest-merger/25.2.3/d0212c507be4c38c39f4ee06a7df5a44f500ed3b/manifest-merger-25.2.3.jar" />
4233 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.ddms/ddmlib/25.2.3/9bb4f6b357fe6d260e5c880717c1ece8a6bae6ea/ddmlib-25.2.3-sources.jar" />
4234 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.ddms/ddmlib/25.2.3/2b66df9156f476b0ccee44b378cd09073118ff59/ddmlib-25.2.3.jar" />
4235 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/jack/jack-api/0.11.0/jack-api-0.11.0.jar" />
4236 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/jill/jill-api/0.10.0/jill-api-0.10.0.jar" />
4237 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/protos/25.2.3/a9fba9b00f139a86bd907cad4c084686ff7b1a8/protos-25.2.3-sources.jar" />
4238 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/protos/25.2.3/821098054f9667d0f2536d7f2d0200d8bdd9c898/protos-25.2.3.jar" />
4239 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/shared/25.2.3/9d18a216c427959ca0e5580fb1b9b7433ce01c73/shared-25.2.3-sources.jar" />
4240 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/shared/25.2.3/785426dac20cfe596e4cf36d01aad930ffdcb05c/shared-25.2.3.jar" />
4241 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/tracker/25.2.3/8cfb7881aaada4d0fe28c6e2ab56b7150ff8bf8a/tracker-25.2.3-sources.jar" />
4242 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/tracker/25.2.3/c807f7b3d9aa3cee795ecac620d22c5ca7dd92e1/tracker-25.2.3.jar" />
4243 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/squareup/javawriter/2.5.0/javawriter-2.5.0-sources.jar" />
4244 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/squareup/javawriter/2.5.0/javawriter-2.5.0.jar" />
4245 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48-sources.jar" />
4246 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48.jar" />
4247 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48-sources.jar" />
4248 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48.jar" />
4249 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-tree/5.0.4/asm-tree-5.0.4.jar" />
4250 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-checks/25.2.3/819e632d46915e2772112e07b779cc878cad4a88/lint-checks-25.2.3-sources.jar" />
4251 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-checks/25.2.3/eae71c1f5ce54195dc821133e3a5df8145de8ff5/lint-checks-25.2.3.jar" />
4252 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/eclipse/jdt/core/compiler/ecj/4.5.1/ecj-4.5.1.jar" />
4253 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/guava/guava/18.0/guava-18.0.jar" />
4254 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/baseLibrary/2.2.3/212ef3aaf0963bf1985c999e1daa4e8c43825a3f/baseLibrary-2.2.3-sources.jar" />
4255 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/baseLibrary/2.2.3/b4b51d1925cdfda98fd861230c1ecb5855500129/baseLibrary-2.2.3.jar" />
4256 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr4/4.5.3/antlr4-4.5.3.jar" />
4257 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-io/commons-io/2.4/commons-io-2.4-sources.jar" />
4258 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-io/commons-io/2.4/commons-io-2.4.jar" />
4259 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/googlecode/juniversalchardet/juniversalchardet/1.0.3/juniversalchardet-1.0.3.jar" />
4260 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/annotations/25.2.3/14970b6fa3881b4622abdec9d64866a687261236/annotations-25.2.3-sources.jar" />
4261 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/annotations/25.2.3/a9970f79003cbf4aaaf26a5590aca7066f209347/annotations-25.2.3.jar" />
4262 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-base/5.2.1/proguard-base-5.2.1-sources.jar" />
4263 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-base/5.2.1/proguard-base-5.2.1.jar" />
4264 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-debug-all/5.0.1/asm-debug-all-5.0.1-sources.jar" />
4265 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-debug-all/5.0.1/asm-debug-all-5.0.1.jar" />
4266 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr-runtime/3.5.2/antlr-runtime-3.5.2.jar" />
4267 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/ST4/4.0.8/ST4-4.0.8.jar" />
4268 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.2.1/6b27312b9c28b59aaeb6c21f3490045690c703d3/httpclient-4.2.1-sources.jar" />
4269 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.2.1/b69bd03af60bf487b3ae1209a644ecac587bf6fc/httpclient-4.2.1.jar" />
4270 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.json-lib/json-lib/2.3/f35340c0a0380141f62c72b76c8fb4bfa638d8c1/json-lib-2.3-jdk15.jar" />
4271 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.16/2d40ea21fae95418331ddc66efb6744a38bf59a/nekohtml-1.9.16-sources.jar" />
4272 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.16/61e35204e5a8fdb864152f84e2e3b33ab56f50ab/nekohtml-1.9.16.jar" />
4273 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xml-resolver/xml-resolver/1.2/6b72432ea1c5296783007365bb7c9a6b39dfb730/xml-resolver-1.2-sources.jar" />
4274 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xml-resolver/xml-resolver/1.2/3d0f97750b3a03e0971831566067754ba4bfd68c/xml-resolver-1.2.jar" />
4275 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.layoutlib/layoutlib-api/25.2.3/2688434b8868bd41526b79d49330116b2da464a9/layoutlib-api-25.2.3-sources.jar" />
4276 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.layoutlib/layoutlib-api/25.2.3/ead9944caa7cba814184148efe69faf8896f4478/layoutlib-api-25.2.3.jar" />
4277 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/dvlib/25.2.3/bcca419668a00afc455b481a5541c43083f1cd08/dvlib-25.2.3-sources.jar" />
4278 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/dvlib/25.2.3/5afd79f645811a98c0519141cc13900c659091a8/dvlib-25.2.3.jar" />
4279 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/repository/25.2.3/b17b0ce2b6c0063ee4ebcd49becc4054cb6b7e98/repository-25.2.3-sources.jar" />
4280 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/repository/25.2.3/179dee8115834f40bd9b39675da3a0273174c3ca/repository-25.2.3.jar" />
4281 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/code/gson/gson/2.2.4/gson-2.2.4-sources.jar" />
4282 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar" />
4283 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1-sources.jar" />
4284 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1.jar" />
4285 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1-sources.jar" />
4286 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1.jar" />
4287 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0-sources.jar" />
4288 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0.jar" />
4289 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-api/25.2.3/1124bb83bc7f77eadf151691ece08c37ac682d3f/lint-api-25.2.3-sources.jar" />
4290 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-api/25.2.3/fb7afa11dcda11d5bf0fcd3dcfec3e13ee921057/lint-api-25.2.3.jar" />
4291 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-analysis/5.0.4/asm-analysis-5.0.4.jar" />
4292 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-beanutils/commons-beanutils/1.8.0/2818502bbb50bbcbd3f57e92a2bfe4d496f37688/commons-beanutils-1.8.0-sources.jar" />
4293 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-beanutils/commons-beanutils/1.8.0/c651d5103c649c12b20d53731643e5fffceb536/commons-beanutils-1.8.0.jar" />
4294 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-collections/commons-collections/3.2.1/fa095ef874374e5b2a11f8b06c26a5d68c7cb3a4/commons-collections-3.2.1-sources.jar" />
4295 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-collections/commons-collections/3.2.1/761ea405b9b37ced573d2df0d1e3a4e0f9edc668/commons-collections-3.2.1.jar" />
4296 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.4/2b8c4b3035e45520ef42033e823c7d33e4b4402c/commons-lang-2.4-sources.jar" />
4297 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.4/16313e02a793435009f1e458fa4af5d879f6fb11/commons-lang-2.4.jar" />
4298 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1-sources.jar" />
4299 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar" />
4300 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.ezmorph/ezmorph/1.0.6/298992280d62b944afd0ae9bfe3329f5487dd434/ezmorph-1.0.6-sources.jar" />
4301 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.ezmorph/ezmorph/1.0.6/1e55d2a0253ea37745d33062852fd2c90027432/ezmorph-1.0.6.jar" />
4302 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xerces/xercesImpl/2.9.1/e30837a0843d5ea477b9334efdb730e66ffbd253/xercesImpl-2.9.1-sources.jar" />
4303 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xerces/xercesImpl/2.9.1/1136d197e2755bbde296ceee217ec5fe2917477b/xercesImpl-2.9.1.jar" />
4304 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/intellij/annotations/12.0/annotations-12.0-sources.jar" />
4305 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/intellij/annotations/12.0/annotations-12.0.jar" />
4306 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/jimfs/jimfs/1.1/jimfs-1.1.jar" />
4307 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.2.1/3f6caf5334fa83607b82e2f32dd128a9d8a0ea5e/httpcore-4.2.1-sources.jar" />
4308 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.2.1/2d503272bf0a8b5f92d64db78b4ba9abbaccc6fd/httpcore-4.2.1.jar" />
4309 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.6/61e9f9d11fe3e12ec62f633006e99d75fd7f19c8/commons-codec-1.6-sources.jar" />
4310 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.6/b7f0fc8f61ecadeb3695f0b9464755eee44374d4/commons-codec-1.6.jar" />
4311 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3-sources.jar" />
4312 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3.jar" />
4313 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.external.com-intellij/uast/145.597.4/252000592582dea402a8ff20b70c325315c2129d/uast-145.597.4-sources.jar" />
4314 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.external.com-intellij/uast/145.597.4/6b430796bdb6563146affb34fb840c64e8d1d3b1/uast-145.597.4.jar" />
4315 </list>
4316 </option>
4317 <option name="path" value="$PROJECT_DIR$/circledialog" />
4318 </ExternalModuleBuildClasspathPojo>
4319 </value>
4320 </entry>
4321 <entry key="$PROJECT_DIR$/mypresonallibrary">
4322 <value>
4323 <ExternalModuleBuildClasspathPojo>
4324 <option name="entries">
4325 <list>
4326 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle/2.2.3/344060a1bf4666fea5590eeee815fc2a79b5235a/gradle-2.2.3-sources.jar" />
4327 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle/2.2.3/7b8f79621d95e3ce1e95c0852db14d9d7e1d1951/gradle-2.2.3.jar" />
4328 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.novoda/bintray-release/0.3.4/cb71174eee0e8a07208baa52ee6af7f858445b1a/bintray-release-0.3.4-sources.jar" />
4329 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.novoda/bintray-release/0.3.4/101de762c1aa70b99601c94ccf4879695f8559d3/bintray-release-0.3.4.jar" />
4330 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.dcendents/android-maven-gradle-plugin/1.5/2c1a13fd33e662909442ce13ff669e894f225ae0/android-maven-gradle-plugin-1.5-sources.jar" />
4331 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.dcendents/android-maven-gradle-plugin/1.5/f98b3f3c79c3b918043d636f8abbf59f937306b2/android-maven-gradle-plugin-1.5.jar" />
4332 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-core/2.2.3/bfc5ed39e7ac5890d6cf80e8c5545dab9021b810/gradle-core-2.2.3-sources.jar" />
4333 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-core/2.2.3/3a777b0626810e0ccdced7d750ac4b60c279616c/gradle-core-2.2.3.jar" />
4334 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jfrog.bintray.gradle/gradle-bintray-plugin/1.3.1/c66b2388a77bbf5750b1fadff9b1ccbe3e84a86d/gradle-bintray-plugin-1.3.1-sources.jar" />
4335 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jfrog.bintray.gradle/gradle-bintray-plugin/1.3.1/12a572adeff745e7a320486f4345fad05fa23555/gradle-bintray-plugin-1.3.1.jar" />
4336 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder/2.2.3/8d059a6102806269aee14d470bc73d44c0bfa4f0/builder-2.2.3-sources.jar" />
4337 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder/2.2.3/13e7339544e824a3a5f8ecff42173c013791578b/builder-2.2.3.jar" />
4338 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint/25.2.3/9ca2dd056b351c893bae1c7ac1232454ec328517/lint-25.2.3-sources.jar" />
4339 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint/25.2.3/aa03a3669f2913b9bc6f5f4fba4418f974e48cb7/lint-25.2.3.jar" />
4340 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0.0-deprecated-use-gradle-api.jar" />
4341 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-api/2.2.3/9e3531016922fe9b88fb9f7ae9f5b0dd3289ae4f/gradle-api-2.2.3-sources.jar" />
4342 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-api/2.2.3/9a45614f789d4aab624d2a61983263885f42b615/gradle-api-2.2.3.jar" />
4343 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/compilerCommon/2.2.3/aee7a865f76af8f91963ce3f8b3f62070f6eeeb/compilerCommon-2.2.3-sources.jar" />
4344 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/compilerCommon/2.2.3/8c3829022a54acd042b5382a4a873ee2d64c29ee/compilerCommon-2.2.3.jar" />
4345 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm/5.0.4/asm-5.0.4.jar" />
4346 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-commons/5.0.4/asm-commons-5.0.4.jar" />
4347 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-gradle/5.2.1/proguard-gradle-5.2.1-sources.jar" />
4348 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-gradle/5.2.1/proguard-gradle-5.2.1.jar" />
4349 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/jacoco/org.jacoco.core/0.7.5.201505241946/org.jacoco.core-0.7.5.201505241946.jar" />
4350 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/jacoco/org.jacoco.report/0.7.5.201505241946/org.jacoco.report-0.7.5.201505241946.jar" />
4351 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/jopt-simple/jopt-simple/4.9/jopt-simple-4.9.jar" />
4352 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar" />
4353 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr/3.5.2/antlr-3.5.2.jar" />
4354 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy.modules.http-builder/http-builder/0.7.2/f1860181de06236f28f3f247aed57fa4631016d8/http-builder-0.7.2-sources.jar" />
4355 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy.modules.http-builder/http-builder/0.7.2/323092cd786480311c1cf693770f9e6fc20a8bef/http-builder-0.7.2.jar" />
4356 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-model/2.2.3/1f3c26cd56ec3199fc49634cfa37647cd811a8c3/builder-model-2.2.3-sources.jar" />
4357 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-model/2.2.3/eddf6035ce0a31651527b4c3cc239428e877c43a/builder-model-2.2.3.jar" />
4358 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-test-api/2.2.3/746c5f19def7dfc91844b3edf2f99b2356aa4610/builder-test-api-2.2.3-sources.jar" />
4359 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-test-api/2.2.3/700079fc243c217dbd6250ac01d2d6210ca8a0d6/builder-test-api-2.2.3.jar" />
4360 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdklib/25.2.3/5743d9517e0aa71e0fbcba2a20affba66b2b2753/sdklib-25.2.3-sources.jar" />
4361 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdklib/25.2.3/9f12cfc56b1df4e42fa2b73f9936b586b9a56a2/sdklib-25.2.3.jar" />
4362 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdk-common/25.2.3/30ff0547c45f5f079a7fd9c9ac69f93d3b0e955f/sdk-common-25.2.3-sources.jar" />
4363 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdk-common/25.2.3/2c49ca3df5bb961473b096bab2a615a7cda50dc/sdk-common-25.2.3.jar" />
4364 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/common/25.2.3/3ef7cd06f588852bae10a304d3855a2d51d6d642/common-25.2.3-sources.jar" />
4365 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/common/25.2.3/255aa01048bebb511d828c6a5fc668df13b8f39d/common-25.2.3.jar" />
4366 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/manifest-merger/25.2.3/34adfc7b2d9e3ae920913b46b8b075cfa2a7afb2/manifest-merger-25.2.3-sources.jar" />
4367 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/manifest-merger/25.2.3/d0212c507be4c38c39f4ee06a7df5a44f500ed3b/manifest-merger-25.2.3.jar" />
4368 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.ddms/ddmlib/25.2.3/9bb4f6b357fe6d260e5c880717c1ece8a6bae6ea/ddmlib-25.2.3-sources.jar" />
4369 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.ddms/ddmlib/25.2.3/2b66df9156f476b0ccee44b378cd09073118ff59/ddmlib-25.2.3.jar" />
4370 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/jack/jack-api/0.11.0/jack-api-0.11.0.jar" />
4371 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/jill/jill-api/0.10.0/jill-api-0.10.0.jar" />
4372 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/protos/25.2.3/a9fba9b00f139a86bd907cad4c084686ff7b1a8/protos-25.2.3-sources.jar" />
4373 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/protos/25.2.3/821098054f9667d0f2536d7f2d0200d8bdd9c898/protos-25.2.3.jar" />
4374 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/shared/25.2.3/9d18a216c427959ca0e5580fb1b9b7433ce01c73/shared-25.2.3-sources.jar" />
4375 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/shared/25.2.3/785426dac20cfe596e4cf36d01aad930ffdcb05c/shared-25.2.3.jar" />
4376 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/tracker/25.2.3/8cfb7881aaada4d0fe28c6e2ab56b7150ff8bf8a/tracker-25.2.3-sources.jar" />
4377 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/tracker/25.2.3/c807f7b3d9aa3cee795ecac620d22c5ca7dd92e1/tracker-25.2.3.jar" />
4378 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/squareup/javawriter/2.5.0/javawriter-2.5.0-sources.jar" />
4379 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/squareup/javawriter/2.5.0/javawriter-2.5.0.jar" />
4380 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48-sources.jar" />
4381 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48.jar" />
4382 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48-sources.jar" />
4383 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48.jar" />
4384 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-tree/5.0.4/asm-tree-5.0.4.jar" />
4385 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-checks/25.2.3/819e632d46915e2772112e07b779cc878cad4a88/lint-checks-25.2.3-sources.jar" />
4386 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-checks/25.2.3/eae71c1f5ce54195dc821133e3a5df8145de8ff5/lint-checks-25.2.3.jar" />
4387 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/eclipse/jdt/core/compiler/ecj/4.5.1/ecj-4.5.1.jar" />
4388 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/guava/guava/18.0/guava-18.0.jar" />
4389 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/baseLibrary/2.2.3/212ef3aaf0963bf1985c999e1daa4e8c43825a3f/baseLibrary-2.2.3-sources.jar" />
4390 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/baseLibrary/2.2.3/b4b51d1925cdfda98fd861230c1ecb5855500129/baseLibrary-2.2.3.jar" />
4391 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr4/4.5.3/antlr4-4.5.3.jar" />
4392 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-io/commons-io/2.4/commons-io-2.4-sources.jar" />
4393 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-io/commons-io/2.4/commons-io-2.4.jar" />
4394 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/googlecode/juniversalchardet/juniversalchardet/1.0.3/juniversalchardet-1.0.3.jar" />
4395 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/annotations/25.2.3/14970b6fa3881b4622abdec9d64866a687261236/annotations-25.2.3-sources.jar" />
4396 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/annotations/25.2.3/a9970f79003cbf4aaaf26a5590aca7066f209347/annotations-25.2.3.jar" />
4397 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-base/5.2.1/proguard-base-5.2.1-sources.jar" />
4398 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-base/5.2.1/proguard-base-5.2.1.jar" />
4399 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-debug-all/5.0.1/asm-debug-all-5.0.1-sources.jar" />
4400 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-debug-all/5.0.1/asm-debug-all-5.0.1.jar" />
4401 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr-runtime/3.5.2/antlr-runtime-3.5.2.jar" />
4402 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/ST4/4.0.8/ST4-4.0.8.jar" />
4403 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.2.1/6b27312b9c28b59aaeb6c21f3490045690c703d3/httpclient-4.2.1-sources.jar" />
4404 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.2.1/b69bd03af60bf487b3ae1209a644ecac587bf6fc/httpclient-4.2.1.jar" />
4405 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.json-lib/json-lib/2.3/f35340c0a0380141f62c72b76c8fb4bfa638d8c1/json-lib-2.3-jdk15.jar" />
4406 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.16/2d40ea21fae95418331ddc66efb6744a38bf59a/nekohtml-1.9.16-sources.jar" />
4407 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.16/61e35204e5a8fdb864152f84e2e3b33ab56f50ab/nekohtml-1.9.16.jar" />
4408 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xml-resolver/xml-resolver/1.2/6b72432ea1c5296783007365bb7c9a6b39dfb730/xml-resolver-1.2-sources.jar" />
4409 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xml-resolver/xml-resolver/1.2/3d0f97750b3a03e0971831566067754ba4bfd68c/xml-resolver-1.2.jar" />
4410 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.layoutlib/layoutlib-api/25.2.3/2688434b8868bd41526b79d49330116b2da464a9/layoutlib-api-25.2.3-sources.jar" />
4411 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.layoutlib/layoutlib-api/25.2.3/ead9944caa7cba814184148efe69faf8896f4478/layoutlib-api-25.2.3.jar" />
4412 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/dvlib/25.2.3/bcca419668a00afc455b481a5541c43083f1cd08/dvlib-25.2.3-sources.jar" />
4413 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/dvlib/25.2.3/5afd79f645811a98c0519141cc13900c659091a8/dvlib-25.2.3.jar" />
4414 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/repository/25.2.3/b17b0ce2b6c0063ee4ebcd49becc4054cb6b7e98/repository-25.2.3-sources.jar" />
4415 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/repository/25.2.3/179dee8115834f40bd9b39675da3a0273174c3ca/repository-25.2.3.jar" />
4416 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/code/gson/gson/2.2.4/gson-2.2.4-sources.jar" />
4417 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar" />
4418 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1-sources.jar" />
4419 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1.jar" />
4420 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1-sources.jar" />
4421 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1.jar" />
4422 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0-sources.jar" />
4423 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0.jar" />
4424 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-api/25.2.3/1124bb83bc7f77eadf151691ece08c37ac682d3f/lint-api-25.2.3-sources.jar" />
4425 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-api/25.2.3/fb7afa11dcda11d5bf0fcd3dcfec3e13ee921057/lint-api-25.2.3.jar" />
4426 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-analysis/5.0.4/asm-analysis-5.0.4.jar" />
4427 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-beanutils/commons-beanutils/1.8.0/2818502bbb50bbcbd3f57e92a2bfe4d496f37688/commons-beanutils-1.8.0-sources.jar" />
4428 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-beanutils/commons-beanutils/1.8.0/c651d5103c649c12b20d53731643e5fffceb536/commons-beanutils-1.8.0.jar" />
4429 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-collections/commons-collections/3.2.1/fa095ef874374e5b2a11f8b06c26a5d68c7cb3a4/commons-collections-3.2.1-sources.jar" />
4430 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-collections/commons-collections/3.2.1/761ea405b9b37ced573d2df0d1e3a4e0f9edc668/commons-collections-3.2.1.jar" />
4431 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.4/2b8c4b3035e45520ef42033e823c7d33e4b4402c/commons-lang-2.4-sources.jar" />
4432 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.4/16313e02a793435009f1e458fa4af5d879f6fb11/commons-lang-2.4.jar" />
4433 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1-sources.jar" />
4434 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar" />
4435 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.ezmorph/ezmorph/1.0.6/298992280d62b944afd0ae9bfe3329f5487dd434/ezmorph-1.0.6-sources.jar" />
4436 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.ezmorph/ezmorph/1.0.6/1e55d2a0253ea37745d33062852fd2c90027432/ezmorph-1.0.6.jar" />
4437 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xerces/xercesImpl/2.9.1/e30837a0843d5ea477b9334efdb730e66ffbd253/xercesImpl-2.9.1-sources.jar" />
4438 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xerces/xercesImpl/2.9.1/1136d197e2755bbde296ceee217ec5fe2917477b/xercesImpl-2.9.1.jar" />
4439 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/intellij/annotations/12.0/annotations-12.0-sources.jar" />
4440 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/intellij/annotations/12.0/annotations-12.0.jar" />
4441 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/jimfs/jimfs/1.1/jimfs-1.1.jar" />
4442 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.2.1/3f6caf5334fa83607b82e2f32dd128a9d8a0ea5e/httpcore-4.2.1-sources.jar" />
4443 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.2.1/2d503272bf0a8b5f92d64db78b4ba9abbaccc6fd/httpcore-4.2.1.jar" />
4444 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.6/61e9f9d11fe3e12ec62f633006e99d75fd7f19c8/commons-codec-1.6-sources.jar" />
4445 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.6/b7f0fc8f61ecadeb3695f0b9464755eee44374d4/commons-codec-1.6.jar" />
4446 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3-sources.jar" />
4447 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3.jar" />
4448 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.external.com-intellij/uast/145.597.4/252000592582dea402a8ff20b70c325315c2129d/uast-145.597.4-sources.jar" />
4449 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.external.com-intellij/uast/145.597.4/6b430796bdb6563146affb34fb840c64e8d1d3b1/uast-145.597.4.jar" />
4450 </list>
4451 </option>
4452 <option name="path" value="$PROJECT_DIR$/mypresonallibrary" />
4453 </ExternalModuleBuildClasspathPojo>
4454 </value>
4455 </entry>
4456 <entry key="$PROJECT_DIR$/pickerview">
4457 <value>
4458 <ExternalModuleBuildClasspathPojo>
4459 <option name="entries">
4460 <list>
4461 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle/2.2.3/344060a1bf4666fea5590eeee815fc2a79b5235a/gradle-2.2.3-sources.jar" />
4462 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle/2.2.3/7b8f79621d95e3ce1e95c0852db14d9d7e1d1951/gradle-2.2.3.jar" />
4463 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.novoda/bintray-release/0.3.4/cb71174eee0e8a07208baa52ee6af7f858445b1a/bintray-release-0.3.4-sources.jar" />
4464 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.novoda/bintray-release/0.3.4/101de762c1aa70b99601c94ccf4879695f8559d3/bintray-release-0.3.4.jar" />
4465 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.dcendents/android-maven-gradle-plugin/1.5/2c1a13fd33e662909442ce13ff669e894f225ae0/android-maven-gradle-plugin-1.5-sources.jar" />
4466 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.github.dcendents/android-maven-gradle-plugin/1.5/f98b3f3c79c3b918043d636f8abbf59f937306b2/android-maven-gradle-plugin-1.5.jar" />
4467 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-core/2.2.3/bfc5ed39e7ac5890d6cf80e8c5545dab9021b810/gradle-core-2.2.3-sources.jar" />
4468 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-core/2.2.3/3a777b0626810e0ccdced7d750ac4b60c279616c/gradle-core-2.2.3.jar" />
4469 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jfrog.bintray.gradle/gradle-bintray-plugin/1.3.1/c66b2388a77bbf5750b1fadff9b1ccbe3e84a86d/gradle-bintray-plugin-1.3.1-sources.jar" />
4470 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.jfrog.bintray.gradle/gradle-bintray-plugin/1.3.1/12a572adeff745e7a320486f4345fad05fa23555/gradle-bintray-plugin-1.3.1.jar" />
4471 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder/2.2.3/8d059a6102806269aee14d470bc73d44c0bfa4f0/builder-2.2.3-sources.jar" />
4472 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder/2.2.3/13e7339544e824a3a5f8ecff42173c013791578b/builder-2.2.3.jar" />
4473 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint/25.2.3/9ca2dd056b351c893bae1c7ac1232454ec328517/lint-25.2.3-sources.jar" />
4474 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint/25.2.3/aa03a3669f2913b9bc6f5f4fba4418f974e48cb7/lint-25.2.3.jar" />
4475 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/build/transform-api/2.0.0-deprecated-use-gradle-api/transform-api-2.0.0-deprecated-use-gradle-api.jar" />
4476 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-api/2.2.3/9e3531016922fe9b88fb9f7ae9f5b0dd3289ae4f/gradle-api-2.2.3-sources.jar" />
4477 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle-api/2.2.3/9a45614f789d4aab624d2a61983263885f42b615/gradle-api-2.2.3.jar" />
4478 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/compilerCommon/2.2.3/aee7a865f76af8f91963ce3f8b3f62070f6eeeb/compilerCommon-2.2.3-sources.jar" />
4479 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/compilerCommon/2.2.3/8c3829022a54acd042b5382a4a873ee2d64c29ee/compilerCommon-2.2.3.jar" />
4480 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm/5.0.4/asm-5.0.4.jar" />
4481 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-commons/5.0.4/asm-commons-5.0.4.jar" />
4482 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-gradle/5.2.1/proguard-gradle-5.2.1-sources.jar" />
4483 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-gradle/5.2.1/proguard-gradle-5.2.1.jar" />
4484 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/jacoco/org.jacoco.core/0.7.5.201505241946/org.jacoco.core-0.7.5.201505241946.jar" />
4485 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/jacoco/org.jacoco.report/0.7.5.201505241946/org.jacoco.report-0.7.5.201505241946.jar" />
4486 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/jopt-simple/jopt-simple/4.9/jopt-simple-4.9.jar" />
4487 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/protobuf/protobuf-java/2.5.0/protobuf-java-2.5.0.jar" />
4488 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr/3.5.2/antlr-3.5.2.jar" />
4489 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy.modules.http-builder/http-builder/0.7.2/f1860181de06236f28f3f247aed57fa4631016d8/http-builder-0.7.2-sources.jar" />
4490 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.codehaus.groovy.modules.http-builder/http-builder/0.7.2/323092cd786480311c1cf693770f9e6fc20a8bef/http-builder-0.7.2.jar" />
4491 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-model/2.2.3/1f3c26cd56ec3199fc49634cfa37647cd811a8c3/builder-model-2.2.3-sources.jar" />
4492 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-model/2.2.3/eddf6035ce0a31651527b4c3cc239428e877c43a/builder-model-2.2.3.jar" />
4493 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-test-api/2.2.3/746c5f19def7dfc91844b3edf2f99b2356aa4610/builder-test-api-2.2.3-sources.jar" />
4494 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/builder-test-api/2.2.3/700079fc243c217dbd6250ac01d2d6210ca8a0d6/builder-test-api-2.2.3.jar" />
4495 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdklib/25.2.3/5743d9517e0aa71e0fbcba2a20affba66b2b2753/sdklib-25.2.3-sources.jar" />
4496 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdklib/25.2.3/9f12cfc56b1df4e42fa2b73f9936b586b9a56a2/sdklib-25.2.3.jar" />
4497 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdk-common/25.2.3/30ff0547c45f5f079a7fd9c9ac69f93d3b0e955f/sdk-common-25.2.3-sources.jar" />
4498 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/sdk-common/25.2.3/2c49ca3df5bb961473b096bab2a615a7cda50dc/sdk-common-25.2.3.jar" />
4499 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/common/25.2.3/3ef7cd06f588852bae10a304d3855a2d51d6d642/common-25.2.3-sources.jar" />
4500 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/common/25.2.3/255aa01048bebb511d828c6a5fc668df13b8f39d/common-25.2.3.jar" />
4501 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/manifest-merger/25.2.3/34adfc7b2d9e3ae920913b46b8b075cfa2a7afb2/manifest-merger-25.2.3-sources.jar" />
4502 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.build/manifest-merger/25.2.3/d0212c507be4c38c39f4ee06a7df5a44f500ed3b/manifest-merger-25.2.3.jar" />
4503 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.ddms/ddmlib/25.2.3/9bb4f6b357fe6d260e5c880717c1ece8a6bae6ea/ddmlib-25.2.3-sources.jar" />
4504 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.ddms/ddmlib/25.2.3/2b66df9156f476b0ccee44b378cd09073118ff59/ddmlib-25.2.3.jar" />
4505 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/jack/jack-api/0.11.0/jack-api-0.11.0.jar" />
4506 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/jill/jill-api/0.10.0/jill-api-0.10.0.jar" />
4507 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/protos/25.2.3/a9fba9b00f139a86bd907cad4c084686ff7b1a8/protos-25.2.3-sources.jar" />
4508 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/protos/25.2.3/821098054f9667d0f2536d7f2d0200d8bdd9c898/protos-25.2.3.jar" />
4509 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/shared/25.2.3/9d18a216c427959ca0e5580fb1b9b7433ce01c73/shared-25.2.3-sources.jar" />
4510 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/shared/25.2.3/785426dac20cfe596e4cf36d01aad930ffdcb05c/shared-25.2.3.jar" />
4511 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/tracker/25.2.3/8cfb7881aaada4d0fe28c6e2ab56b7150ff8bf8a/tracker-25.2.3-sources.jar" />
4512 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.analytics-library/tracker/25.2.3/c807f7b3d9aa3cee795ecac620d22c5ca7dd92e1/tracker-25.2.3.jar" />
4513 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/squareup/javawriter/2.5.0/javawriter-2.5.0-sources.jar" />
4514 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/squareup/javawriter/2.5.0/javawriter-2.5.0.jar" />
4515 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48-sources.jar" />
4516 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcpkix-jdk15on/1.48/bcpkix-jdk15on-1.48.jar" />
4517 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48-sources.jar" />
4518 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/bouncycastle/bcprov-jdk15on/1.48/bcprov-jdk15on-1.48.jar" />
4519 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-tree/5.0.4/asm-tree-5.0.4.jar" />
4520 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-checks/25.2.3/819e632d46915e2772112e07b779cc878cad4a88/lint-checks-25.2.3-sources.jar" />
4521 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-checks/25.2.3/eae71c1f5ce54195dc821133e3a5df8145de8ff5/lint-checks-25.2.3.jar" />
4522 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/eclipse/jdt/core/compiler/ecj/4.5.1/ecj-4.5.1.jar" />
4523 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/guava/guava/18.0/guava-18.0.jar" />
4524 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/baseLibrary/2.2.3/212ef3aaf0963bf1985c999e1daa4e8c43825a3f/baseLibrary-2.2.3-sources.jar" />
4525 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.databinding/baseLibrary/2.2.3/b4b51d1925cdfda98fd861230c1ecb5855500129/baseLibrary-2.2.3.jar" />
4526 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr4/4.5.3/antlr4-4.5.3.jar" />
4527 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-io/commons-io/2.4/commons-io-2.4-sources.jar" />
4528 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-io/commons-io/2.4/commons-io-2.4.jar" />
4529 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/googlecode/juniversalchardet/juniversalchardet/1.0.3/juniversalchardet-1.0.3.jar" />
4530 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/annotations/25.2.3/14970b6fa3881b4622abdec9d64866a687261236/annotations-25.2.3-sources.jar" />
4531 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/annotations/25.2.3/a9970f79003cbf4aaaf26a5590aca7066f209347/annotations-25.2.3.jar" />
4532 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-base/5.2.1/proguard-base-5.2.1-sources.jar" />
4533 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/proguard/proguard-base/5.2.1/proguard-base-5.2.1.jar" />
4534 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-debug-all/5.0.1/asm-debug-all-5.0.1-sources.jar" />
4535 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-debug-all/5.0.1/asm-debug-all-5.0.1.jar" />
4536 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/antlr-runtime/3.5.2/antlr-runtime-3.5.2.jar" />
4537 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/antlr/ST4/4.0.8/ST4-4.0.8.jar" />
4538 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.2.1/6b27312b9c28b59aaeb6c21f3490045690c703d3/httpclient-4.2.1-sources.jar" />
4539 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpclient/4.2.1/b69bd03af60bf487b3ae1209a644ecac587bf6fc/httpclient-4.2.1.jar" />
4540 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.json-lib/json-lib/2.3/f35340c0a0380141f62c72b76c8fb4bfa638d8c1/json-lib-2.3-jdk15.jar" />
4541 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.16/2d40ea21fae95418331ddc66efb6744a38bf59a/nekohtml-1.9.16-sources.jar" />
4542 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.16/61e35204e5a8fdb864152f84e2e3b33ab56f50ab/nekohtml-1.9.16.jar" />
4543 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xml-resolver/xml-resolver/1.2/6b72432ea1c5296783007365bb7c9a6b39dfb730/xml-resolver-1.2-sources.jar" />
4544 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xml-resolver/xml-resolver/1.2/3d0f97750b3a03e0971831566067754ba4bfd68c/xml-resolver-1.2.jar" />
4545 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.layoutlib/layoutlib-api/25.2.3/2688434b8868bd41526b79d49330116b2da464a9/layoutlib-api-25.2.3-sources.jar" />
4546 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.layoutlib/layoutlib-api/25.2.3/ead9944caa7cba814184148efe69faf8896f4478/layoutlib-api-25.2.3.jar" />
4547 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/dvlib/25.2.3/bcca419668a00afc455b481a5541c43083f1cd08/dvlib-25.2.3-sources.jar" />
4548 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/dvlib/25.2.3/5afd79f645811a98c0519141cc13900c659091a8/dvlib-25.2.3.jar" />
4549 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/repository/25.2.3/b17b0ce2b6c0063ee4ebcd49becc4054cb6b7e98/repository-25.2.3-sources.jar" />
4550 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools/repository/25.2.3/179dee8115834f40bd9b39675da3a0273174c3ca/repository-25.2.3.jar" />
4551 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/code/gson/gson/2.2.4/gson-2.2.4-sources.jar" />
4552 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar" />
4553 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1-sources.jar" />
4554 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1.jar" />
4555 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1-sources.jar" />
4556 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/apache/httpcomponents/httpmime/4.1/httpmime-4.1.jar" />
4557 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0-sources.jar" />
4558 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/net/sf/kxml/kxml2/2.3.0/kxml2-2.3.0.jar" />
4559 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-api/25.2.3/1124bb83bc7f77eadf151691ece08c37ac682d3f/lint-api-25.2.3-sources.jar" />
4560 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.lint/lint-api/25.2.3/fb7afa11dcda11d5bf0fcd3dcfec3e13ee921057/lint-api-25.2.3.jar" />
4561 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/org/ow2/asm/asm-analysis/5.0.4/asm-analysis-5.0.4.jar" />
4562 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-beanutils/commons-beanutils/1.8.0/2818502bbb50bbcbd3f57e92a2bfe4d496f37688/commons-beanutils-1.8.0-sources.jar" />
4563 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-beanutils/commons-beanutils/1.8.0/c651d5103c649c12b20d53731643e5fffceb536/commons-beanutils-1.8.0.jar" />
4564 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-collections/commons-collections/3.2.1/fa095ef874374e5b2a11f8b06c26a5d68c7cb3a4/commons-collections-3.2.1-sources.jar" />
4565 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-collections/commons-collections/3.2.1/761ea405b9b37ced573d2df0d1e3a4e0f9edc668/commons-collections-3.2.1.jar" />
4566 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.4/2b8c4b3035e45520ef42033e823c7d33e4b4402c/commons-lang-2.4-sources.jar" />
4567 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.4/16313e02a793435009f1e458fa4af5d879f6fb11/commons-lang-2.4.jar" />
4568 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1-sources.jar" />
4569 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar" />
4570 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.ezmorph/ezmorph/1.0.6/298992280d62b944afd0ae9bfe3329f5487dd434/ezmorph-1.0.6-sources.jar" />
4571 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/net.sf.ezmorph/ezmorph/1.0.6/1e55d2a0253ea37745d33062852fd2c90027432/ezmorph-1.0.6.jar" />
4572 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xerces/xercesImpl/2.9.1/e30837a0843d5ea477b9334efdb730e66ffbd253/xercesImpl-2.9.1-sources.jar" />
4573 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/xerces/xercesImpl/2.9.1/1136d197e2755bbde296ceee217ec5fe2917477b/xercesImpl-2.9.1.jar" />
4574 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/intellij/annotations/12.0/annotations-12.0-sources.jar" />
4575 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/intellij/annotations/12.0/annotations-12.0.jar" />
4576 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/google/jimfs/jimfs/1.1/jimfs-1.1.jar" />
4577 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.2.1/3f6caf5334fa83607b82e2f32dd128a9d8a0ea5e/httpcore-4.2.1-sources.jar" />
4578 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpcore/4.2.1/2d503272bf0a8b5f92d64db78b4ba9abbaccc6fd/httpcore-4.2.1.jar" />
4579 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.6/61e9f9d11fe3e12ec62f633006e99d75fd7f19c8/commons-codec-1.6-sources.jar" />
4580 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-codec/commons-codec/1.6/b7f0fc8f61ecadeb3695f0b9464755eee44374d4/commons-codec-1.6.jar" />
4581 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3-sources.jar" />
4582 <option value="$APPLICATION_HOME_DIR$/gradle/m2repository/com/android/tools/external/lombok/lombok-ast/0.2.3/lombok-ast-0.2.3.jar" />
4583 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.external.com-intellij/uast/145.597.4/252000592582dea402a8ff20b70c325315c2129d/uast-145.597.4-sources.jar" />
4584 <option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.tools.external.com-intellij/uast/145.597.4/6b430796bdb6563146affb34fb840c64e8d1d3b1/uast-145.597.4.jar" />
4585 </list>
4586 </option>
4587 <option name="path" value="$PROJECT_DIR$/pickerview" />
4588 </ExternalModuleBuildClasspathPojo>
4589 </value>
4590 </entry>
4591 </map>
4592 </option>
4593 <option name="name" value="app" />
4594 <option name="projectBuildClasspath">
4595 <list>
4596 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/ant-1.9.6.jar" />
4597 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/ant-launcher-1.9.6.jar" />
4598 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-base-services-2.14.1.jar" />
4599 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-base-services-groovy-2.14.1.jar" />
4600 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-cli-2.14.1.jar" />
4601 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-core-2.14.1.jar" />
4602 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-docs-2.14.1.jar" />
4603 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-installation-beacon-2.14.1.jar" />
4604 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-jvm-services-2.14.1.jar" />
4605 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-launcher-2.14.1.jar" />
4606 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-logging-2.14.1.jar" />
4607 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-messaging-2.14.1.jar" />
4608 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-model-core-2.14.1.jar" />
4609 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-model-groovy-2.14.1.jar" />
4610 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-native-2.14.1.jar" />
4611 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-open-api-2.14.1.jar" />
4612 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-process-services-2.14.1.jar" />
4613 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-resources-2.14.1.jar" />
4614 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-tooling-api-2.14.1.jar" />
4615 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-ui-2.14.1.jar" />
4616 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/gradle-wrapper-2.14.1.jar" />
4617 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/groovy-all-2.4.4.jar" />
4618 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-announce-2.14.1.jar" />
4619 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-antlr-2.14.1.jar" />
4620 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-build-comparison-2.14.1.jar" />
4621 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-build-init-2.14.1.jar" />
4622 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-code-quality-2.14.1.jar" />
4623 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-dependency-management-2.14.1.jar" />
4624 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-diagnostics-2.14.1.jar" />
4625 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-ear-2.14.1.jar" />
4626 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-ide-2.14.1.jar" />
4627 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-ide-native-2.14.1.jar" />
4628 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-ide-play-2.14.1.jar" />
4629 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-ivy-2.14.1.jar" />
4630 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-jacoco-2.14.1.jar" />
4631 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-javascript-2.14.1.jar" />
4632 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-jetty-2.14.1.jar" />
4633 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-language-groovy-2.14.1.jar" />
4634 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-language-java-2.14.1.jar" />
4635 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-language-jvm-2.14.1.jar" />
4636 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-language-native-2.14.1.jar" />
4637 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-language-scala-2.14.1.jar" />
4638 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-maven-2.14.1.jar" />
4639 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-osgi-2.14.1.jar" />
4640 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-platform-base-2.14.1.jar" />
4641 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-platform-jvm-2.14.1.jar" />
4642 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-platform-native-2.14.1.jar" />
4643 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-platform-play-2.14.1.jar" />
4644 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-plugin-development-2.14.1.jar" />
4645 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-plugin-use-2.14.1.jar" />
4646 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-plugins-2.14.1.jar" />
4647 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-publish-2.14.1.jar" />
4648 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-reporting-2.14.1.jar" />
4649 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-resources-http-2.14.1.jar" />
4650 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-resources-s3-2.14.1.jar" />
4651 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-resources-sftp-2.14.1.jar" />
4652 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-scala-2.14.1.jar" />
4653 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-signing-2.14.1.jar" />
4654 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-sonar-2.14.1.jar" />
4655 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-test-kit-2.14.1.jar" />
4656 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-testing-base-2.14.1.jar" />
4657 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-testing-jvm-2.14.1.jar" />
4658 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-testing-native-2.14.1.jar" />
4659 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/gradle-tooling-api-builders-2.14.1.jar" />
4660 <option value="$APPLICATION_HOME_DIR$/gradle/gradle-2.14.1/lib/plugins/ivy-2.2.0.jar" />
4661 <option value="$PROJECT_DIR$/buildSrc/src/main/java" />
4662 <option value="$PROJECT_DIR$/buildSrc/src/main/groovy" />
4663 </list>
4664 </option>
4665 </ExternalProjectBuildClasspathPojo>
4666 </value>
4667 </entry>
4668 </map>
4669 </option>
4670 <option name="externalProjectsViewState">
4671 <projects_view />
4672 </option>
4673 </component>
4674 <component name="IdeDocumentHistory">
4675 <option name="CHANGED_PATHS">
4676 <list>
4677 <option value="$PROJECT_DIR$/app/src/main/res/values/strings.xml" />
4678 <option value="$PROJECT_DIR$/app/src/main/res/layout/fragment_loginandregister_login.xml" />
4679 <option value="$PROJECT_DIR$/app/src/main/res/layout/fragment_loginandregister_register.xml" />
4680 <option value="$PROJECT_DIR$/app/src/main/res/values/styles.xml" />
4681 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/interfaces/DialogCallBack.java" />
4682 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/VerSionDialog.java" />
4683 <option value="$PROJECT_DIR$/app/src/main/res/layout/activity_change_preson_info.xml" />
4684 <option value="$PROJECT_DIR$/app/src/main/res/layout/activity_feedback.xml" />
4685 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/adapter/AccountChildsAdapter.java" />
4686 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/db/Content.java" />
4687 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardInfoOKActivity.java" />
4688 <option value="$PROJECT_DIR$/app/src/main/res/layout/recycler_childaccunt_item_view.xml" />
4689 <option value="$PROJECT_DIR$/app/src/main/res/layout/activity_account_management_add.xml" />
4690 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/SysApplication.java" />
4691 <option value="$PROJECT_DIR$/app/src/main/res/layout/activity_account_management.xml" />
4692 <option value="$PROJECT_DIR$/circledialog/src/main/java/com/mylhyl/circledialog/params/ButtonParams.java" />
4693 <option value="$PROJECT_DIR$/circledialog/src/main/java/com/mylhyl/circledialog/res/values/CircleDimen.java" />
4694 <option value="$PROJECT_DIR$/circledialog/src/main/java/com/mylhyl/circledialog/res/values/CircleColor.java" />
4695 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ChangeBangDingActivity.java" />
4696 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ChangeEletronicCardPhoneActivity.java" />
4697 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ChangePasswordActivity.java" />
4698 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/FeedBackActivity.java" />
4699 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ForgotPasswordActivity.java" />
4700 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/TheStartPageActivity.java" />
4701 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/ProvinceListDialog.java" />
4702 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/CitysListDialog.java" />
4703 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/CountryDialog.java" />
4704 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/SchoolListDialog.java" />
4705 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ChangeElectronicCardAdressInfoActivity.java" />
4706 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/MyApplication.java" />
4707 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/http/HttpCode.java" />
4708 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/fragment/LoginFragment.java" />
4709 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ChoiseTextBookActivity.java" />
4710 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardLookInfoActivity.java" />
4711 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/AccountManagementActivity.java" />
4712 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/http/HttpUrl.java" />
4713 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardValidationActivity.java" />
4714 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/LoginAndRegisterActivity.java" />
4715 <option value="$PROJECT_DIR$/app/src/main/res/layout/activity_main.xml" />
4716 <option value="$PROJECT_DIR$/app/src/main/res/layout/activity_changepsword.xml" />
4717 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/http/HttpManager.java" />
4718 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ChangePresonalInfoActivity.java" />
4719 <option value="$PROJECT_DIR$/app/src/main/res/layout/fragment_changge_version_info.xml" />
4720 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/db/SaveParam.java" />
4721 <option value="$PROJECT_DIR$/app/src/main/res/layout/fragment_changge_presonal_info.xml" />
4722 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/fragment/PresonInfoFragment.java" />
4723 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/fragment/VersionsInfoFragment.java" />
4724 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/GradeListDialog.java" />
4725 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/RegisterInfoActivity.java" />
4726 <option value="$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/MainActivity.java" />
4727 <option value="$PROJECT_DIR$/app/build.gradle" />
4728 </list>
4729 </option>
4730 </component>
4731 <component name="ProjectFrameBounds">
4732 <option name="x" value="-8" />
4733 <option name="y" value="-8" />
4734 <option name="width" value="1382" />
4735 <option name="height" value="744" />
4736 </component>
4737 <component name="ProjectInspectionProfilesVisibleTreeState">
4738 <entry key="Project Default">
4739 <profile-state>
4740 <expanded-state>
4741 <State>
4742 <id />
4743 </State>
4744 <State>
4745 <id>Control flow issuesJava</id>
4746 </State>
4747 <State>
4748 <id>Java</id>
4749 </State>
4750 </expanded-state>
4751 <selected-state>
4752 <State>
4753 <id>InfiniteLoopStatement</id>
4754 </State>
4755 </selected-state>
4756 </profile-state>
4757 </entry>
4758 </component>
4759 <component name="ProjectLevelVcsManager" settingsEditedManually="false">
4760 <OptionsSetting value="true" id="Add" />
4761 <OptionsSetting value="true" id="Remove" />
4762 <OptionsSetting value="true" id="Checkout" />
4763 <OptionsSetting value="true" id="Update" />
4764 <OptionsSetting value="true" id="Status" />
4765 <OptionsSetting value="true" id="Edit" />
4766 <ConfirmationsSetting value="0" id="Add" />
4767 <ConfirmationsSetting value="0" id="Remove" />
4768 </component>
4769 <component name="ProjectView">
4770 <navigator currentView="AndroidView" proportions="" version="1">
4771 <flattenPackages />
4772 <showMembers />
4773 <showModules />
4774 <showLibraryContents />
4775 <hideEmptyPackages />
4776 <abbreviatePackageNames />
4777 <autoscrollToSource />
4778 <autoscrollFromSource />
4779 <sortByType />
4780 <manualOrder />
4781 <foldersAlwaysOnTop value="true" />
4782 </navigator>
4783 <panes>
4784 <pane id="PackagesPane" />
4785 <pane id="Scope">
4786 <subPane subId="Problems" />
4787 <subPane subId="Project Files">
4788 <PATH>
4789 <PATH_ELEMENT USER_OBJECT="Root">
4790 <option name="myItemId" value="" />
4791 <option name="myItemType" value="" />
4792 </PATH_ELEMENT>
4793 </PATH>
4794 </subPane>
4795 </pane>
4796 <pane id="AndroidView">
4797 <subPane>
4798 <PATH>
4799 <PATH_ELEMENT>
4800 <option name="myItemId" value="PersonalCenter" />
4801 <option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidViewProjectNode" />
4802 </PATH_ELEMENT>
4803 <PATH_ELEMENT>
4804 <option name="myItemId" value="Gradle Scripts" />
4805 <option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidBuildScriptsGroupNode" />
4806 </PATH_ELEMENT>
4807 </PATH>
4808 <PATH>
4809 <PATH_ELEMENT>
4810 <option name="myItemId" value="PersonalCenter" />
4811 <option name="myItemType" value="com.android.tools.idea.navigator.nodes.AndroidViewProjectNode" />
4812 </PATH_ELEMENT>
4813 </PATH>
4814 </subPane>
4815 </pane>
4816 <pane id="ProjectPane">
4817 <subPane />
4818 </pane>
4819 <pane id="Scratches">
4820 <subPane />
4821 </pane>
4822 </panes>
4823 </component>
4824 <component name="PropertiesComponent">
4825 <property name="android.project.structure.last.selected" value="mypresonallibrary" />
4826 <property name="android.project.structure.proportion" value="0.15" />
4827 <property name="device.picker.selection" value="0123456789ABCDEF" />
4828 <property name="UI_DESIGNER_EDITOR_MODE.NlPaletteManager-NlPreviewForm.SHOW" value="false" />
4829 <property name="last_directory_selection" value="$PROJECT_DIR$/app/src/main/res/mipmap-xhdpi" />
4830 <property name="settings.editor.selected.configurable" value="preferences.updates" />
4831 <property name="settings.editor.splitter.proportion" value="0.2" />
4832 <property name="last_opened_file_path" value="$USER_HOME$/Desktop/签名/个人中心签名/search.dat" />
4833 <property name="ExportApk.ApkPath" value="C:\Users\h\Desktop\负责的项目APK\新版本个人中心PDA" />
4834 <property name="ExportApk.Flavors" value="" />
4835 <property name="ExportApk.BuildType" value="release" />
4836 </component>
4837 <component name="RecentsManager">
4838 <key name="CopyFile.RECENT_KEYS">
4839 <recent name="D:\AdroidStotu\presonalcenter\PersonalCenter\app\src\main\res\layout" />
4840 <recent name="D:\AdroidStotu\presonalcenter\PersonalCenter\mypresonallibrary\src\main\java\com\hjx\mypresonallibrary" />
4841 <recent name="D:\AdroidStotu\presonalcenter\PersonalCenter\mypresonallibrary\src\main" />
4842 <recent name="D:\AdroidStotu\presonalcenter\PersonalCenter\app\src\main\java\com\hjx\personalcenter\service" />
4843 <recent name="D:\AdroidStotu\presonalcenter\PersonalCenter\app\src\main\res\drawable" />
4844 </key>
4845 <key name="CopyClassDialog.RECENTS_KEY">
4846 <recent name="com.hjx.personalcenter.adapter" />
4847 <recent name="com.hjx.personalcenter.util" />
4848 <recent name="com.hjx.personalcenter.activity" />
4849 <recent name="com.hjx.personalcenter.widget" />
4850 </key>
4851 <key name="MoveFile.RECENT_KEYS">
4852 <recent name="D:\AdroidStotu\presonalcenter\PersonalCenter\app\libs" />
4853 </key>
4854 </component>
4855 <component name="RunManager" selected="Android App.app">
4856 <configuration default="false" name="ExampleInstrumentedT..." type="AndroidTestRunConfigurationType" factoryName="Android Tests" temporary="true" nameIsGenerated="true">
4857 <module name="app" />
4858 <option name="TESTING_TYPE" value="2" />
4859 <option name="INSTRUMENTATION_RUNNER_CLASS" value="android.support.test.runner.AndroidJUnitRunner" />
4860 <option name="METHOD_NAME" value="" />
4861 <option name="CLASS_NAME" value="com.hjx.personalcenter.ExampleInstrumentedTest" />
4862 <option name="PACKAGE_NAME" value="" />
4863 <option name="EXTRA_OPTIONS" value="" />
4864 <option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
4865 <option name="PREFERRED_AVD" value="" />
4866 <option name="CLEAR_LOGCAT" value="false" />
4867 <option name="SHOW_LOGCAT_AUTOMATICALLY" value="false" />
4868 <option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
4869 <option name="FORCE_STOP_RUNNING_APP" value="true" />
4870 <option name="DEBUGGER_TYPE" value="Auto" />
4871 <option name="USE_LAST_SELECTED_DEVICE" value="false" />
4872 <option name="PREFERRED_AVD" value="" />
4873 <option name="SELECTED_CLOUD_MATRIX_CONFIGURATION_ID" value="-1" />
4874 <option name="SELECTED_CLOUD_MATRIX_PROJECT_ID" value="" />
4875 <Auto>
4876 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
4877 <option name="WORKING_DIR" value="" />
4878 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
4879 </Auto>
4880 <Hybrid>
4881 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
4882 <option name="WORKING_DIR" value="" />
4883 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
4884 </Hybrid>
4885 <Java />
4886 <Native>
4887 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
4888 <option name="WORKING_DIR" value="" />
4889 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
4890 </Native>
4891 <Profilers>
4892 <option name="ENABLE_ADVANCED_PROFILING" value="true" />
4893 <option name="GAPID_ENABLED" value="false" />
4894 <option name="GAPID_DISABLE_PCS" value="false" />
4895 <option name="SUPPORT_LIB_ENABLED" value="true" />
4896 <option name="INSTRUMENTATION_ENABLED" value="true" />
4897 </Profilers>
4898 <method />
4899 </configuration>
4900 <configuration default="false" name="ExampleUnitTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
4901 <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
4902 <pattern>
4903 <option name="PATTERN" value="com.hjx.personalcenter.*" />
4904 <option name="ENABLED" value="true" />
4905 </pattern>
4906 </extension>
4907 <module name="app" />
4908 <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
4909 <option name="ALTERNATIVE_JRE_PATH" />
4910 <option name="PACKAGE_NAME" value="com.hjx.personalcenter" />
4911 <option name="MAIN_CLASS_NAME" value="com.hjx.personalcenter.ExampleUnitTest" />
4912 <option name="METHOD_NAME" />
4913 <option name="TEST_OBJECT" value="class" />
4914 <option name="VM_PARAMETERS" value="-ea" />
4915 <option name="PARAMETERS" />
4916 <option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/app" />
4917 <option name="ENV_VARIABLES" />
4918 <option name="PASS_PARENT_ENVS" value="true" />
4919 <option name="TEST_SEARCH_SCOPE">
4920 <value defaultName="singleModule" />
4921 </option>
4922 <envs />
4923 <patterns />
4924 <method />
4925 </configuration>
4926 <configuration default="true" type="AndroidRunConfigurationType" factoryName="Android App">
4927 <module name="" />
4928 <option name="DEPLOY" value="true" />
4929 <option name="ARTIFACT_NAME" value="" />
4930 <option name="PM_INSTALL_OPTIONS" value="" />
4931 <option name="ACTIVITY_EXTRA_FLAGS" value="" />
4932 <option name="MODE" value="default_activity" />
4933 <option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
4934 <option name="PREFERRED_AVD" value="" />
4935 <option name="CLEAR_LOGCAT" value="false" />
4936 <option name="SHOW_LOGCAT_AUTOMATICALLY" value="false" />
4937 <option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
4938 <option name="FORCE_STOP_RUNNING_APP" value="true" />
4939 <option name="DEBUGGER_TYPE" value="Auto" />
4940 <option name="USE_LAST_SELECTED_DEVICE" value="false" />
4941 <option name="PREFERRED_AVD" value="" />
4942 <option name="SELECTED_CLOUD_MATRIX_CONFIGURATION_ID" value="-1" />
4943 <option name="SELECTED_CLOUD_MATRIX_PROJECT_ID" value="" />
4944 <Auto>
4945 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
4946 <option name="WORKING_DIR" value="" />
4947 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
4948 </Auto>
4949 <Hybrid>
4950 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
4951 <option name="WORKING_DIR" value="" />
4952 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
4953 </Hybrid>
4954 <Java />
4955 <Native>
4956 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
4957 <option name="WORKING_DIR" value="" />
4958 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
4959 </Native>
4960 <Profilers>
4961 <option name="ENABLE_ADVANCED_PROFILING" value="true" />
4962 <option name="GAPID_ENABLED" value="false" />
4963 <option name="GAPID_DISABLE_PCS" value="false" />
4964 <option name="SUPPORT_LIB_ENABLED" value="true" />
4965 <option name="INSTRUMENTATION_ENABLED" value="true" />
4966 </Profilers>
4967 <option name="DEEP_LINK" value="" />
4968 <option name="ACTIVITY_CLASS" value="" />
4969 <method />
4970 </configuration>
4971 <configuration default="true" type="AndroidTestRunConfigurationType" factoryName="Android Tests">
4972 <module name="" />
4973 <option name="TESTING_TYPE" value="0" />
4974 <option name="INSTRUMENTATION_RUNNER_CLASS" value="" />
4975 <option name="METHOD_NAME" value="" />
4976 <option name="CLASS_NAME" value="" />
4977 <option name="PACKAGE_NAME" value="" />
4978 <option name="EXTRA_OPTIONS" value="" />
4979 <option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
4980 <option name="PREFERRED_AVD" value="" />
4981 <option name="CLEAR_LOGCAT" value="false" />
4982 <option name="SHOW_LOGCAT_AUTOMATICALLY" value="false" />
4983 <option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
4984 <option name="FORCE_STOP_RUNNING_APP" value="true" />
4985 <option name="DEBUGGER_TYPE" value="Auto" />
4986 <option name="USE_LAST_SELECTED_DEVICE" value="false" />
4987 <option name="PREFERRED_AVD" value="" />
4988 <option name="SELECTED_CLOUD_MATRIX_CONFIGURATION_ID" value="-1" />
4989 <option name="SELECTED_CLOUD_MATRIX_PROJECT_ID" value="" />
4990 <Auto>
4991 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
4992 <option name="WORKING_DIR" value="" />
4993 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
4994 </Auto>
4995 <Hybrid>
4996 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
4997 <option name="WORKING_DIR" value="" />
4998 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
4999 </Hybrid>
5000 <Java />
5001 <Native>
5002 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
5003 <option name="WORKING_DIR" value="" />
5004 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
5005 </Native>
5006 <Profilers>
5007 <option name="ENABLE_ADVANCED_PROFILING" value="true" />
5008 <option name="GAPID_ENABLED" value="false" />
5009 <option name="GAPID_DISABLE_PCS" value="false" />
5010 <option name="SUPPORT_LIB_ENABLED" value="true" />
5011 <option name="INSTRUMENTATION_ENABLED" value="true" />
5012 </Profilers>
5013 <method />
5014 </configuration>
5015 <configuration default="true" type="Application" factoryName="Application">
5016 <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
5017 <option name="MAIN_CLASS_NAME" />
5018 <option name="VM_PARAMETERS" />
5019 <option name="PROGRAM_PARAMETERS" />
5020 <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
5021 <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
5022 <option name="ALTERNATIVE_JRE_PATH" />
5023 <option name="ENABLE_SWING_INSPECTOR" value="false" />
5024 <option name="ENV_VARIABLES" />
5025 <option name="PASS_PARENT_ENVS" value="true" />
5026 <module name="" />
5027 <envs />
5028 <method />
5029 </configuration>
5030 <configuration default="true" type="GradleRunConfiguration" factoryName="Gradle">
5031 <ExternalSystemSettings>
5032 <option name="executionName" />
5033 <option name="externalProjectPath" />
5034 <option name="externalSystemIdString" value="GRADLE" />
5035 <option name="scriptParameters" />
5036 <option name="taskDescriptions">
5037 <list />
5038 </option>
5039 <option name="taskNames">
5040 <list />
5041 </option>
5042 <option name="vmOptions" />
5043 </ExternalSystemSettings>
5044 <method />
5045 </configuration>
5046 <configuration default="true" type="GroovyScriptRunConfiguration" factoryName="Groovy">
5047 <module name="" />
5048 <setting name="path" value="" />
5049 <setting name="vmparams" value="" />
5050 <setting name="params" value="" />
5051 <setting name="workDir" value="file://$PROJECT_DIR$" />
5052 <setting name="debug" value="false" />
5053 <method />
5054 </configuration>
5055 <configuration default="true" type="JUnit" factoryName="JUnit">
5056 <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
5057 <module name="" />
5058 <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
5059 <option name="ALTERNATIVE_JRE_PATH" />
5060 <option name="PACKAGE_NAME" />
5061 <option name="MAIN_CLASS_NAME" />
5062 <option name="METHOD_NAME" />
5063 <option name="TEST_OBJECT" value="class" />
5064 <option name="VM_PARAMETERS" value="-ea" />
5065 <option name="PARAMETERS" />
5066 <option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
5067 <option name="ENV_VARIABLES" />
5068 <option name="PASS_PARENT_ENVS" value="true" />
5069 <option name="TEST_SEARCH_SCOPE">
5070 <value defaultName="singleModule" />
5071 </option>
5072 <envs />
5073 <patterns />
5074 <method>
5075 <option name="Make" enabled="false" />
5076 <option name="Android.Gradle.BeforeRunTask" enabled="true" />
5077 </method>
5078 </configuration>
5079 <configuration default="true" type="JarApplication" factoryName="JAR Application">
5080 <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
5081 <envs />
5082 <method />
5083 </configuration>
5084 <configuration default="true" type="Java Scratch" factoryName="Java Scratch">
5085 <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
5086 <option name="SCRATCH_FILE_ID" value="0" />
5087 <option name="MAIN_CLASS_NAME" />
5088 <option name="VM_PARAMETERS" />
5089 <option name="PROGRAM_PARAMETERS" />
5090 <option name="WORKING_DIRECTORY" />
5091 <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
5092 <option name="ALTERNATIVE_JRE_PATH" />
5093 <option name="ENABLE_SWING_INSPECTOR" value="false" />
5094 <option name="ENV_VARIABLES" />
5095 <option name="PASS_PARENT_ENVS" value="true" />
5096 <module name="" />
5097 <envs />
5098 <method />
5099 </configuration>
5100 <configuration default="true" type="Remote" factoryName="Remote">
5101 <option name="USE_SOCKET_TRANSPORT" value="true" />
5102 <option name="SERVER_MODE" value="false" />
5103 <option name="SHMEM_ADDRESS" value="javadebug" />
5104 <option name="HOST" value="localhost" />
5105 <option name="PORT" value="5005" />
5106 <method />
5107 </configuration>
5108 <configuration default="true" type="TestNG" factoryName="TestNG">
5109 <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
5110 <module name="" />
5111 <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
5112 <option name="ALTERNATIVE_JRE_PATH" />
5113 <option name="SUITE_NAME" />
5114 <option name="PACKAGE_NAME" />
5115 <option name="MAIN_CLASS_NAME" />
5116 <option name="METHOD_NAME" />
5117 <option name="GROUP_NAME" />
5118 <option name="TEST_OBJECT" value="CLASS" />
5119 <option name="VM_PARAMETERS" value="-ea" />
5120 <option name="PARAMETERS" />
5121 <option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
5122 <option name="OUTPUT_DIRECTORY" />
5123 <option name="ANNOTATION_TYPE" />
5124 <option name="ENV_VARIABLES" />
5125 <option name="PASS_PARENT_ENVS" value="true" />
5126 <option name="TEST_SEARCH_SCOPE">
5127 <value defaultName="singleModule" />
5128 </option>
5129 <option name="USE_DEFAULT_REPORTERS" value="false" />
5130 <option name="PROPERTIES_FILE" />
5131 <envs />
5132 <properties />
5133 <listeners />
5134 <method />
5135 </configuration>
5136 <configuration default="true" type="TestNGTestDiscovery" factoryName="TestNG Test Discovery" changeList="All">
5137 <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
5138 <module name="" />
5139 <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
5140 <option name="ALTERNATIVE_JRE_PATH" />
5141 <option name="SUITE_NAME" />
5142 <option name="PACKAGE_NAME" />
5143 <option name="MAIN_CLASS_NAME" />
5144 <option name="METHOD_NAME" />
5145 <option name="GROUP_NAME" />
5146 <option name="TEST_OBJECT" value="CLASS" />
5147 <option name="VM_PARAMETERS" />
5148 <option name="PARAMETERS" />
5149 <option name="WORKING_DIRECTORY" />
5150 <option name="OUTPUT_DIRECTORY" />
5151 <option name="ANNOTATION_TYPE" />
5152 <option name="ENV_VARIABLES" />
5153 <option name="PASS_PARENT_ENVS" value="true" />
5154 <option name="TEST_SEARCH_SCOPE">
5155 <value defaultName="singleModule" />
5156 </option>
5157 <option name="USE_DEFAULT_REPORTERS" value="false" />
5158 <option name="PROPERTIES_FILE" />
5159 <envs />
5160 <properties />
5161 <listeners />
5162 <method />
5163 </configuration>
5164 <configuration default="false" name="app" type="AndroidRunConfigurationType" factoryName="Android App" activateToolWindowBeforeRun="false">
5165 <module name="app" />
5166 <option name="DEPLOY" value="true" />
5167 <option name="ARTIFACT_NAME" value="" />
5168 <option name="PM_INSTALL_OPTIONS" value="" />
5169 <option name="ACTIVITY_EXTRA_FLAGS" value="" />
5170 <option name="MODE" value="default_activity" />
5171 <option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
5172 <option name="PREFERRED_AVD" value="" />
5173 <option name="CLEAR_LOGCAT" value="false" />
5174 <option name="SHOW_LOGCAT_AUTOMATICALLY" value="false" />
5175 <option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
5176 <option name="FORCE_STOP_RUNNING_APP" value="true" />
5177 <option name="DEBUGGER_TYPE" value="Auto" />
5178 <option name="USE_LAST_SELECTED_DEVICE" value="false" />
5179 <option name="PREFERRED_AVD" value="" />
5180 <option name="SELECTED_CLOUD_MATRIX_CONFIGURATION_ID" value="-1" />
5181 <option name="SELECTED_CLOUD_MATRIX_PROJECT_ID" value="" />
5182 <Auto>
5183 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
5184 <option name="WORKING_DIR" value="" />
5185 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
5186 </Auto>
5187 <Hybrid>
5188 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
5189 <option name="WORKING_DIR" value="" />
5190 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
5191 </Hybrid>
5192 <Java />
5193 <Native>
5194 <option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
5195 <option name="WORKING_DIR" value="" />
5196 <option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
5197 </Native>
5198 <Profilers>
5199 <option name="ENABLE_ADVANCED_PROFILING" value="true" />
5200 <option name="GAPID_ENABLED" value="false" />
5201 <option name="GAPID_DISABLE_PCS" value="false" />
5202 <option name="SUPPORT_LIB_ENABLED" value="true" />
5203 <option name="INSTRUMENTATION_ENABLED" value="true" />
5204 </Profilers>
5205 <option name="DEEP_LINK" value="" />
5206 <option name="ACTIVITY_CLASS" value="" />
5207 <method />
5208 </configuration>
5209 <list size="3">
5210 <item index="0" class="java.lang.String" itemvalue="Android App.app" />
5211 <item index="1" class="java.lang.String" itemvalue="Android Tests.ExampleInstrumentedT..." />
5212 <item index="2" class="java.lang.String" itemvalue="JUnit.ExampleUnitTest" />
5213 </list>
5214 <recent_temporary>
5215 <list size="2">
5216 <item index="0" class="java.lang.String" itemvalue="JUnit.ExampleUnitTest" />
5217 <item index="1" class="java.lang.String" itemvalue="Android Tests.ExampleInstrumentedT..." />
5218 </list>
5219 </recent_temporary>
5220 <configuration name="&lt;template&gt;" type="Applet" default="true" selected="false">
5221 <option name="MAIN_CLASS_NAME" />
5222 <option name="HTML_FILE_NAME" />
5223 <option name="HTML_USED" value="false" />
5224 <option name="WIDTH" value="400" />
5225 <option name="HEIGHT" value="300" />
5226 <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
5227 <option name="VM_PARAMETERS" />
5228 </configuration>
5229 <configuration name="&lt;template&gt;" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" default="true" selected="false">
5230 <option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
5231 </configuration>
5232 </component>
5233 <component name="ShelveChangesManager" show_recycled="false">
5234 <option name="remove_strategy" value="false" />
5235 </component>
5236 <component name="SvnConfiguration">
5237 <configuration />
5238 </component>
5239 <component name="TaskManager">
5240 <task active="true" id="Default" summary="Default task">
5241 <changelist id="784baace-4300-40f4-87e6-3737cc99d97c" name="Default" comment="" />
5242 <created>1502707282968</created>
5243 <option name="number" value="Default" />
5244 <option name="presentableId" value="Default" />
5245 <updated>1502707282968</updated>
5246 </task>
5247 <servers />
5248 </component>
5249 <component name="TestHistory">
5250 <history-entry file="ExampleUnitTest - 2017.09.06 at 14h 35m 14s.xml">
5251 <configuration name="ExampleUnitTest" configurationId="JUnit" />
5252 </history-entry>
5253 <history-entry file="ExampleUnitTest - 2017.09.06 at 14h 36m 17s.xml">
5254 <configuration name="ExampleUnitTest" configurationId="JUnit" />
5255 </history-entry>
5256 <history-entry file="ExampleUnitTest - 2017.09.06 at 14h 36m 43s.xml">
5257 <configuration name="ExampleUnitTest" configurationId="JUnit" />
5258 </history-entry>
5259 <history-entry file="ExampleUnitTest - 2017.09.06 at 14h 37m 20s.xml">
5260 <configuration name="ExampleUnitTest" configurationId="JUnit" />
5261 </history-entry>
5262 <history-entry file="ExampleUnitTest - 2017.09.06 at 14h 37m 40s.xml">
5263 <configuration name="ExampleUnitTest" configurationId="JUnit" />
5264 </history-entry>
5265 <history-entry file="ExampleUnitTest - 2017.09.06 at 14h 39m 03s.xml">
5266 <configuration name="ExampleUnitTest" configurationId="JUnit" />
5267 </history-entry>
5268 <history-entry file="ExampleUnitTest - 2017.09.06 at 14h 47m 28s.xml">
5269 <configuration name="ExampleUnitTest" configurationId="JUnit" />
5270 </history-entry>
5271 <history-entry file="ExampleUnitTest - 2017.09.06 at 14h 57m 54s.xml">
5272 <configuration name="ExampleUnitTest" configurationId="JUnit" />
5273 </history-entry>
5274 <history-entry file="ExampleUnitTest - 2017.09.07 at 14h 52m 00s.xml">
5275 <configuration name="ExampleUnitTest" configurationId="JUnit" />
5276 </history-entry>
5277 <history-entry file="ExampleUnitTest - 2017.09.07 at 14h 57m 46s.xml">
5278 <configuration name="ExampleUnitTest" configurationId="JUnit" />
5279 </history-entry>
5280 </component>
5281 <component name="TodoView">
5282 <todo-panel id="selected-file">
5283 <is-autoscroll-to-source value="true" />
5284 </todo-panel>
5285 <todo-panel id="all">
5286 <are-packages-shown value="true" />
5287 <is-autoscroll-to-source value="true" />
5288 </todo-panel>
5289 </component>
5290 <component name="ToolWindowManager">
5291 <frame x="-8" y="-8" width="1382" height="744" extended-state="0" />
5292 <editor active="true" />
5293 <layout>
5294 <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32935154" sideWeight="0.4969743" order="7" side_tool="false" content_ui="tabs" />
5295 <window_info id="Nl-Palette" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
5296 <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.42832765" sideWeight="0.6013616" order="9" side_tool="false" content_ui="tabs" />
5297 <window_info id="Build Variants" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="true" content_ui="tabs" />
5298 <window_info id="Palette&#9;" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
5299 <window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
5300 <window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
5301 <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.42832765" sideWeight="0.39863843" order="8" side_tool="true" content_ui="tabs" />
5302 <window_info id="Android Monitor" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.23720136" sideWeight="0.698941" order="6" side_tool="false" content_ui="tabs" />
5303 <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.23037542" sideWeight="0.49394855" order="2" side_tool="false" content_ui="tabs" />
5304 <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
5305 <window_info id="Properties" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
5306 <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32935154" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
5307 <window_info id="Captures" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.24962178" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
5308 <window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
5309 <window_info id="Gradle Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.3566553" sideWeight="0.5030257" order="12" side_tool="true" content_ui="tabs" />
5310 <window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
5311 <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.22239032" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
5312 <window_info id="Gradle" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32980332" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
5313 <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.24962178" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
5314 <window_info id="Android Model" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
5315 <window_info id="Theme Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
5316 <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.3020478" sideWeight="0.4969743" order="3" side_tool="false" content_ui="tabs" />
5317 <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="true" content_ui="tabs" />
5318 <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
5319 <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
5320 <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
5321 <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
5322 <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
5323 <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
5324 <window_info id="Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.23071104" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
5325 <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.64675766" sideWeight="0.48789713" order="1" side_tool="false" content_ui="tabs" />
5326 </layout>
5327 </component>
5328 <component name="Vcs.Log.UiProperties">
5329 <option name="RECENTLY_FILTERED_USER_GROUPS">
5330 <collection />
5331 </option>
5332 <option name="RECENTLY_FILTERED_BRANCH_GROUPS">
5333 <collection />
5334 </option>
5335 </component>
5336 <component name="VcsContentAnnotationSettings">
5337 <option name="myLimit" value="2678400000" />
5338 </component>
5339 <component name="XDebuggerManager">
5340 <breakpoint-manager>
5341 <breakpoints>
5342 <line-breakpoint enabled="true" type="java-line">
5343 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardEditInfoActivity.java</url>
5344 <line>133</line>
5345 <properties />
5346 <option name="timeStamp" value="16" />
5347 </line-breakpoint>
5348 <line-breakpoint enabled="true" type="java-line">
5349 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/ProvinceListDialog.java</url>
5350 <line>75</line>
5351 <properties />
5352 <option name="timeStamp" value="22" />
5353 </line-breakpoint>
5354 <line-breakpoint enabled="true" type="java-line">
5355 <url>file://$PROJECT_DIR$/app/build.gradle</url>
5356 <line>19</line>
5357 <properties />
5358 <option name="timeStamp" value="24" />
5359 </line-breakpoint>
5360 <line-breakpoint enabled="true" type="java-line">
5361 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/adapter/SchoolAdapter.java</url>
5362 <line>85</line>
5363 <properties />
5364 <option name="timeStamp" value="36" />
5365 </line-breakpoint>
5366 <line-breakpoint enabled="true" type="java-line">
5367 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/ProvinceListDialog.java</url>
5368 <line>99</line>
5369 <properties />
5370 <option name="timeStamp" value="40" />
5371 </line-breakpoint>
5372 <line-breakpoint enabled="true" type="java-line">
5373 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/CitysListDialog.java</url>
5374 <line>111</line>
5375 <properties />
5376 <option name="timeStamp" value="41" />
5377 </line-breakpoint>
5378 <line-breakpoint enabled="true" type="java-line">
5379 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/GradeListDialog.java</url>
5380 <line>98</line>
5381 <properties />
5382 <option name="timeStamp" value="43" />
5383 </line-breakpoint>
5384 <line-breakpoint enabled="true" type="java-line">
5385 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/fragment/PresonInfoFragment.java</url>
5386 <line>245</line>
5387 <properties />
5388 <option name="timeStamp" value="48" />
5389 </line-breakpoint>
5390 <line-breakpoint enabled="true" type="java-line">
5391 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/http/HttpManager.java</url>
5392 <line>822</line>
5393 <properties />
5394 <option name="timeStamp" value="49" />
5395 </line-breakpoint>
5396 <line-breakpoint enabled="true" type="java-line">
5397 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/MainActivity.java</url>
5398 <line>424</line>
5399 <properties />
5400 <option name="timeStamp" value="50" />
5401 </line-breakpoint>
5402 <line-breakpoint enabled="true" type="java-line">
5403 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardLookInfoActivity.java</url>
5404 <line>48</line>
5405 <properties />
5406 <option name="timeStamp" value="52" />
5407 </line-breakpoint>
5408 <line-breakpoint enabled="true" type="java-line">
5409 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/fragment/LoginFragment.java</url>
5410 <line>143</line>
5411 <properties />
5412 <option name="timeStamp" value="54" />
5413 </line-breakpoint>
5414 <line-breakpoint enabled="true" type="java-line">
5415 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/update/UpdateChecker.java</url>
5416 <line>143</line>
5417 <properties />
5418 <option name="timeStamp" value="56" />
5419 </line-breakpoint>
5420 <line-breakpoint enabled="true" type="java-line">
5421 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/update/UpdateChecker.java</url>
5422 <line>69</line>
5423 <properties />
5424 <option name="timeStamp" value="58" />
5425 </line-breakpoint>
5426 <line-breakpoint enabled="true" type="java-line">
5427 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/update/UpdateChecker.java</url>
5428 <line>71</line>
5429 <properties />
5430 <option name="timeStamp" value="59" />
5431 </line-breakpoint>
5432 <line-breakpoint enabled="true" type="java-line">
5433 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/MainActivity.java</url>
5434 <line>509</line>
5435 <properties />
5436 <option name="timeStamp" value="64" />
5437 </line-breakpoint>
5438 <line-breakpoint enabled="true" type="java-line">
5439 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/http/HttpManager.java</url>
5440 <line>1258</line>
5441 <properties />
5442 <option name="timeStamp" value="65" />
5443 </line-breakpoint>
5444 <line-breakpoint enabled="true" type="java-line">
5445 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardValidationActivity.java</url>
5446 <line>171</line>
5447 <properties />
5448 <option name="timeStamp" value="71" />
5449 </line-breakpoint>
5450 <line-breakpoint enabled="true" type="java-line">
5451 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardValidationActivity.java</url>
5452 <line>126</line>
5453 <properties />
5454 <option name="timeStamp" value="73" />
5455 </line-breakpoint>
5456 <line-breakpoint enabled="true" type="java-line">
5457 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardValidationActivity.java</url>
5458 <line>146</line>
5459 <properties />
5460 <option name="timeStamp" value="75" />
5461 </line-breakpoint>
5462 <line-breakpoint enabled="true" type="java-line">
5463 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardValidationActivity.java</url>
5464 <line>97</line>
5465 <properties />
5466 <option name="timeStamp" value="78" />
5467 </line-breakpoint>
5468 <line-breakpoint enabled="true" type="java-line">
5469 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/http/HttpManager.java</url>
5470 <line>1413</line>
5471 <properties />
5472 <option name="timeStamp" value="85" />
5473 </line-breakpoint>
5474 <line-breakpoint enabled="true" type="java-line">
5475 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/MainActivity.java</url>
5476 <line>614</line>
5477 <properties />
5478 <option name="timeStamp" value="113" />
5479 </line-breakpoint>
5480 <line-breakpoint enabled="true" type="java-line">
5481 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/MainActivity.java</url>
5482 <line>623</line>
5483 <properties />
5484 <option name="timeStamp" value="114" />
5485 </line-breakpoint>
5486 <line-breakpoint enabled="true" type="java-line">
5487 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/MainActivity.java</url>
5488 <line>608</line>
5489 <properties />
5490 <option name="timeStamp" value="116" />
5491 </line-breakpoint>
5492 <line-breakpoint enabled="true" type="java-line">
5493 <url>file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardValidationActivity.java</url>
5494 <line>138</line>
5495 <properties />
5496 <option name="timeStamp" value="119" />
5497 </line-breakpoint>
5498 </breakpoints>
5499 <option name="time" value="120" />
5500 </breakpoint-manager>
5501 <watches-manager />
5502 </component>
5503 <component name="editorHistoryManager">
5504 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ForgotPasswordActivity.java">
5505 <provider selected="true" editor-type-id="text-editor">
5506 <state relative-caret-position="231">
5507 <caret line="115" column="19" selection-start-line="115" selection-start-column="19" selection-end-line="115" selection-end-column="19" />
5508 <folding />
5509 </state>
5510 </provider>
5511 </entry>
5512 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/SysApplication.java">
5513 <provider selected="true" editor-type-id="text-editor">
5514 <state relative-caret-position="190">
5515 <caret line="28" column="13" selection-start-line="28" selection-start-column="13" selection-end-line="28" selection-end-column="13" />
5516 </state>
5517 </provider>
5518 </entry>
5519 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/ProvinceListDialog.java">
5520 <provider selected="true" editor-type-id="text-editor">
5521 <state relative-caret-position="339">
5522 <caret line="96" column="37" selection-start-line="96" selection-start-column="37" selection-end-line="96" selection-end-column="37" />
5523 <folding />
5524 </state>
5525 </provider>
5526 </entry>
5527 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ChangeElectronicCardAdressInfoActivity.java">
5528 <provider selected="true" editor-type-id="text-editor">
5529 <state relative-caret-position="153">
5530 <caret line="182" column="60" selection-start-line="182" selection-start-column="47" selection-end-line="182" selection-end-column="60" />
5531 <folding />
5532 </state>
5533 </provider>
5534 </entry>
5535 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/CountryDialog.java">
5536 <provider selected="true" editor-type-id="text-editor">
5537 <state relative-caret-position="108">
5538 <caret line="85" column="21" selection-start-line="85" selection-start-column="21" selection-end-line="85" selection-end-column="21" />
5539 </state>
5540 </provider>
5541 </entry>
5542 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/CitysListDialog.java">
5543 <provider selected="true" editor-type-id="text-editor">
5544 <state relative-caret-position="1026">
5545 <caret line="87" column="63" selection-start-line="87" selection-start-column="47" selection-end-line="87" selection-end-column="63" />
5546 <folding />
5547 </state>
5548 </provider>
5549 </entry>
5550 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/FeedBackActivity.java">
5551 <provider selected="true" editor-type-id="text-editor">
5552 <state relative-caret-position="1404">
5553 <caret line="118" column="53" selection-start-line="118" selection-start-column="53" selection-end-line="118" selection-end-column="53" />
5554 <folding />
5555 </state>
5556 </provider>
5557 </entry>
5558 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/SchoolListDialog.java">
5559 <provider selected="true" editor-type-id="text-editor">
5560 <state relative-caret-position="1188">
5561 <caret line="97" column="98" selection-start-line="97" selection-start-column="91" selection-end-line="97" selection-end-column="98" />
5562 </state>
5563 </provider>
5564 </entry>
5565 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/MyApplication.java">
5566 <provider selected="true" editor-type-id="text-editor">
5567 <state relative-caret-position="108">
5568 <caret line="34" column="24" selection-start-line="34" selection-start-column="24" selection-end-line="34" selection-end-column="24" />
5569 </state>
5570 </provider>
5571 </entry>
5572 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/http/HttpCode.java">
5573 <provider selected="true" editor-type-id="text-editor">
5574 <state relative-caret-position="230">
5575 <caret line="56" column="43" selection-start-line="56" selection-start-column="28" selection-end-line="56" selection-end-column="43" />
5576 <folding />
5577 </state>
5578 </provider>
5579 </entry>
5580 <entry file="file://$USER_HOME$/AppData/Local/Android/sdk/sources/android-25/android/os/Trace.java">
5581 <provider selected="true" editor-type-id="text-editor">
5582 <state relative-caret-position="168">
5583 <caret line="215" column="0" selection-start-line="215" selection-start-column="0" selection-end-line="215" selection-end-column="0" />
5584 </state>
5585 </provider>
5586 </entry>
5587 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/TheStartPageActivity.java">
5588 <provider selected="true" editor-type-id="text-editor">
5589 <state relative-caret-position="233">
5590 <caret line="47" column="52" selection-start-line="42" selection-start-column="16" selection-end-line="47" selection-end-column="52" />
5591 </state>
5592 </provider>
5593 </entry>
5594 <entry file="file://$PROJECT_DIR$/app/src/main/AndroidManifest.xml">
5595 <provider selected="true" editor-type-id="text-editor">
5596 <state relative-caret-position="-2179">
5597 <caret line="14" column="49" selection-start-line="13" selection-start-column="12" selection-end-line="14" selection-end-column="49" />
5598 <folding />
5599 </state>
5600 </provider>
5601 <provider editor-type-id="android-manifest">
5602 <state />
5603 </provider>
5604 </entry>
5605 <entry file="file://$USER_HOME$/AppData/Local/Android/sdk/sources/android-25/android/app/Activity.java">
5606 <provider selected="true" editor-type-id="text-editor">
5607 <state relative-caret-position="73">
5608 <caret line="5429" column="0" selection-start-line="5429" selection-start-column="0" selection-end-line="5429" selection-end-column="0" />
5609 <folding />
5610 </state>
5611 </provider>
5612 </entry>
5613 <entry file="file://$USER_HOME$/AppData/Local/Android/sdk/sources/android-25/android/app/ActivityThread.java">
5614 <provider selected="true" editor-type-id="text-editor">
5615 <state relative-caret-position="216">
5616 <caret line="3399" column="0" selection-start-line="3399" selection-start-column="0" selection-end-line="3399" selection-end-column="0" />
5617 </state>
5618 </provider>
5619 </entry>
5620 <entry file="jar://$PROJECT_DIR$/app/libs/android-async-http-1.4.8.jar!/com/loopj/android/http/AsyncHttpResponseHandler.class">
5621 <provider selected="true" editor-type-id="text-editor">
5622 <state relative-caret-position="189">
5623 <caret line="206" column="0" selection-start-line="206" selection-start-column="0" selection-end-line="206" selection-end-column="0" />
5624 </state>
5625 </provider>
5626 </entry>
5627 <entry file="file://$USER_HOME$/AppData/Local/Android/sdk/sources/android-25/android/os/Looper.java">
5628 <provider selected="true" editor-type-id="text-editor">
5629 <state relative-caret-position="114">
5630 <caret line="161" column="0" selection-start-line="161" selection-start-column="0" selection-end-line="161" selection-end-column="0" />
5631 </state>
5632 </provider>
5633 </entry>
5634 <entry file="file://$USER_HOME$/AppData/Local/Android/sdk/sources/android-25/android/os/Handler.java">
5635 <provider selected="true" editor-type-id="text-editor">
5636 <state relative-caret-position="114">
5637 <caret line="683" column="0" selection-start-line="683" selection-start-column="0" selection-end-line="683" selection-end-column="0" />
5638 <folding />
5639 </state>
5640 </provider>
5641 </entry>
5642 <entry file="file://$USER_HOME$/AppData/Local/Android/sdk/sources/android-25/android/view/Window.java">
5643 <provider selected="true" editor-type-id="text-editor">
5644 <state relative-caret-position="126">
5645 <caret line="455" column="0" selection-start-line="455" selection-start-column="0" selection-end-line="455" selection-end-column="0" />
5646 </state>
5647 </provider>
5648 </entry>
5649 <entry file="file://$USER_HOME$/AppData/Local/Android/sdk/sources/android-25/android/app/Dialog.java">
5650 <provider selected="true" editor-type-id="text-editor">
5651 <state relative-caret-position="222">
5652 <caret line="328" column="0" selection-start-line="328" selection-start-column="0" selection-end-line="328" selection-end-column="0" />
5653 </state>
5654 </provider>
5655 </entry>
5656 <entry file="file://$USER_HOME$/AppData/Local/Android/sdk/sources/android-25/android/view/WindowManagerImpl.java">
5657 <provider selected="true" editor-type-id="text-editor">
5658 <state relative-caret-position="126">
5659 <caret line="83" column="0" selection-start-line="83" selection-start-column="0" selection-end-line="83" selection-end-column="0" />
5660 </state>
5661 </provider>
5662 </entry>
5663 <entry file="file://$USER_HOME$/AppData/Local/Android/sdk/sources/android-25/android/view/ViewRootImpl.java">
5664 <provider selected="true" editor-type-id="text-editor">
5665 <state relative-caret-position="126">
5666 <caret line="739" column="0" selection-start-line="739" selection-start-column="0" selection-end-line="739" selection-end-column="0" />
5667 </state>
5668 </provider>
5669 </entry>
5670 <entry file="file://$USER_HOME$/AppData/Local/Android/sdk/sources/android-25/android/view/WindowManagerGlobal.java">
5671 <provider selected="true" editor-type-id="text-editor">
5672 <state relative-caret-position="198">
5673 <caret line="340" column="0" selection-start-line="340" selection-start-column="0" selection-end-line="340" selection-end-column="0" />
5674 </state>
5675 </provider>
5676 </entry>
5677 <entry file="file://$USER_HOME$/AppData/Local/Android/sdk/sources/android-25/android/view/inputmethod/InputMethodManager.java">
5678 <provider selected="true" editor-type-id="text-editor">
5679 <state relative-caret-position="234">
5680 <caret line="566" column="0" selection-start-line="566" selection-start-column="0" selection-end-line="566" selection-end-column="0" />
5681 </state>
5682 </provider>
5683 </entry>
5684 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ChoiseTextBookActivity.java">
5685 <provider selected="true" editor-type-id="text-editor">
5686 <state relative-caret-position="236">
5687 <caret line="72" column="92" selection-start-line="72" selection-start-column="92" selection-end-line="72" selection-end-column="92" />
5688 <folding />
5689 </state>
5690 </provider>
5691 </entry>
5692 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardLookInfoActivity.java">
5693 <provider selected="true" editor-type-id="text-editor">
5694 <state relative-caret-position="117">
5695 <caret line="127" column="0" selection-start-line="127" selection-start-column="0" selection-end-line="127" selection-end-column="41" />
5696 <folding />
5697 </state>
5698 </provider>
5699 </entry>
5700 <entry file="file://$PROJECT_DIR$/app/src/main/res/layout/activity_main.xml">
5701 <provider selected="true" editor-type-id="text-editor">
5702 <state relative-caret-position="270">
5703 <caret line="498" column="43" selection-start-line="498" selection-start-column="43" selection-end-line="498" selection-end-column="43" />
5704 </state>
5705 </provider>
5706 <provider editor-type-id="android-designer2">
5707 <state />
5708 </provider>
5709 </entry>
5710 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/http/HttpManager.java">
5711 <provider selected="true" editor-type-id="text-editor">
5712 <state relative-caret-position="894">
5713 <caret line="203" column="46" selection-start-line="203" selection-start-column="46" selection-end-line="203" selection-end-column="46" />
5714 <folding />
5715 </state>
5716 </provider>
5717 </entry>
5718 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/LoginAndRegisterActivity.java">
5719 <provider selected="true" editor-type-id="text-editor">
5720 <state relative-caret-position="1656">
5721 <caret line="115" column="30" selection-start-line="115" selection-start-column="30" selection-end-line="115" selection-end-column="30" />
5722 </state>
5723 </provider>
5724 </entry>
5725 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/fragment/LoginFragment.java">
5726 <provider selected="true" editor-type-id="text-editor">
5727 <state relative-caret-position="900">
5728 <caret line="79" column="67" selection-start-line="79" selection-start-column="67" selection-end-line="79" selection-end-column="67" />
5729 <folding>
5730 <element signature="imports" expanded="false" />
5731 </folding>
5732 </state>
5733 </provider>
5734 </entry>
5735 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ChangePasswordActivity.java">
5736 <provider selected="true" editor-type-id="text-editor">
5737 <state relative-caret-position="1224">
5738 <caret line="82" column="53" selection-start-line="82" selection-start-column="53" selection-end-line="82" selection-end-column="53" />
5739 </state>
5740 </provider>
5741 </entry>
5742 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ElectronicCardValidationActivity.java">
5743 <provider selected="true" editor-type-id="text-editor">
5744 <state relative-caret-position="2232">
5745 <caret line="146" column="61" selection-start-line="146" selection-start-column="61" selection-end-line="146" selection-end-column="61" />
5746 <folding>
5747 <element signature="imports" expanded="false" />
5748 </folding>
5749 </state>
5750 </provider>
5751 </entry>
5752 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/http/HttpUrl.java">
5753 <provider selected="true" editor-type-id="text-editor">
5754 <state relative-caret-position="828">
5755 <caret line="46" column="60" selection-start-line="46" selection-start-column="60" selection-end-line="46" selection-end-column="60" />
5756 </state>
5757 </provider>
5758 </entry>
5759 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/util/BrithdayStar.java">
5760 <provider selected="true" editor-type-id="text-editor">
5761 <state relative-caret-position="59">
5762 <caret line="15" column="0" selection-start-line="15" selection-start-column="0" selection-end-line="15" selection-end-column="0" />
5763 </state>
5764 </provider>
5765 </entry>
5766 <entry file="file://$PROJECT_DIR$/app/src/main/res/layout/activity_changepsword.xml">
5767 <provider selected="true" editor-type-id="text-editor">
5768 <state relative-caret-position="236">
5769 <caret line="76" column="48" selection-start-line="76" selection-start-column="48" selection-end-line="76" selection-end-column="48" />
5770 </state>
5771 </provider>
5772 <provider editor-type-id="android-designer2">
5773 <state />
5774 </provider>
5775 </entry>
5776 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/adapter/LoginAndRegisterAdapter.java">
5777 <provider selected="true" editor-type-id="text-editor">
5778 <state relative-caret-position="235">
5779 <caret line="20" column="13" selection-start-line="20" selection-start-column="13" selection-end-line="20" selection-end-column="13" />
5780 </state>
5781 </provider>
5782 </entry>
5783 <entry file="jar://$USER_HOME$/AppData/Local/Android/sdk/extras/android/m2repository/com/android/support/support-core-ui/25.3.1/support-core-ui-25.3.1-sources.jar!/android/support/v4/view/ViewPager.java">
5784 <provider selected="true" editor-type-id="text-editor">
5785 <state relative-caret-position="135">
5786 <caret line="2145" column="45" selection-start-line="2145" selection-start-column="36" selection-end-line="2145" selection-end-column="45" />
5787 </state>
5788 </provider>
5789 </entry>
5790 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/ChangePresonalInfoActivity.java">
5791 <provider selected="true" editor-type-id="text-editor">
5792 <state relative-caret-position="144">
5793 <caret line="51" column="29" selection-start-line="51" selection-start-column="29" selection-end-line="51" selection-end-column="29" />
5794 </state>
5795 </provider>
5796 </entry>
5797 <entry file="file://$PROJECT_DIR$/app/src/main/res/layout/fragment_changge_version_info.xml">
5798 <provider selected="true" editor-type-id="text-editor">
5799 <state relative-caret-position="450">
5800 <caret line="91" column="42" selection-start-line="91" selection-start-column="42" selection-end-line="91" selection-end-column="42" />
5801 </state>
5802 </provider>
5803 <provider editor-type-id="android-designer2">
5804 <state />
5805 </provider>
5806 </entry>
5807 <entry file="file://$PROJECT_DIR$/app/src/main/res/values/colors.xml">
5808 <provider selected="true" editor-type-id="text-editor">
5809 <state relative-caret-position="238">
5810 <caret line="14" column="17" selection-start-line="14" selection-start-column="17" selection-end-line="14" selection-end-column="17" />
5811 <folding />
5812 </state>
5813 </provider>
5814 </entry>
5815 <entry file="file://$PROJECT_DIR$/app/src/main/res/layout/fragment_changge_presonal_info.xml">
5816 <provider selected="true" editor-type-id="text-editor">
5817 <state relative-caret-position="72">
5818 <caret line="140" column="50" selection-start-line="140" selection-start-column="50" selection-end-line="140" selection-end-column="50" />
5819 <folding />
5820 </state>
5821 </provider>
5822 <provider editor-type-id="android-designer2">
5823 <state />
5824 </provider>
5825 </entry>
5826 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/fragment/VersionsInfoFragment.java">
5827 <provider selected="true" editor-type-id="text-editor">
5828 <state relative-caret-position="2250">
5829 <caret line="154" column="38" selection-start-line="154" selection-start-column="38" selection-end-line="154" selection-end-column="38" />
5830 <folding>
5831 <element signature="imports" expanded="false" />
5832 </folding>
5833 </state>
5834 </provider>
5835 </entry>
5836 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/AccountManagementActivity.java">
5837 <provider selected="true" editor-type-id="text-editor">
5838 <state relative-caret-position="288">
5839 <caret line="41" column="21" selection-start-line="41" selection-start-column="21" selection-end-line="41" selection-end-column="21" />
5840 <folding>
5841 <element signature="imports" expanded="false" />
5842 </folding>
5843 </state>
5844 </provider>
5845 </entry>
5846 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/adapter/AccountChildsAdapter.java">
5847 <provider selected="true" editor-type-id="text-editor">
5848 <state relative-caret-position="2700">
5849 <caret line="177" column="36" selection-start-line="177" selection-start-column="20" selection-end-line="177" selection-end-column="44" />
5850 <folding>
5851 <element signature="imports" expanded="false" />
5852 <element signature="e#1807#1808#0" expanded="false" />
5853 <element signature="e#1848#1849#0" expanded="false" />
5854 <element signature="e#1892#1893#0" expanded="false" />
5855 <element signature="e#1962#1963#0" expanded="false" />
5856 </folding>
5857 </state>
5858 </provider>
5859 </entry>
5860 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/db/Content.java">
5861 <provider selected="true" editor-type-id="text-editor">
5862 <state relative-caret-position="162">
5863 <caret line="9" column="23" selection-start-line="9" selection-start-column="23" selection-end-line="9" selection-end-column="23" />
5864 <folding />
5865 </state>
5866 </provider>
5867 </entry>
5868 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/customdialog/GradeListDialog.java">
5869 <provider selected="true" editor-type-id="text-editor">
5870 <state relative-caret-position="1098">
5871 <caret line="90" column="7" selection-start-line="90" selection-start-column="7" selection-end-line="90" selection-end-column="101" />
5872 <folding>
5873 <element signature="imports" expanded="false" />
5874 <element signature="e#1404#1405#0" expanded="false" />
5875 <element signature="e#1445#1446#0" expanded="false" />
5876 <element signature="e#3125#3126#0" expanded="false" />
5877 <element signature="e#3166#3167#0" expanded="false" />
5878 </folding>
5879 </state>
5880 </provider>
5881 </entry>
5882 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/db/SaveParam.java">
5883 <provider selected="true" editor-type-id="text-editor">
5884 <state relative-caret-position="252">
5885 <caret line="16" column="25" selection-start-line="16" selection-start-column="25" selection-end-line="16" selection-end-column="25" />
5886 <folding>
5887 <element signature="imports" expanded="false" />
5888 </folding>
5889 </state>
5890 </provider>
5891 </entry>
5892 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/RegisterInfoActivity.java">
5893 <provider selected="true" editor-type-id="text-editor">
5894 <state relative-caret-position="1692">
5895 <caret line="122" column="34" selection-start-line="122" selection-start-column="34" selection-end-line="122" selection-end-column="34" />
5896 <folding>
5897 <element signature="imports" expanded="false" />
5898 <element signature="e#7459#7460#0" expanded="false" />
5899 <element signature="e#7491#7492#0" expanded="false" />
5900 </folding>
5901 </state>
5902 </provider>
5903 </entry>
5904 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/fragment/PresonInfoFragment.java">
5905 <provider selected="true" editor-type-id="text-editor">
5906 <state relative-caret-position="2610">
5907 <caret line="145" column="39" selection-start-line="145" selection-start-column="39" selection-end-line="145" selection-end-column="39" />
5908 <folding />
5909 </state>
5910 </provider>
5911 </entry>
5912 <entry file="file://$PROJECT_DIR$/app/src/main/java/com/hjx/personalcenter/activity/MainActivity.java">
5913 <provider selected="true" editor-type-id="text-editor">
5914 <state relative-caret-position="162">
5915 <caret line="570" column="5" selection-start-line="570" selection-start-column="5" selection-end-line="570" selection-end-column="5" />
5916 <folding>
5917 <element signature="imports" expanded="true" />
5918 </folding>
5919 </state>
5920 </provider>
5921 </entry>
5922 <entry file="file://$PROJECT_DIR$/app/build.gradle">
5923 <provider selected="true" editor-type-id="text-editor">
5924 <state relative-caret-position="162">
5925 <caret line="9" column="21" selection-start-line="9" selection-start-column="21" selection-end-line="9" selection-end-column="21" />
5926 <folding />
5927 </state>
5928 </provider>
5929 </entry>
5930 </component>
5931 </project>