|
@@ -65,7 +65,8 @@ public class RNViewShotModule extends ReactContextBaseJavaModule {
|
65
|
65
|
Integer height = options.hasKey("height") ? (int)(displayMetrics.density * options.getDouble("height")) : null;
|
66
|
66
|
String result = options.hasKey("result") ? options.getString("result") : "file";
|
67
|
67
|
try {
|
68
|
|
- File tmpFile = "file".equals(result) ? createTempFile(getReactApplicationContext(), format) : null;
|
|
68
|
+ String name = options.hasKey("filename") ? options.getString("filename") : null;
|
|
69
|
+ File tmpFile = "file".equals(result) ? createTempFile(getReactApplicationContext(), format, name) : null;
|
69
|
70
|
UIManagerModule uiManager = this.reactContext.getNativeModule(UIManagerModule.class);
|
70
|
71
|
uiManager.addUIBlock(new ViewShot(tag, format, compressFormat, quality, width, height, tmpFile, result, promise));
|
71
|
72
|
}
|
|
@@ -118,7 +119,7 @@ public class RNViewShotModule extends ReactContextBaseJavaModule {
|
118
|
119
|
* Create a temporary file in the cache directory on either internal or external storage,
|
119
|
120
|
* whichever is available and has more free space.
|
120
|
121
|
*/
|
121
|
|
- private File createTempFile(Context context, String ext)
|
|
122
|
+ private File createTempFile(Context context, String ext, String name)
|
122
|
123
|
throws IOException {
|
123
|
124
|
File externalCacheDir = context.getExternalCacheDir();
|
124
|
125
|
File internalCacheDir = context.getCacheDir();
|
|
@@ -136,7 +137,14 @@ public class RNViewShotModule extends ReactContextBaseJavaModule {
|
136
|
137
|
externalCacheDir : internalCacheDir;
|
137
|
138
|
}
|
138
|
139
|
String suffix = "." + ext;
|
139
|
|
- return File.createTempFile(TEMP_FILE_PREFIX, suffix, cacheDir);
|
|
140
|
+ File tmpFile = File.createTempFile(TEMP_FILE_PREFIX, suffix, cacheDir);
|
|
141
|
+ if (name != null) {
|
|
142
|
+ File renamed = new File(cacheDir, name + suffix);
|
|
143
|
+ tmpFile.renameTo(renamed);
|
|
144
|
+ return renamed;
|
|
145
|
+ }
|
|
146
|
+
|
|
147
|
+ return tmpFile;
|
140
|
148
|
}
|
141
|
149
|
|
142
|
150
|
}
|