试用修改后的插件,处理 ios 上预览时弹出显示的问题。

This commit is contained in:
巫翔 2021-10-29 15:07:54 +08:00
parent 837dece3eb
commit 81451a39d5
5 changed files with 166 additions and 8 deletions

View File

@ -19,6 +19,7 @@
<preference name="SplashScreen" value="screen" />
<preference name="SplashScreenDelay" value="3000" />
<preference name="android-minSdkVersion" value="24" />
<preference name="AllowInlineMediaPlayback" value="true" />
<platform name="android">
<edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application" xmlns:android="http://schemas.android.com/apk/res/android">
<application android:networkSecurityConfig="@xml/network_security_config" android:requestLegacyExternalStorage="true" />

159
package-lock.json generated
View File

@ -3261,6 +3261,14 @@
"integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=",
"dev": true
},
"bplist-creator": {
"version": "0.1.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/bplist-creator/-/bplist-creator-0.1.0.tgz",
"integrity": "sha512-sXaHZicyEEmY86WyueLTQesbeoH/mquvarJaQNbjuOQO+7gbFcDEWqKmcWA4cOTLzFlfgvkiVxolk1k5bBIpmg==",
"requires": {
"stream-buffers": "2.2.x"
}
},
"bplist-parser": {
"version": "0.2.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/bplist-parser/-/bplist-parser-0.2.0.tgz",
@ -3461,7 +3469,7 @@
"dev": true
},
"capture-cordova-plugin": {
"version": "git+http://m.shuto.cn:8680/center/capture-cordova-plugin#f4c3fde0a9c1bc451f372b3377c261c1fbd8084d",
"version": "git+http://m.shuto.cn:8680/center/capture-cordova-plugin#3577804f1de2bc8900850e64e28dec60b85127c3",
"from": "git+http://m.shuto.cn:8680/center/capture-cordova-plugin",
"dev": true
},
@ -4241,6 +4249,58 @@
}
}
},
"cordova-ios": {
"version": "6.2.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/cordova-ios/-/cordova-ios-6.2.0.tgz",
"integrity": "sha512-sLjZg2QBI1SpQVwfe0MSn89YNVkBGLW9Q1vcFJBsqKBrhvoEOJ5Ytq0gwqdhgTOGzlwJUfxC6OHM3jcsRjtYrw==",
"requires": {
"cordova-common": "^4.0.2",
"fs-extra": "^9.1.0",
"ios-sim": "^8.0.2",
"nopt": "^5.0.0",
"plist": "^3.0.1",
"semver": "^7.3.4",
"unorm": "^1.6.0",
"which": "^2.0.2",
"xcode": "^3.0.1",
"xml-escape": "^1.1.0"
},
"dependencies": {
"fs-extra": {
"version": "9.1.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/fs-extra/-/fs-extra-9.1.0.tgz",
"integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
"requires": {
"at-least-node": "^1.0.0",
"graceful-fs": "^4.2.0",
"jsonfile": "^6.0.1",
"universalify": "^2.0.0"
}
},
"jsonfile": {
"version": "6.1.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/jsonfile/-/jsonfile-6.1.0.tgz",
"integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
"requires": {
"graceful-fs": "^4.1.6",
"universalify": "^2.0.0"
}
},
"universalify": {
"version": "2.0.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/universalify/-/universalify-2.0.0.tgz",
"integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ=="
},
"which": {
"version": "2.0.2",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/which/-/which-2.0.2.tgz",
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
"requires": {
"isexe": "^2.0.0"
}
}
}
},
"cordova-plugin-device": {
"version": "2.0.2",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/cordova-plugin-device/-/cordova-plugin-device-2.0.2.tgz",
@ -7396,6 +7456,32 @@
"@stencil/core": "^2.5.0"
}
},
"ios-sim": {
"version": "8.0.2",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/ios-sim/-/ios-sim-8.0.2.tgz",
"integrity": "sha512-P7nEG771bfd+JoMRjnis1gpZOkjTUUxu+4Ek1Z+eoaEEoT9byllU9pxfQ8Df7hL3gSkIQxNwTSLhos2I8tWUQA==",
"requires": {
"bplist-parser": "^0.0.6",
"nopt": "1.0.9",
"plist": "^3.0.1",
"simctl": "^2"
},
"dependencies": {
"bplist-parser": {
"version": "0.0.6",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/bplist-parser/-/bplist-parser-0.0.6.tgz",
"integrity": "sha1-ONo0cYF9+dRKs4kuJ3B7u9daEbk="
},
"nopt": {
"version": "1.0.9",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/nopt/-/nopt-1.0.9.tgz",
"integrity": "sha1-O8DXy6e/sNWmdtvtfA6+SKT9RU4=",
"requires": {
"abbrev": "1"
}
}
}
},
"ip": {
"version": "1.1.5",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/ip/-/ip-1.1.5.tgz",
@ -9164,7 +9250,6 @@
"version": "5.0.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/nopt/-/nopt-5.0.0.tgz",
"integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
"dev": true,
"requires": {
"abbrev": "1"
}
@ -12694,6 +12779,11 @@
"integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
"dev": true
},
"shelljs": {
"version": "0.2.6",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/shelljs/-/shelljs-0.2.6.tgz",
"integrity": "sha1-kEktcv/MgVmXa6umL7D2iE8MM3g="
},
"side-channel": {
"version": "1.0.4",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/side-channel/-/side-channel-1.0.4.tgz",
@ -12710,6 +12800,35 @@
"resolved": "http://m.shuto.cn:8181/repository/npm-public/signal-exit/-/signal-exit-3.0.4.tgz",
"integrity": "sha512-rqYhcAnZ6d/vTPGghdrw7iumdcbXpsk1b8IG/rz+VWV51DM0p7XCtMoJ3qhPLIbp3tvyt3pKRbaaEMZYpHto8Q=="
},
"simctl": {
"version": "2.0.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/simctl/-/simctl-2.0.0.tgz",
"integrity": "sha512-5rB7rN4N3b0z0nFdy9eczVssXqrv2aAgdVRksPVqVoiDtvXmfzNvebp3EMdId2sAUzXIflarQlx4P0hjVQEzKQ==",
"requires": {
"shelljs": "^0.2.6",
"tail": "^0.4.0"
}
},
"simple-plist": {
"version": "1.3.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/simple-plist/-/simple-plist-1.3.0.tgz",
"integrity": "sha512-uYWpeGFtZtVt2NhG4AHgpwx323zxD85x42heMJBan1qAiqqozIlaGrwrEt6kRjXWRWIXsuV1VLCvVmZan2B5dg==",
"requires": {
"bplist-creator": "0.1.0",
"bplist-parser": "0.3.0",
"plist": "^3.0.4"
},
"dependencies": {
"bplist-parser": {
"version": "0.3.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/bplist-parser/-/bplist-parser-0.3.0.tgz",
"integrity": "sha512-zgmaRvT6AN1JpPPV+S0a1/FAtoxSreYDccZGIqEMSvZl9DMe70mJ7MFzpxa1X+gHVdkToE2haRUHHMiW1OdejA==",
"requires": {
"big-integer": "1.6.x"
}
}
}
},
"slash": {
"version": "3.0.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/slash/-/slash-3.0.0.tgz",
@ -13204,6 +13323,11 @@
"integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=",
"dev": true
},
"stream-buffers": {
"version": "2.2.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/stream-buffers/-/stream-buffers-2.2.0.tgz",
"integrity": "sha1-kdX1Ew0c75bc+n9yaUUYh0HQnuQ="
},
"streamroller": {
"version": "2.2.4",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/streamroller/-/streamroller-2.2.4.tgz",
@ -13453,6 +13577,11 @@
"strip-ansi": "^6.0.0"
}
},
"tail": {
"version": "0.4.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/tail/-/tail-0.4.0.tgz",
"integrity": "sha1-0p3nJ1DMmdseBTr/E8NZ7PtxMAI="
},
"tapable": {
"version": "2.2.1",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/tapable/-/tapable-2.2.1.tgz",
@ -13856,6 +13985,11 @@
"integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
"dev": true
},
"unorm": {
"version": "1.6.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/unorm/-/unorm-1.6.0.tgz",
"integrity": "sha512-b2/KCUlYZUeA7JFUuRJZPUtr4gZvBh7tavtv4fvk4+KV9pfGiR6CQAQAWl49ZpR3ts2dk4FYkP7EIgDJoiOLDA=="
},
"unpipe": {
"version": "1.0.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/unpipe/-/unpipe-1.0.0.tgz",
@ -14783,6 +14917,27 @@
"async-limiter": "~1.0.0"
}
},
"xcode": {
"version": "3.0.1",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/xcode/-/xcode-3.0.1.tgz",
"integrity": "sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA==",
"requires": {
"simple-plist": "^1.1.0",
"uuid": "^7.0.3"
},
"dependencies": {
"uuid": {
"version": "7.0.3",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/uuid/-/uuid-7.0.3.tgz",
"integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg=="
}
}
},
"xml-escape": {
"version": "1.1.0",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/xml-escape/-/xml-escape-1.1.0.tgz",
"integrity": "sha1-OQTBQ/qOs6ADDsZG0pAqLxtwbEQ="
},
"xml2js": {
"version": "0.4.23",
"resolved": "http://m.shuto.cn:8181/repository/npm-public/xml2js/-/xml2js-0.4.23.tgz",

View File

@ -23,6 +23,7 @@
"@ionic-native/ionic-webview": "^5.36.0",
"@ionic/angular": "^5.5.2",
"cordova-android": "9.1.0",
"cordova-ios": "6.2.0",
"rxjs": "~6.6.0",
"tslib": "^2.2.0",
"zone.js": "~0.11.4"
@ -82,7 +83,8 @@
"capture-cordova-plugin": {}
},
"platforms": [
"android"
"android",
"ios"
]
}
}

