-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapp.config.js
More file actions
106 lines (103 loc) · 3.21 KB
/
app.config.js
File metadata and controls
106 lines (103 loc) · 3.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
require('dotenv').config();
const RV_API_KEY = process.env.RV_API_KEY;
const RV_PROJECT_ID = process.env.RV_PROJECT_ID;
const EAS_PROJECT_ID = process.env.EAS_PROJECT_ID;
const EAS_OWNER = process.env.EAS_OWNER;
if (!RV_API_KEY || !RV_PROJECT_ID) {
throw new Error(
'Missing RV_API_KEY or RV_PROJECT_ID environment variables. ' +
'Create a .env file in the project root (see README.md).'
);
}
module.exports = () => ({
expo: {
name: 'XR Demo',
slug: 'studio-and-quest-demo-app',
version: '1.0.3',
orientation: 'portrait',
icon: './assets/images/icon.png',
scheme: 'studiointrgration',
userInterfaceStyle: 'automatic',
newArchEnabled: true,
...(EAS_OWNER ? { owner: EAS_OWNER } : {}),
ios: {
supportsTablet: true,
infoPlist: {
NSPhotoLibraryUsageDescription:
'Your app would like to read photos for AR experiences.',
NSPhotoLibraryAddUsageDescription:
'Allow $(PRODUCT_NAME) to save photos',
NSCameraUsageDescription:
'Your app uses your camera for AR experiences.',
NSMicrophoneUsageDescription:
'Your app uses your microphone for AR experiences.',
RVApiKey: RV_API_KEY,
RVProjectId: RV_PROJECT_ID,
NSLocationWhenInUseUsageDescription:
'Allow $(PRODUCT_NAME) to use your location for AR experiences',
NSLocationAlwaysAndWhenInUseUsageDescription:
'Allow $(PRODUCT_NAME) to use your location for AR experiences',
},
bundleIdentifier: 'com.oliedis.StudioIntrgration',
},
android: {
adaptiveIcon: {
backgroundColor: '#111827',
foregroundImage: './assets/images/android-icon-foreground.png',
monochromeImage: './assets/images/android-icon-monochrome.png',
},
edgeToEdgeEnabled: true,
predictiveBackGestureEnabled: false,
package: 'com.oliedis.StudioIntrgration',
},
web: {
output: 'static',
favicon: './assets/images/favicon.png',
},
plugins: [
'expo-router',
[
'expo-splash-screen',
{
image: './assets/images/icon.png',
imageWidth: 200,
resizeMode: 'contain',
backgroundColor: '#111827',
dark: {
backgroundColor: '#111827',
},
},
],
[
'@reactvision/react-viro',
{
ios: {
cameraUsagePermission:
'Your app uses your camera for AR experiences.',
microphoneUsagePermission:
'Your app uses your microphone for AR experiences.',
photosPermission:
'Your app would like to read photos for AR experiences.',
savephotosPermission:
'Your app would like to save photos to your library during AR experiences.',
},
iosLinkage: 'static',
android: {
xRMode: ['AR', 'QUEST'],
},
provider: 'reactvision',
rvApiKey: RV_API_KEY,
rvProjectId: RV_PROJECT_ID,
},
],
],
experiments: {
typedRoutes: true,
reactCompiler: true,
},
extra: {
router: {},
...(EAS_PROJECT_ID ? { eas: { projectId: EAS_PROJECT_ID } } : {}),
},
},
});