问题描述
我们有一个注册为共享目标的PWA。一切正常,直到您尝试共享文件并在下面得到此错误为止:
我们的共享目标代码:
var quality = 100
private fun sendImagetoDevice(quality: Int,icon: Bitmap) {
Log.e(TAG,"quality of image is $quality ")
runOnUiThread {
Toast.makeText(
this@MainActivity,"Image Quality $quality",Toast.LENGTH_SHORT
)
.show()
}
if (quality > 0)
try {
mProcessImageService?.sendImageFormat(icon.toBase64(quality))
} catch (e: TransactionTooLargeException) {
e.message
this.quality = quality - 20
sendImagetoDevice(this.quality,icon)
}
else {
}
}
fun Bitmap.toBase64(quality: Int): String {
val outputStream = ByteArrayOutputStream()
this.compress(Bitmap.CompressFormat.JPEG,quality,outputStream)
val base64String: String = Base64.encodetoString(outputStream.toByteArray(),Base64.NO_WRAP)
Log.d("MainActivity","outputstream size is ${outputStream.size()}")
return base64String
}
清单
// share target
self.addEventListener('fetch',event => {
if (event.request.method !== 'POST' || event.request.url.includes('/collection') === false) {
event.respondWith(fetch(event.request));
return;
}
event.waitUntil((async () => {
try {
const formData = await event.request.formData();
const image = formData.get('image');
console.log('image',image);
const video = formData.get('video');
console.log('video',video);
const client = await self.clients.get(event.resultingClientId || event.clientId);
if (image) {
client.postMessage({ image,action: 'upload-image' });
}
if (video) {
client.postMessage({ video,action: 'upload-video' });
}
} catch(e) {
console.log(e);
}
})());
它是记录图像文件的控制台。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)