|
@@ -0,0 +1,94 @@
|
|
1
|
+# Jitsi Meet mobile apps
|
|
2
|
+
|
|
3
|
+Jitsi Meet can also be built as a standalone mobile application for
|
|
4
|
+iOS and Android. It uses the [React Native]() framework.
|
|
5
|
+
|
|
6
|
+First make sure the [React Native dependencies]() are installed.
|
|
7
|
+
|
|
8
|
+**NOTE**: This document assumes the app is being built on a macOS system.
|
|
9
|
+
|
|
10
|
+**NOTE**: The app must be built for an actual device since the simulators don't
|
|
11
|
+work properly with the native plugins we require.
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+## iOS
|
|
15
|
+
|
|
16
|
+1. Install some extra dependencies
|
|
17
|
+
|
|
18
|
+ - Install ios-deploy globally (in case you want to use the React Native CLI
|
|
19
|
+ to deploy the app to the device)
|
|
20
|
+
|
|
21
|
+ ```bash
|
|
22
|
+ npm install -g ios-deploy
|
|
23
|
+ ```
|
|
24
|
+
|
|
25
|
+2. Build the app
|
|
26
|
+
|
|
27
|
+ There are 2 ways to build the app: using the CLI or using Xcode.
|
|
28
|
+
|
|
29
|
+ Using the CLI:
|
|
30
|
+
|
|
31
|
+ ```bash
|
|
32
|
+ react-native run-ios --device
|
|
33
|
+ ```
|
|
34
|
+
|
|
35
|
+ When the app is launched from the CLI the output can be checked with the
|
|
36
|
+ following command:
|
|
37
|
+
|
|
38
|
+ ```bash
|
|
39
|
+ react-native log-ios
|
|
40
|
+ ```
|
|
41
|
+
|
|
42
|
+ Using Xcode
|
|
43
|
+
|
|
44
|
+ - Open **ios/jitsi-meet-react.xcworkspace** in Xcode. Make sure it's the
|
|
45
|
+ workspace file!
|
|
46
|
+
|
|
47
|
+ - Select your device from the top bar and hit the "play" button.
|
|
48
|
+
|
|
49
|
+ When the app is launched from Xcode the Debug console will show the output
|
|
50
|
+ logs the application creates.
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+3. Other remarks
|
|
54
|
+
|
|
55
|
+ It's likely you'll need to change the bundle ID for deploying to a device
|
|
56
|
+ because the default bundle ID points to the application signed by Atlassian.
|
|
57
|
+
|
|
58
|
+ This can be changed in the "General" tab. Under "Identity" set
|
|
59
|
+ "Bundle Identifier" to a different value, and adjust the "Team" in the
|
|
60
|
+ "Signing" section to match your own.
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+## Android
|
|
64
|
+
|
|
65
|
+The [React Native dependencies]() page has very detailed information on how to
|
|
66
|
+setup [Android Studio]() and the required components for getting the necessary
|
|
67
|
+build environment. Make sure you follow it closely.
|
|
68
|
+
|
|
69
|
+1. Building the app
|
|
70
|
+
|
|
71
|
+ The app can be built using the CLI utility as follows:
|
|
72
|
+
|
|
73
|
+ ```bash
|
|
74
|
+ react-native run-android
|
|
75
|
+ ```
|
|
76
|
+
|
|
77
|
+ It will be launched on the connected Android device.
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+## Debugging
|
|
81
|
+
|
|
82
|
+The official documentation on [debugging]() is quite extensive, it is the
|
|
83
|
+preferred method for debugging.
|
|
84
|
+
|
|
85
|
+**NOTE**: When using Chrome Developer Tools for debugging the JavaScript code
|
|
86
|
+is being interpreted by Chrome's V8 engine, instead of JSCore which
|
|
87
|
+React Native uses. It's important to keep this in mind due to potential
|
|
88
|
+differences in supported JavaScript features.
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+[Android Studio]: https://developer.android.com/studio/index.html
|
|
92
|
+[debugging]: https://facebook.github.io/react-native/docs/debugging.html
|
|
93
|
+[React Native]: https://facebook.github.io/react-native/
|
|
94
|
+[React Native dependencies]: https://facebook.github.io/react-native/docs/getting-started.html#installing-dependencies
|