🚧 Work in progress
This package was forked from the unmaintained package braune-digital/nativescript-share-file. We are currently cleaning up and updating the code.
Send/Share files to other apps.
Android Intent, IOS InteractionController:
Install the plugin in your app.
npm install @finanzritter/nativescript-share-file
On Android, you must add a FileProvider definition and specify available files, which is documented here or have a look at the demo app (AndroidManifest.xml and file_paths.xml).
Info: Shared files should be in the documents
path.
import { ShareFile } from '@finanzritter/nativescript-share-file';
import { Observable, knownFolders, path, File } from "@nativescript/core";
export class TestClass extends Observable {
shareFile;
fileName;
documents;
path;
file;
constructor() {
super();
this.fileName = 'test.txt';
this.documents = knownFolders.documents();
this.path = path.join(this.documents.path, this.fileName);
this.file = File.fromPath(this.path);
this.shareFile = new ShareFile();
this.shareFile.open({
path: this.path,
intentTitle: 'Open text file with:', // optional Android
rect: { // optional iPad
x: 110,
y: 110,
width: 0,
height: 0
},
options: true, // optional iOS
animated: true // optional iOS
});
}
}
Path to the file which will be shared.
String
: Required
Title for the intent on Android.
String
: (Optional)
Default: Open file:
.
Positioning the view for iPads. On iPhones it's always shown on the bottom.
Object
: (Optional)
Default: {x: 0, y: 0, width: 0, height: 0 }
.
Show additional opening options for iOS devices.
Boolean
: (Optional)
Default: false
.
Opening animation for iOS devices.
Boolean
: (Optional)
Default: false
.
- @braune-digital: for being the original author of this plugin braune-digital/nativescript-share-file