Toggle navigation
Toggle navigation
This project
Loading...
Sign in
flutter_package
/
dart_pdf
Go to a project
Toggle navigation
Projects
Groups
Snippets
Help
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
Pho Tran
2020-09-28 11:14:50 +0700
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Committed by
David PHAM-VAN
2020-10-01 07:49:41 -0400
Commit
2c619389eec50a9d2088db20a1aa2041874a1dbb
2c619389
1 parent
45cb50b8
fixed permission denial while sharing file with fileprovider
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
12 additions
and
13 deletions
printing/android/src/main/java/net/nfet/flutter/printing/PrintingJob.java
printing/android/src/main/java/net/nfet/flutter/printing/PrintingJob.java
View file @
2c61938
...
...
@@ -19,32 +19,19 @@ package net.nfet.flutter.printing;
import
android.content.Context
;
import
android.content.Intent
;
import
android.content.res.Configuration
;
import
android.graphics.Bitmap
;
import
android.graphics.Matrix
;
import
android.graphics.pdf.PdfRenderer
;
import
android.net.Uri
;
import
android.os.Build
;
import
android.os.Bundle
;
import
android.os.CancellationSignal
;
import
android.os.Handler
;
import
android.os.Looper
;
import
android.os.ParcelFileDescriptor
;
import
android.print.PageRange
;
import
android.print.PdfConvert
;
import
android.print.PrintAttributes
;
import
android.print.PrintDocumentAdapter
;
import
android.print.PrintDocumentInfo
;
import
android.print.PrintJob
;
import
android.print.PrintJobInfo
;
import
android.print.PrintManager
;
import
android.util.Log
;
import
android.webkit.WebView
;
import
android.webkit.WebViewClient
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.RequiresApi
;
import
androidx.core.content.FileProvider
;
import
java.io.File
;
import
java.io.FileInputStream
;
import
java.io.FileOutputStream
;
...
...
@@ -52,6 +39,12 @@ import java.io.IOException;
import
java.io.OutputStream
;
import
java.nio.ByteBuffer
;
import
java.util.HashMap
;
import
android.content.pm.PackageManager
;
import
android.content.pm.ProviderInfo
;
import
android.content.pm.ResolveInfo
;
import
java.util.List
;
/**
* PrintJob
...
...
@@ -223,6 +216,12 @@ public class PrintingJob extends PrintDocumentAdapter {
shareIntent
.
putExtra
(
Intent
.
EXTRA_STREAM
,
apkURI
);
shareIntent
.
addFlags
(
Intent
.
FLAG_GRANT_READ_URI_PERMISSION
);
Intent
chooserIntent
=
Intent
.
createChooser
(
shareIntent
,
null
);
List
<
ResolveInfo
>
resInfoList
=
context
.
getPackageManager
().
queryIntentActivities
(
chooserIntent
,
PackageManager
.
MATCH_DEFAULT_ONLY
);
for
(
ResolveInfo
resolveInfo
:
resInfoList
)
{
String
packageName
=
resolveInfo
.
activityInfo
.
packageName
;
context
.
grantUriPermission
(
packageName
,
apkURI
,
Intent
.
FLAG_GRANT_WRITE_URI_PERMISSION
|
Intent
.
FLAG_GRANT_READ_URI_PERMISSION
);
}
context
.
startActivity
(
chooserIntent
);
shareFile
.
deleteOnExit
();
}
catch
(
IOException
e
)
{
...
...
Please
register
or
login
to post a comment