summaryrefslogtreecommitdiff
path: root/mobile/app/gallery-view-model.ts
diff options
context:
space:
mode:
Diffstat (limited to 'mobile/app/gallery-view-model.ts')
-rw-r--r--mobile/app/gallery-view-model.ts51
1 files changed, 51 insertions, 0 deletions
diff --git a/mobile/app/gallery-view-model.ts b/mobile/app/gallery-view-model.ts
new file mode 100644
index 0000000..e15839a
--- /dev/null
+++ b/mobile/app/gallery-view-model.ts
@@ -0,0 +1,51 @@
+import { AndroidActivityRequestPermissionsEventData, Application, Observable, Utils } from '@nativescript/core';
+
+export class GalleryModel extends Observable {
+ constructor() {
+ super();
+ }
+
+ peng() {
+ const check = function () {
+ return new Promise((resolve, reject) => {
+ (Application.android.foregroundActivity || Application.android.startActivity).requestPermissions([
+ android.Manifest.permission.READ_EXTERNAL_STORAGE,
+ ], 1337);
+ function onActivityResult(args) {
+ if (args.requestCode === 1337) {
+ Application.android.off(Application.android.activityRequestPermissionsEvent, onActivityResult);
+ console.log(args);
+ console.log(args.grantResults);
+ resolve(args);
+ }
+ }
+ Application.android.on(Application.android.activityRequestPermissionsEvent, onActivityResult);
+ });
+ }
+
+
+ check().then(() => {
+ console.log('query');
+ const cursor = Utils.android.getApplicationContext().getContentResolver().query(
+ android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
+ [
+ android.provider.MediaStore.Images.ImageColumns._ID,
+ android.provider.MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME,
+ android.provider.MediaStore.Images.ImageColumns.DATE_TAKEN,
+ ],
+ '1) GROUP BY (' + android.provider.MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME,
+ null,
+ null
+ );
+
+ console.log(cursor, cursor.getCount());
+ if (cursor) {
+ console.log(cursor.moveToFirst());
+
+ const bucketColumn = cursor.getColumnIndex(android.provider.MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME);
+ console.log(bucketColumn);
+ // console.log(cursor.getString(bucketColumn));
+ }
+ });
+ }
+}