Chore: Add detailed logging to storage.ts to debug saving issues ; Bump to 23.01.5
This commit is contained in:
Binary file not shown.
BIN
Binary file not shown.
@@ -359,9 +359,9 @@ export default function CameraScreen({
|
|||||||
// Auto-save the high-res original raw photo to the gallery
|
// Auto-save the high-res original raw photo to the gallery
|
||||||
try {
|
try {
|
||||||
await saveToGallery(capturedUri, 'Raw', eventText);
|
await saveToGallery(capturedUri, 'Raw', eventText);
|
||||||
console.log('Auto-saved high-res raw capture to gallery');
|
logger.log('Auto-saved high-res raw capture to gallery');
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
console.error('Failed to auto-save raw capture:', e);
|
logger.error(`Failed to auto-save raw capture: ${e?.message || e}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Downscale for the UI to prevent OutOfMemoryError in React Native Image
|
// Downscale for the UI to prevent OutOfMemoryError in React Native Image
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import { getPermissionsAsync, requestPermissionsAsync, createAssetAsync, getAlbumAsync, createAlbumAsync, addAssetsToAlbumAsync } from 'expo-media-library';
|
import { getPermissionsAsync, requestPermissionsAsync, createAssetAsync, getAlbumAsync, createAlbumAsync, addAssetsToAlbumAsync } from 'expo-media-library';
|
||||||
import * as FileSystem from 'expo-file-system';
|
import * as FileSystem from 'expo-file-system';
|
||||||
|
import { logger } from './logger';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Request necessary media library permissions.
|
* Request necessary media library permissions.
|
||||||
@@ -36,8 +37,10 @@ function getFormattedDateTime(): string {
|
|||||||
* @returns Promise<string> The permanent URI of the saved asset in the gallery.
|
* @returns Promise<string> The permanent URI of the saved asset in the gallery.
|
||||||
*/
|
*/
|
||||||
export async function saveToGallery(localUri: string, type: 'Raw' | 'Collage', eventName: string): Promise<string> {
|
export async function saveToGallery(localUri: string, type: 'Raw' | 'Collage', eventName: string): Promise<string> {
|
||||||
|
logger.log(`Starting saveToGallery for ${localUri}`);
|
||||||
const hasPermission = await requestStoragePermission();
|
const hasPermission = await requestStoragePermission();
|
||||||
if (!hasPermission) {
|
if (!hasPermission) {
|
||||||
|
logger.error('Storage permission not granted. Cannot save photo to gallery.');
|
||||||
throw new Error('Storage permission not granted. Cannot save photo to gallery.');
|
throw new Error('Storage permission not granted. Cannot save photo to gallery.');
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -70,16 +73,16 @@ export async function saveToGallery(localUri: string, type: 'Raw' | 'Collage', e
|
|||||||
if (!album) {
|
if (!album) {
|
||||||
// 3. If it doesn't exist, create it with our asset
|
// 3. If it doesn't exist, create it with our asset
|
||||||
await createAlbumAsync(ALBUM_NAME, asset, false);
|
await createAlbumAsync(ALBUM_NAME, asset, false);
|
||||||
console.log(`Created new album "${ALBUM_NAME}" and copied photo.`);
|
logger.log(`Created new album "${ALBUM_NAME}" and copied photo.`);
|
||||||
} else {
|
} else {
|
||||||
// 4. If it exists, add our asset to it
|
// 4. If it exists, add our asset to it
|
||||||
await addAssetsToAlbumAsync([asset], album, false);
|
await addAssetsToAlbumAsync([asset], album, false);
|
||||||
console.log(`Copied photo to existing album "${ALBUM_NAME}".`);
|
logger.log(`Copied photo to existing album "${ALBUM_NAME}".`);
|
||||||
}
|
}
|
||||||
|
|
||||||
return asset.uri;
|
return asset.uri;
|
||||||
} catch (e: any) {
|
} catch (e: any) {
|
||||||
console.error(`Error saving asset to album ${ALBUM_NAME}:`, e);
|
logger.error(`Error saving asset to album ${ALBUM_NAME}: ${e?.message || e}`);
|
||||||
return asset.uri;
|
return asset.uri;
|
||||||
} finally {
|
} finally {
|
||||||
// Cleanup our temp renamed file
|
// Cleanup our temp renamed file
|
||||||
|
|||||||
Reference in New Issue
Block a user