@@ -76,6 +76,11 @@ |
||
76 | 76 |
android:label="@string/app_name" |
77 | 77 |
android:screenOrientation="portrait"></activity> |
78 | 78 |
|
79 |
+ <service android:name=".service.UpgradeService" /> |
|
80 |
+ |
|
81 |
+ <service android:name=".service.UploadService" /> |
|
82 |
+ |
|
83 |
+ |
|
79 | 84 |
</application> |
80 | 85 |
|
81 | 86 |
</manifest> |
@@ -0,0 +1,23 @@ |
||
1 |
+package ai.pai.lensman.bean; |
|
2 |
+ |
|
3 |
+ |
|
4 |
+import java.io.Serializable; |
|
5 |
+ |
|
6 |
+public class PhotoBean implements Serializable{ |
|
7 |
+ |
|
8 |
+ public long photoId; |
|
9 |
+ |
|
10 |
+ public String photoPath; |
|
11 |
+ |
|
12 |
+ public String photoName; |
|
13 |
+ |
|
14 |
+ public String sessionId; |
|
15 |
+ |
|
16 |
+ public String lensmanId; |
|
17 |
+ |
|
18 |
+ public long captureTime; |
|
19 |
+ |
|
20 |
+ public boolean isUploaded; |
|
21 |
+ |
|
22 |
+ public boolean isRawPhoto; |
|
23 |
+} |
@@ -1,9 +1,9 @@ |
||
1 |
-package ai.pai.lensman.upload; |
|
1 |
+package ai.pai.lensman.bean; |
|
2 | 2 |
|
3 | 3 |
import java.io.Serializable; |
4 | 4 |
import java.util.ArrayList; |
5 | 5 |
|
6 |
-import ai.pai.lensman.session.PhotoBean; |
|
6 |
+import ai.pai.lensman.bean.PhotoBean; |
|
7 | 7 |
|
8 | 8 |
public class SessionBean implements Serializable{ |
9 | 9 |
|
@@ -2,7 +2,7 @@ package ai.pai.lensman.box; |
||
2 | 2 |
|
3 | 3 |
import java.util.List; |
4 | 4 |
|
5 |
-import ai.pai.lensman.session.PhotoBean; |
|
5 |
+import ai.pai.lensman.bean.PhotoBean; |
|
6 | 6 |
import retrofit2.Call; |
7 | 7 |
import retrofit2.http.Field; |
8 | 8 |
import retrofit2.http.FormUrlEncoded; |
@@ -10,66 +10,21 @@ public class DBHelper extends SQLiteOpenHelper{ |
||
10 | 10 |
private static final int DB_VERSION = 1; |
11 | 11 |
private static DBHelper instance; |
12 | 12 |
|
13 |
- public static final String GROUP_INFO_TABLE = "group_info_table"; |
|
14 |
- |
|
15 |
- public static final String GROUP_LIST_TABLE = "group_list_table"; |
|
16 |
- |
|
17 |
- public interface GROUP_INFO_COLUMNS { |
|
18 |
- String GROUP_NAME = "group_name"; |
|
19 |
- String GROUP_ID = "group_id"; |
|
20 |
- String CREATE_TIME = "create_time"; |
|
21 |
- String GROUP_LOCK = "is_locked"; |
|
22 |
- String GROUP_DESC = "group_desc"; |
|
23 |
- String GROUP_FROM = "group_from"; |
|
24 |
- String GROUP_AVATAR_ID = "group_avatar_id"; |
|
25 |
- String GROUP_AVATAR_URL = "group_avatar_url"; |
|
26 |
- String GROUP_PHOTO_COUNT = "group_photo_count"; |
|
27 |
- String CURRENT_PHOTO_ID = "current_id"; |
|
28 |
- String LAST_ENTER_TIME = "last_enter_time"; |
|
29 |
- } |
|
30 |
- |
|
31 |
- |
|
32 | 13 |
public static final String PHOTO_INFO_TABLE = "photo_info_table"; |
33 | 14 |
|
34 |
- public static final String RECENT_PHOTO_TABLE = "recent_photos_table"; |
|
35 |
- |
|
36 |
- |
|
37 | 15 |
public interface PHOTO_INFO_COLUMNS { |
38 |
- String PHOTO_NAME = "photo_name"; |
|
39 | 16 |
String PHOTO_ID = "photo_id"; |
17 |
+ String PHOTO_NAME = "photo_name"; |
|
18 |
+ String PHOTO_PATH = "photo_path"; |
|
40 | 19 |
String CAPTURE_TIME = "capture_time"; |
41 |
- String THUMBNAIL_URL = "thumbnail_url"; |
|
42 |
- String PHOTO_URL = "photo_url"; |
|
43 |
- String PHOTO_GROUP_ID = "group_id"; |
|
44 |
- String PHOTO_UPLOADER_ID = "uploader_id"; |
|
45 |
- String THUMBNAIL_WIDTH = "width"; |
|
46 |
- String THUMBNAIL_HEIGHT = "height"; |
|
47 |
- String GROUP_AVATAR = "group_avatar"; |
|
48 |
- String UPLOADER_NAME = "uploader_name"; |
|
49 |
- String UPLOADER_AVATAR = "uploader_avatar"; |
|
50 |
- String COMMENT_NUM = "comment_num"; |
|
51 |
- String THUMBUP_NUM = "thumbup_num"; |
|
52 |
- String GROUP_NAME = "group_name"; |
|
53 |
- String GROUP_DEFAULT_AVATAR = "group_default_avatar"; |
|
54 |
- String PHOTO_FROM = "photo_from"; |
|
55 |
- String GROUP_FROM = "group_from"; |
|
56 |
- String THUMB_UP = "thumb_up"; |
|
57 |
- String BIG_THUMBNAIL_URL = "big_thumbnail_url"; |
|
58 |
- String MEDIUM_PHOTO_URL = "medium_photo_url"; |
|
59 |
- String RAW_PHOTO_URL = "raw_photo_url"; |
|
60 |
- String SHARE_PHOTO_URL = "share_url"; |
|
61 |
- } |
|
62 |
- |
|
63 |
- public static final String UPLOAD_PHOTO_TABLE = "upload_photos_table"; |
|
20 |
+ String SESSION_ID = "session_id"; |
|
21 |
+ String LENSMAN_ID = "lensman_id"; |
|
22 |
+ String IS_RAW_PHOTO= "is_raw_photo"; |
|
23 |
+ String IS_UPLOADED = "is_uploaded"; |
|
64 | 24 |
|
65 |
- public interface UPLOAD_PHOTO_COLUMNS { |
|
66 |
- String PHOTO_PATH = "photo_path"; |
|
67 |
- String USER_ID = "user_id"; |
|
68 |
- String GROUP_ID = "group_id"; |
|
69 |
- String NICK_NAME = "nickname"; |
|
70 |
- String CREATE_TIME = "create_time"; |
|
71 | 25 |
} |
72 | 26 |
|
27 |
+ |
|
73 | 28 |
private DBHelper(Context context){ |
74 | 29 |
super(context,DB_NAME,null,DB_VERSION); |
75 | 30 |
} |
@@ -92,31 +47,9 @@ public class DBHelper extends SQLiteOpenHelper{ |
||
92 | 47 |
} |
93 | 48 |
|
94 | 49 |
private void createTables(SQLiteDatabase db){ |
95 |
- createUploadTable(db); |
|
96 |
- createGroupTable(db,GROUP_INFO_TABLE); |
|
97 |
- createGroupTable(db,GROUP_LIST_TABLE); |
|
98 | 50 |
createPhotoTable(db,PHOTO_INFO_TABLE); |
99 |
- createPhotoTable(db,RECENT_PHOTO_TABLE); |
|
100 | 51 |
} |
101 | 52 |
|
102 |
- private void createGroupTable(SQLiteDatabase db, String tableName){ |
|
103 |
- StringBuilder sql = new StringBuilder(); |
|
104 |
- sql.append("CREATE TABLE IF NOT EXISTS "); |
|
105 |
- sql.append(tableName).append("( "); |
|
106 |
- sql.append(GROUP_INFO_COLUMNS.GROUP_ID).append(" VARCHAR PRIMARY KEY, "); |
|
107 |
- sql.append(GROUP_INFO_COLUMNS.GROUP_NAME).append(" VARCHAR, "); |
|
108 |
- sql.append(GROUP_INFO_COLUMNS.GROUP_DESC).append(" VARCHAR, "); |
|
109 |
- sql.append(GROUP_INFO_COLUMNS.GROUP_FROM).append(" VARCHAR, "); |
|
110 |
- sql.append(GROUP_INFO_COLUMNS.GROUP_AVATAR_URL).append(" VARCHAR, "); |
|
111 |
- sql.append(GROUP_INFO_COLUMNS.GROUP_PHOTO_COUNT).append(" INTEGER, " ); |
|
112 |
- sql.append(GROUP_INFO_COLUMNS.GROUP_LOCK).append(" INTEGER, "); |
|
113 |
- sql.append(GROUP_INFO_COLUMNS.LAST_ENTER_TIME).append(" LONG, "); |
|
114 |
- sql.append(GROUP_INFO_COLUMNS.GROUP_AVATAR_ID).append(" INTEGER, "); |
|
115 |
- sql.append(GROUP_INFO_COLUMNS.CURRENT_PHOTO_ID).append(" INTEGER, "); |
|
116 |
- sql.append(GROUP_INFO_COLUMNS.CREATE_TIME).append(" VARCHAR "); |
|
117 |
- sql.append(")"); |
|
118 |
- db.execSQL(sql.toString()); |
|
119 |
- } |
|
120 | 53 |
|
121 | 54 |
private void createPhotoTable(SQLiteDatabase db, String tableName){ |
122 | 55 |
StringBuilder sql = new StringBuilder(); |
@@ -124,44 +57,14 @@ public class DBHelper extends SQLiteOpenHelper{ |
||
124 | 57 |
sql.append(tableName).append("("); |
125 | 58 |
sql.append(PHOTO_INFO_COLUMNS.PHOTO_ID).append(" LONG PRIMARY KEY, "); |
126 | 59 |
sql.append(PHOTO_INFO_COLUMNS.PHOTO_NAME).append(" VARCHAR, "); |
127 |
- sql.append(PHOTO_INFO_COLUMNS.PHOTO_GROUP_ID).append(" VARCHAR, "); |
|
128 |
- sql.append(PHOTO_INFO_COLUMNS.PHOTO_UPLOADER_ID).append(" VARCHAR, "); |
|
129 |
- sql.append(PHOTO_INFO_COLUMNS.CAPTURE_TIME).append(" VARCHAR, "); |
|
130 |
- sql.append(PHOTO_INFO_COLUMNS.PHOTO_URL).append(" VARCHAR, "); |
|
131 |
- sql.append(PHOTO_INFO_COLUMNS.GROUP_AVATAR).append(" VARCHAR, "); |
|
132 |
- sql.append(PHOTO_INFO_COLUMNS.GROUP_DEFAULT_AVATAR).append(" VARCHAR, "); |
|
133 |
- sql.append(PHOTO_INFO_COLUMNS.GROUP_NAME).append(" VARCHAR, "); |
|
134 |
- sql.append(PHOTO_INFO_COLUMNS.UPLOADER_AVATAR).append(" VARCHAR, "); |
|
135 |
- sql.append(PHOTO_INFO_COLUMNS.UPLOADER_NAME).append(" VARCHAR, "); |
|
136 |
- sql.append(PHOTO_INFO_COLUMNS.COMMENT_NUM).append(" INTEGER, "); |
|
137 |
- sql.append(PHOTO_INFO_COLUMNS.THUMBUP_NUM).append(" INTEGER, "); |
|
138 |
- sql.append(PHOTO_INFO_COLUMNS.GROUP_FROM).append(" INTEGER, "); |
|
139 |
- sql.append(PHOTO_INFO_COLUMNS.THUMB_UP).append(" INTEGER, "); |
|
140 |
- sql.append(PHOTO_INFO_COLUMNS.PHOTO_FROM).append(" INTEGER, "); |
|
141 |
- sql.append(PHOTO_INFO_COLUMNS.THUMBNAIL_WIDTH).append(" SHORT, "); |
|
142 |
- sql.append(PHOTO_INFO_COLUMNS.THUMBNAIL_HEIGHT).append(" SHORT, "); |
|
143 |
- sql.append(PHOTO_INFO_COLUMNS.BIG_THUMBNAIL_URL).append(" VARCHAR, "); |
|
144 |
- sql.append(PHOTO_INFO_COLUMNS.MEDIUM_PHOTO_URL).append(" VARCHAR, "); |
|
145 |
- sql.append(PHOTO_INFO_COLUMNS.RAW_PHOTO_URL).append(" VARCHAR, "); |
|
146 |
- sql.append(PHOTO_INFO_COLUMNS.SHARE_PHOTO_URL).append(" VARCHAR, "); |
|
147 |
- sql.append(PHOTO_INFO_COLUMNS.THUMBNAIL_URL).append(" VARCHAR "); |
|
148 |
- sql.append(")"); |
|
149 |
- db.execSQL(sql.toString()); |
|
150 |
- } |
|
151 |
- |
|
152 |
- |
|
153 |
- private void createUploadTable(SQLiteDatabase db){ |
|
154 |
- StringBuilder sql = new StringBuilder(); |
|
155 |
- sql.append("CREATE TABLE IF NOT EXISTS "); |
|
156 |
- sql.append(UPLOAD_PHOTO_TABLE).append("("); |
|
157 |
- sql.append(UPLOAD_PHOTO_COLUMNS.PHOTO_PATH).append(" VARCHAR PRIMARY KEY, "); |
|
158 |
- sql.append(UPLOAD_PHOTO_COLUMNS.GROUP_ID).append(" VARCHAR, "); |
|
159 |
- sql.append(UPLOAD_PHOTO_COLUMNS.USER_ID).append(" VARCHAR, "); |
|
160 |
- sql.append(UPLOAD_PHOTO_COLUMNS.CREATE_TIME).append(" LONG, "); |
|
161 |
- sql.append(UPLOAD_PHOTO_COLUMNS.NICK_NAME).append(" VARCHAR "); |
|
60 |
+ sql.append(PHOTO_INFO_COLUMNS.PHOTO_PATH).append(" VARCHAR, "); |
|
61 |
+ sql.append(PHOTO_INFO_COLUMNS.LENSMAN_ID).append(" VARCHAR, "); |
|
62 |
+ sql.append(PHOTO_INFO_COLUMNS.SESSION_ID).append(" VARCHAR, "); |
|
63 |
+ sql.append(PHOTO_INFO_COLUMNS.IS_RAW_PHOTO).append(" INTEGER, "); |
|
64 |
+ sql.append(PHOTO_INFO_COLUMNS.IS_UPLOADED).append(" INTEGER, "); |
|
65 |
+ sql.append(PHOTO_INFO_COLUMNS.CAPTURE_TIME).append(" LONG "); |
|
162 | 66 |
sql.append(")"); |
163 | 67 |
db.execSQL(sql.toString()); |
164 | 68 |
} |
165 | 69 |
|
166 |
- |
|
167 | 70 |
} |
@@ -1,9 +1,12 @@ |
||
1 | 1 |
package ai.pai.lensman.db; |
2 | 2 |
|
3 |
+import android.content.ContentValues; |
|
3 | 4 |
import android.content.Context; |
4 | 5 |
import android.database.Cursor; |
5 | 6 |
import android.database.sqlite.SQLiteDatabase; |
6 | 7 |
|
8 |
+import ai.pai.lensman.bean.PhotoBean; |
|
9 |
+ |
|
7 | 10 |
|
8 | 11 |
public class DBService { |
9 | 12 |
|
@@ -11,7 +14,7 @@ public class DBService { |
||
11 | 14 |
private static Object DB_LOCK = new Object(); |
12 | 15 |
private DBHelper dbHelper; |
13 | 16 |
|
14 |
- private static final String TAG = "czy"; |
|
17 |
+ private static final String TAG = "DBService"; |
|
15 | 18 |
|
16 | 19 |
private DBService(Context context) { |
17 | 20 |
dbHelper = DBHelper.getInstance(context); |
@@ -39,4 +42,43 @@ public class DBService { |
||
39 | 42 |
} |
40 | 43 |
} |
41 | 44 |
|
45 |
+ |
|
46 |
+ private PhotoBean cursor2PhotoBean(Cursor c) { |
|
47 |
+ PhotoBean item = new PhotoBean(); |
|
48 |
+ item.lensmanId = c.getString(c.getColumnIndex(DBHelper.PHOTO_INFO_COLUMNS.LENSMAN_ID)); |
|
49 |
+ item.sessionId = c.getString(c.getColumnIndex(DBHelper.PHOTO_INFO_COLUMNS.SESSION_ID)); |
|
50 |
+ item.isRawPhoto =(c.getInt(c.getColumnIndex(DBHelper.PHOTO_INFO_COLUMNS.IS_RAW_PHOTO))>0); |
|
51 |
+ item.isUploaded = (c.getInt(c.getColumnIndex(DBHelper.PHOTO_INFO_COLUMNS.IS_UPLOADED))>0); |
|
52 |
+ item.captureTime = c.getLong(c.getColumnIndex(DBHelper.PHOTO_INFO_COLUMNS.CAPTURE_TIME)); |
|
53 |
+ item.photoId = c.getLong(c.getColumnIndex(DBHelper.PHOTO_INFO_COLUMNS.PHOTO_ID)); |
|
54 |
+ item.photoName = c.getString(c.getColumnIndex(DBHelper.PHOTO_INFO_COLUMNS.PHOTO_NAME)); |
|
55 |
+ item.photoPath = c.getString(c.getColumnIndex(DBHelper.PHOTO_INFO_COLUMNS.PHOTO_PATH)); |
|
56 |
+ return item; |
|
57 |
+ } |
|
58 |
+ |
|
59 |
+ private ContentValues photoBean2ContentValues(PhotoBean item) { |
|
60 |
+ ContentValues cv = new ContentValues(); |
|
61 |
+ cv.put(DBHelper.PHOTO_INFO_COLUMNS.CAPTURE_TIME, item.captureTime); |
|
62 |
+ cv.put(DBHelper.PHOTO_INFO_COLUMNS.IS_RAW_PHOTO, item.isRawPhoto ? 1: 0); |
|
63 |
+ cv.put(DBHelper.PHOTO_INFO_COLUMNS.PHOTO_ID, item.photoId); |
|
64 |
+ cv.put(DBHelper.PHOTO_INFO_COLUMNS.PHOTO_NAME, item.photoName); |
|
65 |
+ cv.put(DBHelper.PHOTO_INFO_COLUMNS.PHOTO_PATH, item.photoPath); |
|
66 |
+ cv.put(DBHelper.PHOTO_INFO_COLUMNS.SESSION_ID, item.sessionId); |
|
67 |
+ cv.put(DBHelper.PHOTO_INFO_COLUMNS.LENSMAN_ID,item.lensmanId); |
|
68 |
+ cv.put(DBHelper.PHOTO_INFO_COLUMNS.IS_UPLOADED,item.isUploaded); |
|
69 |
+ return cv; |
|
70 |
+ } |
|
71 |
+ |
|
72 |
+ public void addPhotoBean(PhotoBean bean){ |
|
73 |
+ |
|
74 |
+ } |
|
75 |
+ |
|
76 |
+ public void updatePhotoBean(PhotoBean bean){ |
|
77 |
+ |
|
78 |
+ } |
|
79 |
+ |
|
80 |
+ public void deletePhotoBean(PhotoBean bean){ |
|
81 |
+ |
|
82 |
+ } |
|
83 |
+ |
|
42 | 84 |
} |
@@ -0,0 +1,19 @@ |
||
1 |
+package ai.pai.lensman.service; |
|
2 |
+ |
|
3 |
+import android.app.IntentService; |
|
4 |
+import android.content.Intent; |
|
5 |
+ |
|
6 |
+public class UploadService extends IntentService { |
|
7 |
+ |
|
8 |
+ private static final String TAG = "UploadService"; |
|
9 |
+ |
|
10 |
+ public UploadService(){ |
|
11 |
+ super(TAG); |
|
12 |
+ } |
|
13 |
+ |
|
14 |
+ @Override |
|
15 |
+ protected void onHandleIntent(Intent intent) { |
|
16 |
+ |
|
17 |
+ } |
|
18 |
+ |
|
19 |
+} |
@@ -1,10 +0,0 @@ |
||
1 |
-package ai.pai.lensman.session; |
|
2 |
- |
|
3 |
- |
|
4 |
-import java.io.Serializable; |
|
5 |
- |
|
6 |
-public class PhotoBean implements Serializable{ |
|
7 |
- |
|
8 |
- public String photoPath; |
|
9 |
- |
|
10 |
-} |
@@ -12,6 +12,7 @@ import com.android.common.utils.DeviceUtils; |
||
12 | 12 |
import java.util.ArrayList; |
13 | 13 |
|
14 | 14 |
import ai.pai.lensman.R; |
15 |
+import ai.pai.lensman.bean.PhotoBean; |
|
15 | 16 |
import butterknife.BindView; |
16 | 17 |
import butterknife.ButterKnife; |
17 | 18 |
|
@@ -10,8 +10,9 @@ import android.widget.TextView; |
||
10 | 10 |
|
11 | 11 |
import ai.pai.lensman.R; |
12 | 12 |
import ai.pai.lensman.base.BaseActivity; |
13 |
+import ai.pai.lensman.bean.PhotoBean; |
|
13 | 14 |
import ai.pai.lensman.qrcode.QRCaptureActivity; |
14 |
-import ai.pai.lensman.upload.SessionBean; |
|
15 |
+import ai.pai.lensman.bean.SessionBean; |
|
15 | 16 |
import butterknife.BindView; |
16 | 17 |
import butterknife.ButterKnife; |
17 | 18 |
import butterknife.OnClick; |
@@ -1,5 +1,7 @@ |
||
1 | 1 |
package ai.pai.lensman.session; |
2 | 2 |
|
3 |
+import ai.pai.lensman.bean.PhotoBean; |
|
4 |
+ |
|
3 | 5 |
/** |
4 | 6 |
* Created by chengzhenyu on 2016/7/7. |
5 | 7 |
*/ |
@@ -6,6 +6,7 @@ import java.util.List; |
||
6 | 6 |
import java.util.Timer; |
7 | 7 |
import java.util.TimerTask; |
8 | 8 |
|
9 |
+import ai.pai.lensman.bean.PhotoBean; |
|
9 | 10 |
import ai.pai.lensman.box.ApiClient; |
10 | 11 |
import ai.pai.lensman.db.Preferences; |
11 | 12 |
import retrofit2.Call; |
@@ -4,6 +4,8 @@ import android.content.Context; |
||
4 | 4 |
|
5 | 5 |
import java.util.ArrayList; |
6 | 6 |
|
7 |
+import ai.pai.lensman.bean.PhotoBean; |
|
8 |
+ |
|
7 | 9 |
public class SessionPresenterImpl implements SessionContract.SessionPresenter ,SessionInteractor.SessionListener{ |
8 | 10 |
|
9 | 11 |
private Context context; |
@@ -13,6 +13,7 @@ import com.android.common.utils.DeviceUtils; |
||
13 | 13 |
import java.util.ArrayList; |
14 | 14 |
|
15 | 15 |
import ai.pai.lensman.R; |
16 |
+import ai.pai.lensman.bean.SessionBean; |
|
16 | 17 |
import butterknife.BindView; |
17 | 18 |
import butterknife.ButterKnife; |
18 | 19 |
|
@@ -13,6 +13,7 @@ import java.util.ArrayList; |
||
13 | 13 |
|
14 | 14 |
import ai.pai.lensman.R; |
15 | 15 |
import ai.pai.lensman.base.BaseActivity; |
16 |
+import ai.pai.lensman.bean.SessionBean; |
|
16 | 17 |
import ai.pai.lensman.briefs.BriefsActivity; |
17 | 18 |
import butterknife.BindView; |
18 | 19 |
import butterknife.ButterKnife; |
@@ -2,6 +2,8 @@ package ai.pai.lensman.upload; |
||
2 | 2 |
|
3 | 3 |
import java.util.ArrayList; |
4 | 4 |
|
5 |
+import ai.pai.lensman.bean.SessionBean; |
|
6 |
+ |
|
5 | 7 |
/** |
6 | 8 |
* Created by chengzhenyu on 2016/7/7. |
7 | 9 |
*/ |
@@ -5,6 +5,7 @@ import android.content.Intent; |
||
5 | 5 |
|
6 | 6 |
import java.util.ArrayList; |
7 | 7 |
|
8 |
+import ai.pai.lensman.bean.SessionBean; |
|
8 | 9 |
import ai.pai.lensman.session.SessionActivity; |
9 | 10 |
|
10 | 11 |
public class UploadPresenterImpl implements UploadContract.UploadPresenter { |