View File

@ -16,7 +16,7 @@
<div id="container">
<video #video1 muted="true" controls playsinline preload="metadata" [hidden]="!video.ready"
[src]="video.url" [poster]="video.thumbnail" height="400px"></video>
<p [hidden]="!data.directory">{{data | json}}</p>
<p [hidden]="!data">{{data}}</p>
</div>
</ion-content>
<ion-footer>

View File

@ -1,5 +1,6 @@
import { Component, NgZone } from '@angular/core';
import { WebView } from '@ionic-native/ionic-webview/ngx';
import { DomSanitizer } from '@angular/platform-browser';
declare const capture: any;
@ -14,17 +15,16 @@ export class HomePage {
ready: false,
};
constructor(private ngZone: NgZone, private webView: WebView) { }
constructor(private ngZone: NgZone, private webView: WebView, private sanitizer: DomSanitizer) { }
record() {
capture.capture('',
(rst: any) => {
console.log(rst);
this.ngZone.run(() => {
this.data = rst;
if (!rst.cancelled) {
this.video.url = this.webView.convertFileSrc(rst.video);
this.video.thumbnail = this.webView.convertFileSrc(rst.thumbnail);
this.video.url = this.sanitizer.bypassSecurityTrustResourceUrl(this.webView.convertFileSrc(rst));
// this.video.thumbnail = this.webView.convertFileSrc(rst.thumbnail);
this.video.ready = true;
}
});