@capgo/native-audio 5.0.7 → 5.0.11
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +39 -17
- package/android/src/main/java/ee/forgr/audio/NativeAudio.java +4 -0
- package/dist/docs.json +24 -24
- package/dist/plugin.cjs.js +2 -2
- package/dist/plugin.js +2 -2
- package/ios/Plugin/Plugin.swift +4 -1
- package/package.json +14 -14
package/README.md
CHANGED
@@ -25,7 +25,7 @@
|
|
25
25
|
# Capacitor Native Audio Plugin
|
26
26
|
|
27
27
|
Capacitor plugin for native audio engine.
|
28
|
-
Capacitor
|
28
|
+
Capacitor v4 - ✅ Support!
|
29
29
|
|
30
30
|
Click on video to see example 💥
|
31
31
|
|
@@ -41,8 +41,12 @@ Click on video to see example 💥
|
|
41
41
|
Mainteinance Status: Actively Maintained
|
42
42
|
|
43
43
|
## Preparation
|
44
|
+
|
44
45
|
All audio files must be with the rest of your source files.
|
45
46
|
|
47
|
+
First make your sound file end up in your builded code folder, example in folder `BUILDFOLDER/assets/sounds/FILENAME.mp3`
|
48
|
+
Then use it in preload like that `assets/sounds/FILENAME.mp3`
|
49
|
+
|
46
50
|
## Installation
|
47
51
|
|
48
52
|
To use npm
|
@@ -110,7 +114,7 @@ import {NativeAudio} from '@capgo/native-audio'
|
|
110
114
|
*/
|
111
115
|
NativeAudio.preload({
|
112
116
|
assetId: "fire",
|
113
|
-
assetPath: "fire.mp3",
|
117
|
+
assetPath: "assets/sounds/fire.mp3",
|
114
118
|
audioChannelNum: 1,
|
115
119
|
isUrl: false
|
116
120
|
});
|
@@ -210,131 +214,149 @@ NativeAudio.isPlaying({
|
|
210
214
|
### configure(...)
|
211
215
|
|
212
216
|
```typescript
|
213
|
-
configure(options: ConfigureOptions) =>
|
217
|
+
configure(options: ConfigureOptions) => any
|
214
218
|
```
|
215
219
|
|
216
220
|
| Param | Type |
|
217
221
|
| ------------- | ------------------------------------------------------------- |
|
218
222
|
| **`options`** | <code><a href="#configureoptions">ConfigureOptions</a></code> |
|
219
223
|
|
224
|
+
**Returns:** <code>any</code>
|
225
|
+
|
220
226
|
--------------------
|
221
227
|
|
222
228
|
|
223
229
|
### preload(...)
|
224
230
|
|
225
231
|
```typescript
|
226
|
-
preload(options: PreloadOptions) =>
|
232
|
+
preload(options: PreloadOptions) => any
|
227
233
|
```
|
228
234
|
|
229
235
|
| Param | Type |
|
230
236
|
| ------------- | --------------------------------------------------------- |
|
231
237
|
| **`options`** | <code><a href="#preloadoptions">PreloadOptions</a></code> |
|
232
238
|
|
239
|
+
**Returns:** <code>any</code>
|
240
|
+
|
233
241
|
--------------------
|
234
242
|
|
235
243
|
|
236
244
|
### play(...)
|
237
245
|
|
238
246
|
```typescript
|
239
|
-
play(options: { assetId: string; time?: number; }) =>
|
247
|
+
play(options: { assetId: string; time?: number; }) => any
|
240
248
|
```
|
241
249
|
|
242
250
|
| Param | Type |
|
243
251
|
| ------------- | ------------------------------------------------ |
|
244
252
|
| **`options`** | <code>{ assetId: string; time?: number; }</code> |
|
245
253
|
|
254
|
+
**Returns:** <code>any</code>
|
255
|
+
|
246
256
|
--------------------
|
247
257
|
|
248
258
|
|
249
259
|
### pause(...)
|
250
260
|
|
251
261
|
```typescript
|
252
|
-
pause(options: { assetId: string; }) =>
|
262
|
+
pause(options: { assetId: string; }) => any
|
253
263
|
```
|
254
264
|
|
255
265
|
| Param | Type |
|
256
266
|
| ------------- | --------------------------------- |
|
257
267
|
| **`options`** | <code>{ assetId: string; }</code> |
|
258
268
|
|
269
|
+
**Returns:** <code>any</code>
|
270
|
+
|
259
271
|
--------------------
|
260
272
|
|
261
273
|
|
262
274
|
### resume(...)
|
263
275
|
|
264
276
|
```typescript
|
265
|
-
resume(options: { assetId: string; }) =>
|
277
|
+
resume(options: { assetId: string; }) => any
|
266
278
|
```
|
267
279
|
|
268
280
|
| Param | Type |
|
269
281
|
| ------------- | --------------------------------- |
|
270
282
|
| **`options`** | <code>{ assetId: string; }</code> |
|
271
283
|
|
284
|
+
**Returns:** <code>any</code>
|
285
|
+
|
272
286
|
--------------------
|
273
287
|
|
274
288
|
|
275
289
|
### loop(...)
|
276
290
|
|
277
291
|
```typescript
|
278
|
-
loop(options: { assetId: string; }) =>
|
292
|
+
loop(options: { assetId: string; }) => any
|
279
293
|
```
|
280
294
|
|
281
295
|
| Param | Type |
|
282
296
|
| ------------- | --------------------------------- |
|
283
297
|
| **`options`** | <code>{ assetId: string; }</code> |
|
284
298
|
|
299
|
+
**Returns:** <code>any</code>
|
300
|
+
|
285
301
|
--------------------
|
286
302
|
|
287
303
|
|
288
304
|
### stop(...)
|
289
305
|
|
290
306
|
```typescript
|
291
|
-
stop(options: { assetId: string; }) =>
|
307
|
+
stop(options: { assetId: string; }) => any
|
292
308
|
```
|
293
309
|
|
294
310
|
| Param | Type |
|
295
311
|
| ------------- | --------------------------------- |
|
296
312
|
| **`options`** | <code>{ assetId: string; }</code> |
|
297
313
|
|
314
|
+
**Returns:** <code>any</code>
|
315
|
+
|
298
316
|
--------------------
|
299
317
|
|
300
318
|
|
301
319
|
### unload(...)
|
302
320
|
|
303
321
|
```typescript
|
304
|
-
unload(options: { assetId: string; }) =>
|
322
|
+
unload(options: { assetId: string; }) => any
|
305
323
|
```
|
306
324
|
|
307
325
|
| Param | Type |
|
308
326
|
| ------------- | --------------------------------- |
|
309
327
|
| **`options`** | <code>{ assetId: string; }</code> |
|
310
328
|
|
329
|
+
**Returns:** <code>any</code>
|
330
|
+
|
311
331
|
--------------------
|
312
332
|
|
313
333
|
|
314
334
|
### setVolume(...)
|
315
335
|
|
316
336
|
```typescript
|
317
|
-
setVolume(options: { assetId: string; volume: number; }) =>
|
337
|
+
setVolume(options: { assetId: string; volume: number; }) => any
|
318
338
|
```
|
319
339
|
|
320
340
|
| Param | Type |
|
321
341
|
| ------------- | ------------------------------------------------- |
|
322
342
|
| **`options`** | <code>{ assetId: string; volume: number; }</code> |
|
323
343
|
|
344
|
+
**Returns:** <code>any</code>
|
345
|
+
|
324
346
|
--------------------
|
325
347
|
|
326
348
|
|
327
349
|
### getCurrentTime(...)
|
328
350
|
|
329
351
|
```typescript
|
330
|
-
getCurrentTime(options: { assetId: string; }) =>
|
352
|
+
getCurrentTime(options: { assetId: string; }) => any
|
331
353
|
```
|
332
354
|
|
333
355
|
| Param | Type |
|
334
356
|
| ------------- | --------------------------------- |
|
335
357
|
| **`options`** | <code>{ assetId: string; }</code> |
|
336
358
|
|
337
|
-
**Returns:** <code>
|
359
|
+
**Returns:** <code>any</code>
|
338
360
|
|
339
361
|
--------------------
|
340
362
|
|
@@ -342,14 +364,14 @@ getCurrentTime(options: { assetId: string; }) => Promise<{ currentTime: number;
|
|
342
364
|
### getDuration(...)
|
343
365
|
|
344
366
|
```typescript
|
345
|
-
getDuration(options: { assetId: string; }) =>
|
367
|
+
getDuration(options: { assetId: string; }) => any
|
346
368
|
```
|
347
369
|
|
348
370
|
| Param | Type |
|
349
371
|
| ------------- | --------------------------------- |
|
350
372
|
| **`options`** | <code>{ assetId: string; }</code> |
|
351
373
|
|
352
|
-
**Returns:** <code>
|
374
|
+
**Returns:** <code>any</code>
|
353
375
|
|
354
376
|
--------------------
|
355
377
|
|
@@ -357,14 +379,14 @@ getDuration(options: { assetId: string; }) => Promise<{ duration: number; }>
|
|
357
379
|
### isPlaying(...)
|
358
380
|
|
359
381
|
```typescript
|
360
|
-
isPlaying(options: { assetId: string; }) =>
|
382
|
+
isPlaying(options: { assetId: string; }) => any
|
361
383
|
```
|
362
384
|
|
363
385
|
| Param | Type |
|
364
386
|
| ------------- | --------------------------------- |
|
365
387
|
| **`options`** | <code>{ assetId: string; }</code> |
|
366
388
|
|
367
|
-
**Returns:** <code>
|
389
|
+
**Returns:** <code>any</code>
|
368
390
|
|
369
391
|
--------------------
|
370
392
|
|
@@ -407,6 +407,10 @@ public class NativeAudio extends Plugin implements AudioManager.OnAudioFocusChan
|
|
407
407
|
ParcelFileDescriptor p = ParcelFileDescriptor.open(f, ParcelFileDescriptor.MODE_READ_ONLY);
|
408
408
|
assetFileDescriptor = new AssetFileDescriptor(p, 0, -1);
|
409
409
|
} else {
|
410
|
+
// if fullPath dont start with public/ add it
|
411
|
+
if (!fullPath.startsWith("public/")) {
|
412
|
+
fullPath = "public/".concat(fullPath);
|
413
|
+
}
|
410
414
|
Context ctx = getBridge().getActivity().getApplicationContext();
|
411
415
|
AssetManager am = ctx.getResources().getAssets();
|
412
416
|
assetFileDescriptor = am.openFd(fullPath);
|
package/dist/docs.json
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
"methods": [
|
8
8
|
{
|
9
9
|
"name": "configure",
|
10
|
-
"signature": "(options: ConfigureOptions) =>
|
10
|
+
"signature": "(options: ConfigureOptions) => any",
|
11
11
|
"parameters": [
|
12
12
|
{
|
13
13
|
"name": "options",
|
@@ -15,7 +15,7 @@
|
|
15
15
|
"type": "ConfigureOptions"
|
16
16
|
}
|
17
17
|
],
|
18
|
-
"returns": "
|
18
|
+
"returns": "any",
|
19
19
|
"tags": [],
|
20
20
|
"docs": "",
|
21
21
|
"complexTypes": [
|
@@ -25,7 +25,7 @@
|
|
25
25
|
},
|
26
26
|
{
|
27
27
|
"name": "preload",
|
28
|
-
"signature": "(options: PreloadOptions) =>
|
28
|
+
"signature": "(options: PreloadOptions) => any",
|
29
29
|
"parameters": [
|
30
30
|
{
|
31
31
|
"name": "options",
|
@@ -33,7 +33,7 @@
|
|
33
33
|
"type": "PreloadOptions"
|
34
34
|
}
|
35
35
|
],
|
36
|
-
"returns": "
|
36
|
+
"returns": "any",
|
37
37
|
"tags": [],
|
38
38
|
"docs": "",
|
39
39
|
"complexTypes": [
|
@@ -43,7 +43,7 @@
|
|
43
43
|
},
|
44
44
|
{
|
45
45
|
"name": "play",
|
46
|
-
"signature": "(options: { assetId: string; time?: number; }) =>
|
46
|
+
"signature": "(options: { assetId: string; time?: number; }) => any",
|
47
47
|
"parameters": [
|
48
48
|
{
|
49
49
|
"name": "options",
|
@@ -51,7 +51,7 @@
|
|
51
51
|
"type": "{ assetId: string; time?: number | undefined; }"
|
52
52
|
}
|
53
53
|
],
|
54
|
-
"returns": "
|
54
|
+
"returns": "any",
|
55
55
|
"tags": [],
|
56
56
|
"docs": "",
|
57
57
|
"complexTypes": [],
|
@@ -59,7 +59,7 @@
|
|
59
59
|
},
|
60
60
|
{
|
61
61
|
"name": "pause",
|
62
|
-
"signature": "(options: { assetId: string; }) =>
|
62
|
+
"signature": "(options: { assetId: string; }) => any",
|
63
63
|
"parameters": [
|
64
64
|
{
|
65
65
|
"name": "options",
|
@@ -67,7 +67,7 @@
|
|
67
67
|
"type": "{ assetId: string; }"
|
68
68
|
}
|
69
69
|
],
|
70
|
-
"returns": "
|
70
|
+
"returns": "any",
|
71
71
|
"tags": [],
|
72
72
|
"docs": "",
|
73
73
|
"complexTypes": [],
|
@@ -75,7 +75,7 @@
|
|
75
75
|
},
|
76
76
|
{
|
77
77
|
"name": "resume",
|
78
|
-
"signature": "(options: { assetId: string; }) =>
|
78
|
+
"signature": "(options: { assetId: string; }) => any",
|
79
79
|
"parameters": [
|
80
80
|
{
|
81
81
|
"name": "options",
|
@@ -83,7 +83,7 @@
|
|
83
83
|
"type": "{ assetId: string; }"
|
84
84
|
}
|
85
85
|
],
|
86
|
-
"returns": "
|
86
|
+
"returns": "any",
|
87
87
|
"tags": [],
|
88
88
|
"docs": "",
|
89
89
|
"complexTypes": [],
|
@@ -91,7 +91,7 @@
|
|
91
91
|
},
|
92
92
|
{
|
93
93
|
"name": "loop",
|
94
|
-
"signature": "(options: { assetId: string; }) =>
|
94
|
+
"signature": "(options: { assetId: string; }) => any",
|
95
95
|
"parameters": [
|
96
96
|
{
|
97
97
|
"name": "options",
|
@@ -99,7 +99,7 @@
|
|
99
99
|
"type": "{ assetId: string; }"
|
100
100
|
}
|
101
101
|
],
|
102
|
-
"returns": "
|
102
|
+
"returns": "any",
|
103
103
|
"tags": [],
|
104
104
|
"docs": "",
|
105
105
|
"complexTypes": [],
|
@@ -107,7 +107,7 @@
|
|
107
107
|
},
|
108
108
|
{
|
109
109
|
"name": "stop",
|
110
|
-
"signature": "(options: { assetId: string; }) =>
|
110
|
+
"signature": "(options: { assetId: string; }) => any",
|
111
111
|
"parameters": [
|
112
112
|
{
|
113
113
|
"name": "options",
|
@@ -115,7 +115,7 @@
|
|
115
115
|
"type": "{ assetId: string; }"
|
116
116
|
}
|
117
117
|
],
|
118
|
-
"returns": "
|
118
|
+
"returns": "any",
|
119
119
|
"tags": [],
|
120
120
|
"docs": "",
|
121
121
|
"complexTypes": [],
|
@@ -123,7 +123,7 @@
|
|
123
123
|
},
|
124
124
|
{
|
125
125
|
"name": "unload",
|
126
|
-
"signature": "(options: { assetId: string; }) =>
|
126
|
+
"signature": "(options: { assetId: string; }) => any",
|
127
127
|
"parameters": [
|
128
128
|
{
|
129
129
|
"name": "options",
|
@@ -131,7 +131,7 @@
|
|
131
131
|
"type": "{ assetId: string; }"
|
132
132
|
}
|
133
133
|
],
|
134
|
-
"returns": "
|
134
|
+
"returns": "any",
|
135
135
|
"tags": [],
|
136
136
|
"docs": "",
|
137
137
|
"complexTypes": [],
|
@@ -139,7 +139,7 @@
|
|
139
139
|
},
|
140
140
|
{
|
141
141
|
"name": "setVolume",
|
142
|
-
"signature": "(options: { assetId: string; volume: number; }) =>
|
142
|
+
"signature": "(options: { assetId: string; volume: number; }) => any",
|
143
143
|
"parameters": [
|
144
144
|
{
|
145
145
|
"name": "options",
|
@@ -147,7 +147,7 @@
|
|
147
147
|
"type": "{ assetId: string; volume: number; }"
|
148
148
|
}
|
149
149
|
],
|
150
|
-
"returns": "
|
150
|
+
"returns": "any",
|
151
151
|
"tags": [],
|
152
152
|
"docs": "",
|
153
153
|
"complexTypes": [],
|
@@ -155,7 +155,7 @@
|
|
155
155
|
},
|
156
156
|
{
|
157
157
|
"name": "getCurrentTime",
|
158
|
-
"signature": "(options: { assetId: string; }) =>
|
158
|
+
"signature": "(options: { assetId: string; }) => any",
|
159
159
|
"parameters": [
|
160
160
|
{
|
161
161
|
"name": "options",
|
@@ -163,7 +163,7 @@
|
|
163
163
|
"type": "{ assetId: string; }"
|
164
164
|
}
|
165
165
|
],
|
166
|
-
"returns": "
|
166
|
+
"returns": "any",
|
167
167
|
"tags": [],
|
168
168
|
"docs": "",
|
169
169
|
"complexTypes": [],
|
@@ -171,7 +171,7 @@
|
|
171
171
|
},
|
172
172
|
{
|
173
173
|
"name": "getDuration",
|
174
|
-
"signature": "(options: { assetId: string; }) =>
|
174
|
+
"signature": "(options: { assetId: string; }) => any",
|
175
175
|
"parameters": [
|
176
176
|
{
|
177
177
|
"name": "options",
|
@@ -179,7 +179,7 @@
|
|
179
179
|
"type": "{ assetId: string; }"
|
180
180
|
}
|
181
181
|
],
|
182
|
-
"returns": "
|
182
|
+
"returns": "any",
|
183
183
|
"tags": [],
|
184
184
|
"docs": "",
|
185
185
|
"complexTypes": [],
|
@@ -187,7 +187,7 @@
|
|
187
187
|
},
|
188
188
|
{
|
189
189
|
"name": "isPlaying",
|
190
|
-
"signature": "(options: { assetId: string; }) =>
|
190
|
+
"signature": "(options: { assetId: string; }) => any",
|
191
191
|
"parameters": [
|
192
192
|
{
|
193
193
|
"name": "options",
|
@@ -195,7 +195,7 @@
|
|
195
195
|
"type": "{ assetId: string; }"
|
196
196
|
}
|
197
197
|
],
|
198
|
-
"returns": "
|
198
|
+
"returns": "any",
|
199
199
|
"tags": [],
|
200
200
|
"docs": "",
|
201
201
|
"complexTypes": [],
|
package/dist/plugin.cjs.js
CHANGED
@@ -124,8 +124,8 @@ const NativeAudio = new NativeAudioWeb();
|
|
124
124
|
|
125
125
|
var web = /*#__PURE__*/Object.freeze({
|
126
126
|
__proto__: null,
|
127
|
-
|
128
|
-
|
127
|
+
NativeAudio: NativeAudio,
|
128
|
+
NativeAudioWeb: NativeAudioWeb
|
129
129
|
});
|
130
130
|
|
131
131
|
exports.NativeAudio = NativeAudio$1;
|
package/dist/plugin.js
CHANGED
@@ -123,8 +123,8 @@ var capacitorApp = (function (exports, core) {
|
|
123
123
|
|
124
124
|
var web = /*#__PURE__*/Object.freeze({
|
125
125
|
__proto__: null,
|
126
|
-
|
127
|
-
|
126
|
+
NativeAudio: NativeAudio,
|
127
|
+
NativeAudioWeb: NativeAudioWeb
|
128
128
|
});
|
129
129
|
|
130
130
|
exports.NativeAudio = NativeAudio$1;
|
package/ios/Plugin/Plugin.swift
CHANGED
@@ -200,7 +200,7 @@ public class NativeAudio: CAPPlugin {
|
|
200
200
|
let isUrl: Bool?
|
201
201
|
|
202
202
|
if audioId != "" {
|
203
|
-
|
203
|
+
var assetPath: String = call.getString(Constant.AssetPathKey) ?? ""
|
204
204
|
|
205
205
|
if complex {
|
206
206
|
volume = call.getFloat("volume") ?? 1.0
|
@@ -225,6 +225,9 @@ public class NativeAudio: CAPPlugin {
|
|
225
225
|
if asset == nil {
|
226
226
|
var basePath: String?
|
227
227
|
if isUrl == false {
|
228
|
+
// if assetPath dont start with public/ add it
|
229
|
+
assetPath = assetPath.starts(with: "public/") ? assetPath : "public/" + assetPath
|
230
|
+
|
228
231
|
let assetPathSplit = assetPath.components(separatedBy: ".")
|
229
232
|
basePath = Bundle.main.path(forResource: assetPathSplit[0], ofType: assetPathSplit[1])
|
230
233
|
} else {
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@capgo/native-audio",
|
3
|
-
"version": "5.0.
|
3
|
+
"version": "5.0.11",
|
4
4
|
"description": "A native plugin for native audio engine",
|
5
5
|
"main": "dist/plugin.js",
|
6
6
|
"module": "dist/esm/index.js",
|
@@ -40,25 +40,25 @@
|
|
40
40
|
"author": "Martin Donadieu <martindonadieu@gmail.com>",
|
41
41
|
"license": "MIT",
|
42
42
|
"devDependencies": {
|
43
|
-
"@capacitor/android": "^4.
|
44
|
-
"@capacitor/cli": "^4.
|
45
|
-
"@capacitor/core": "^4.
|
46
|
-
"@capacitor/docgen": "^0.2.
|
47
|
-
"@capacitor/ios": "^4.
|
43
|
+
"@capacitor/android": "^4.7.0",
|
44
|
+
"@capacitor/cli": "^4.7.0",
|
45
|
+
"@capacitor/core": "^4.7.0",
|
46
|
+
"@capacitor/docgen": "^0.2.1",
|
47
|
+
"@capacitor/ios": "^4.7.0",
|
48
48
|
"@ionic/eslint-config": "^0.3.0",
|
49
49
|
"@ionic/prettier-config": "^2.0.0",
|
50
50
|
"@ionic/swiftlint-config": "^1.1.2",
|
51
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
52
|
-
"@typescript-eslint/parser": "^5.
|
53
|
-
"eslint": "^8.
|
54
|
-
"eslint-plugin-import": "^2.
|
55
|
-
"husky": "^8.0.
|
51
|
+
"@typescript-eslint/eslint-plugin": "^5.54.1",
|
52
|
+
"@typescript-eslint/parser": "^5.54.1",
|
53
|
+
"eslint": "^8.35.0",
|
54
|
+
"eslint-plugin-import": "^2.27.5",
|
55
|
+
"husky": "^8.0.3",
|
56
56
|
"prettier": "^2.7.1",
|
57
57
|
"prettier-plugin-java": "^2.0.0",
|
58
|
-
"rimraf": "^3.
|
59
|
-
"rollup": "^3.
|
58
|
+
"rimraf": "^4.3.1",
|
59
|
+
"rollup": "^3.18.0",
|
60
60
|
"swiftlint": "^1.0.1",
|
61
|
-
"typescript": "^4.
|
61
|
+
"typescript": "^4.9.5"
|
62
62
|
},
|
63
63
|
"peerDependencies": {
|
64
64
|
"@capacitor/core": "^4.0.0"
|