@apirtc/expo-apirtc-options-plugin 0.0.9 → 0.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/withAndroidPlugin.js +24 -19
- package/package.json +1 -1
|
@@ -52,15 +52,18 @@ const REQUIRED_PERMISSIONS = [
|
|
|
52
52
|
"android.permission.FOREGROUND_SERVICE_CAMERA"
|
|
53
53
|
];
|
|
54
54
|
const MLKIT_SEGMENTATION_DEP = 'implementation("com.google.mlkit:segmentation-selfie:16.0.0-beta6")';
|
|
55
|
-
function getAndroidPackagePath(projectRoot) {
|
|
55
|
+
function getAndroidPackagePath(projectRoot, packageNameHint) {
|
|
56
56
|
var _a, _b;
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
if (
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
57
|
+
let packageName = packageNameHint;
|
|
58
|
+
// Fallback: read from AndroidManifest.xml
|
|
59
|
+
if (!packageName) {
|
|
60
|
+
const manifestPath = path.join(projectRoot, 'android/app/src/main/AndroidManifest.xml');
|
|
61
|
+
if (fs.existsSync(manifestPath)) {
|
|
62
|
+
const manifestContent = fs.readFileSync(manifestPath, 'utf8');
|
|
63
|
+
const match = manifestContent.match(/package="([\w.]+)"/);
|
|
64
|
+
if (match) {
|
|
65
|
+
packageName = match[1];
|
|
66
|
+
}
|
|
64
67
|
}
|
|
65
68
|
}
|
|
66
69
|
// Fallback: read from app.config.ts or app.config.js
|
|
@@ -91,19 +94,19 @@ function getAndroidPackagePath(projectRoot) {
|
|
|
91
94
|
}
|
|
92
95
|
}
|
|
93
96
|
if (!packageName) {
|
|
94
|
-
throw new Error('Package name not found in AndroidManifest.xml, app.config.ts, app.config.js or app.json');
|
|
97
|
+
throw new Error('Package name not found in config.android.package, AndroidManifest.xml, app.config.ts, app.config.js or app.json');
|
|
95
98
|
}
|
|
96
99
|
return path.join(projectRoot, 'android/app/src/main/java', ...packageName.split('.'));
|
|
97
100
|
}
|
|
98
|
-
function getPackageName(projectRoot) {
|
|
99
|
-
return getAndroidPackagePath(projectRoot)
|
|
101
|
+
function getPackageName(projectRoot, packageNameHint) {
|
|
102
|
+
return getAndroidPackagePath(projectRoot, packageNameHint)
|
|
100
103
|
.replace(path.join(projectRoot, 'android/app/src/main/java') + path.sep, '')
|
|
101
104
|
.split(path.sep)
|
|
102
105
|
.join('.');
|
|
103
106
|
}
|
|
104
|
-
function copyAndPatchJavaFiles(projectRoot) {
|
|
107
|
+
function copyAndPatchJavaFiles(projectRoot, packageNameHint) {
|
|
105
108
|
const srcDir = path.join(__dirname, 'static/java');
|
|
106
|
-
const destDir = getAndroidPackagePath(projectRoot);
|
|
109
|
+
const destDir = getAndroidPackagePath(projectRoot, packageNameHint);
|
|
107
110
|
const packageName = destDir
|
|
108
111
|
.replace(path.join(projectRoot, 'android/app/src/main/java') + path.sep, '')
|
|
109
112
|
.split(path.sep)
|
|
@@ -122,9 +125,9 @@ function copyAndPatchJavaFiles(projectRoot) {
|
|
|
122
125
|
}
|
|
123
126
|
});
|
|
124
127
|
}
|
|
125
|
-
function copyAndPatchKotlinFiles(projectRoot) {
|
|
128
|
+
function copyAndPatchKotlinFiles(projectRoot, packageNameHint) {
|
|
126
129
|
const srcDir = path.join(__dirname, 'static/kotlin');
|
|
127
|
-
const destDir = getAndroidPackagePath(projectRoot);
|
|
130
|
+
const destDir = getAndroidPackagePath(projectRoot, packageNameHint);
|
|
128
131
|
const packageName = destDir
|
|
129
132
|
.replace(path.join(projectRoot, 'android/app/src/main/java') + path.sep, '')
|
|
130
133
|
.split(path.sep)
|
|
@@ -184,12 +187,14 @@ const withMlKitGradleDep = (config) => {
|
|
|
184
187
|
const withAndroidPlugin = (config, props) => {
|
|
185
188
|
logger_1.logger.info('withAndroidPlugin called with props:', props);
|
|
186
189
|
let updatedConfig = (0, config_plugins_1.withMainApplication)(config, (config) => {
|
|
190
|
+
var _a, _b, _c, _d;
|
|
187
191
|
const mainApplication = config.modResults;
|
|
188
192
|
const packageName = (() => {
|
|
193
|
+
var _a, _b;
|
|
189
194
|
try {
|
|
190
|
-
return getPackageName(config.modRequest.projectRoot);
|
|
195
|
+
return getPackageName(config.modRequest.projectRoot, (_b = (_a = config.android) === null || _a === void 0 ? void 0 : _a.package) !== null && _b !== void 0 ? _b : undefined);
|
|
191
196
|
}
|
|
192
|
-
catch (
|
|
197
|
+
catch (_c) {
|
|
193
198
|
return null;
|
|
194
199
|
}
|
|
195
200
|
})();
|
|
@@ -234,10 +239,10 @@ const withAndroidPlugin = (config, props) => {
|
|
|
234
239
|
mainApplication.contents = mainApplication.contents.replace(/(\/\/ add\(MyReactNativePackage\(\)\))/, match => `${match}\n add(BackgroundBlurPackage())`);
|
|
235
240
|
}
|
|
236
241
|
// Copy Kotlin native files
|
|
237
|
-
copyAndPatchKotlinFiles(config.modRequest.projectRoot);
|
|
242
|
+
copyAndPatchKotlinFiles(config.modRequest.projectRoot, (_b = (_a = config.android) === null || _a === void 0 ? void 0 : _a.package) !== null && _b !== void 0 ? _b : undefined);
|
|
238
243
|
}
|
|
239
244
|
// Copy Java native files
|
|
240
|
-
copyAndPatchJavaFiles(config.modRequest.projectRoot);
|
|
245
|
+
copyAndPatchJavaFiles(config.modRequest.projectRoot, (_d = (_c = config.android) === null || _c === void 0 ? void 0 : _c.package) !== null && _d !== void 0 ? _d : undefined);
|
|
241
246
|
return config;
|
|
242
247
|
});
|
|
243
248
|
// Add ML Kit Gradle dependency when video effects are enabled
|