diff --git a/android/src/main/java/com/reactnativecommunity/clipboard/ClipboardModule.java b/android/src/main/java/com/reactnativecommunity/clipboard/ClipboardModule.java
index 048ebe5c..f6aa617b 100644
--- a/android/src/main/java/com/reactnativecommunity/clipboard/ClipboardModule.java
+++ b/android/src/main/java/com/reactnativecommunity/clipboard/ClipboardModule.java
@@ -90,6 +90,21 @@ public void setString(String text) {
}
}
+ @ReactMethod
+ public void clearClip(Promise promise) {
+ try {
+ ClipboardManager clipboard = getClipboardService();
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
+ clipboard.clearPrimaryClip();
+ promise.resolve(true);
+ }
+ promise.resolve(false);
+ } catch (Exception e) {
+ promise.reject(e);
+ e.printStackTrace();
+ }
+ }
+
@ReactMethod
public void hasString(Promise promise) {
try {
diff --git a/example/App.tsx b/example/App.tsx
index d99c5296..90992ebe 100644
--- a/example/App.tsx
+++ b/example/App.tsx
@@ -56,6 +56,14 @@ export const App: React.FC = () => {
Alert.alert(`Copied to clipboard: ${text}`);
};
+ const clearClipboardText = async () => {
+ if (await Clipboard.clearClip()) {
+ Alert.alert(`Clipboard Cleared Success`);
+ return;
+ }
+ Alert.alert(`Clipboard Cleared Failed`);
+ };
+
const writeImageToClipboard = async () => {
Clipboard.setImage(TEST_IMAGE);
Alert.alert(`Copied Image to clipboard`);
@@ -91,6 +99,7 @@ export const App: React.FC = () => {
placeholder="Type here..."
/>
+