From 25205f4c35478cf2a43675343a6a2ad9f3048a47 Mon Sep 17 00:00:00 2001 From: yasirkula Date: Sat, 10 Dec 2022 18:38:09 +0300 Subject: [PATCH] - Potential bugfix for ShareResultCallback.shareTarget being null for some apps on newest Android versions - Potential bugfix for crash in Unity as a Library apps (#155) - Added NativeShare.Clear function --- .../unity/NativeShareBroadcastListener.java | 5 +---- .../unity/NativeShareContentProvider.java | 20 ++++++++++++------ .../yasirkula/unity/NativeShareFragment.java | 2 +- .github/README.md | 1 + Plugins/NativeShare/Android/NativeShare.aar | Bin 28395 -> 28446 bytes Plugins/NativeShare/NativeShare.cs | 19 +++++++++++++++-- Plugins/NativeShare/README.txt | 3 ++- package.json | 2 +- 8 files changed, 37 insertions(+), 15 deletions(-) diff --git a/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareBroadcastListener.java b/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareBroadcastListener.java index 8e5fe0b..0b7e38c 100644 --- a/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareBroadcastListener.java +++ b/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareBroadcastListener.java @@ -26,10 +26,7 @@ public static IntentSender Initialize( Context context ) // Maybe FLAG_IMMUTABLE is sufficient but the pre-31 default value was implicitly mutable and I don't trust // all social apps to work correctly on Android 12+ (API 31+) if I set it to FLAG_IMMUTABLE //pendingIntentFlags |= PendingIntent.FLAG_MUTABLE; - - // Only temporarily set the IMMUTABLE flag to avoid crashes until Android 12 SDK is officially released - // https://github.com/yasirkula/UnityNativeShare/issues/130 - pendingIntentFlags |= PendingIntent.FLAG_IMMUTABLE; + pendingIntentFlags |= 1 << 25; // Hardcoded value of PendingIntent.FLAG_MUTABLE (when compiling with an older SDK version) } return PendingIntent.getBroadcast( context, 0, receiverIntent, pendingIntentFlags ).getIntentSender(); diff --git a/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareContentProvider.java b/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareContentProvider.java index ddea4fd..00d9421 100644 --- a/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareContentProvider.java +++ b/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareContentProvider.java @@ -12,6 +12,7 @@ import android.os.ParcelFileDescriptor; import android.provider.OpenableColumns; import android.text.TextUtils; +import android.util.Log; import android.webkit.MimeTypeMap; import org.xmlpull.v1.XmlPullParserException; @@ -254,12 +255,19 @@ private static PathStrategy parsePathStrategy(Context context, String authority) final SimplePathStrategy strat = new SimplePathStrategy(authority); final ProviderInfo info = context.getPackageManager() .resolveContentProvider(authority, PackageManager.GET_META_DATA); - final XmlResourceParser in = info.loadXmlMetaData( - context.getPackageManager(), META_DATA_FILE_PROVIDER_PATHS); - //if (in == null) { - // throw new IllegalArgumentException( - // "Missing " + META_DATA_FILE_PROVIDER_PATHS + " meta-data"); - //} + if (info == null) + { + Log.w("Unity", "NativeShareContentProvider.resolveContentProvider is null!"); + } + else + { + final XmlResourceParser in = info.loadXmlMetaData( + context.getPackageManager(), META_DATA_FILE_PROVIDER_PATHS ); + //if (in == null) { + // throw new IllegalArgumentException( + // "Missing " + META_DATA_FILE_PROVIDER_PATHS + " meta-data"); + //} + } File target = null; target = buildPath(DEVICE_ROOT, "."); diff --git a/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareFragment.java b/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareFragment.java index e5090dc..e4b433f 100644 --- a/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareFragment.java +++ b/.github/AAR Source (Android)/java/com/yasirkula/unity/NativeShareFragment.java @@ -39,7 +39,7 @@ public void onCreate( Bundle savedInstanceState ) super.onCreate( savedInstanceState ); if( NativeShare.shareResultReceiver == null ) - getFragmentManager().beginTransaction().remove( this ).commit(); + onActivityResult( SHARE_RESULT_CODE, Activity.RESULT_CANCELED, null ); else { final ArrayList fileUris = new ArrayList(); diff --git a/.github/README.md b/.github/README.md index 90b9cd3..3c18c02 100644 --- a/.github/README.md +++ b/.github/README.md @@ -39,6 +39,7 @@ There are two ways to set up the plugin on iOS: Simply create a new **NativeShare** object and customize it by chaining the following functions as you like (see example code): +- `Clear()`: clears the previously set share content (if any). Only useful if the same NativeShare instance will be reused for memory efficiency - `SetSubject( string subject )`: sets the subject (primarily used in e-mail applications) - `SetText( string text )`: sets the shared text. Note that the Facebook app will omit text, if exists (see [this topic](https://stackoverflow.com/a/35102802/2373034)) - `SetUrl( string url )`: sets the shared url. On supported iOS apps, this url is used to generate a preview of the target webpage. Other iOS apps may append the url to the text or omit it. While sharing a file on iOS or while sharing anything on Android, the url is appended to the text (unless the text already contains the url) diff --git a/Plugins/NativeShare/Android/NativeShare.aar b/Plugins/NativeShare/Android/NativeShare.aar index 84f2dc961720741288523c2bef08288538f75635..17b3707904b5293bfbab82e27398d0a8f6b5db8d 100644 GIT binary patch delta 25993 zcmV(zK<2;e-2tB70kAU&4sVf)RYKLcR)u5$048jcK?oCnQ*bU&w=Ec(JGO1xPQKXQ zv2E<^*tTu%*tTsuUu>iQx_w^G>4)35`(ahBTD6`=%^G9W9CIqkfkU8!fPlb&kid|D zW&Kgm)x!Y+;pPAVq4>|MiGv-JmywH=vyGdr5tEy}m8%z%f|0A0yP2w`k+T`2iLH@~ zON}nP@8a@*lhA2eaWDB-v%D&pxWREja*GnAIAVCR3h_qj1}0pgv85Pnv5brgAzT)9 zPtHR#&G}pbp36aKAKci;Ru!+Sy~_-6YjB#UwH;_MgV_Jwd-|QoZl~IJ^;7V+{n1(H za_!|i+x}7}CFK1MgDSsT$_He8<_0PdTAv!Z6JDEtGUXYaqPFuVO7YAI>YTDDIRBG6 zHRg*;Ip^k!Ykh#=%cDV?O)QOYXRLo9=S$mY2b88vf+Z2~htOU6wgk=YS15G&myJgQ zdGqLw5%}_`9%okHz;ga5;Eu8#vrMu=Psv<~Qq7)3UGk60wEs?`^QujfbV*4%b!tvJ zeE{=+qDM#iyl>N@^a`G%aIZ~B)8Sj?u_9nflrrj%ot*LDdn4>woykkMZ{*!Ad-zh=nL*~Zf)_d~p8kyI7o>_K5WO_ozk=Q`7oOpVr%Fm^{ju(@PG{C9`{|@Xab@bh^zeRPmshjvp{HbZ$wXyf$=HtBs~b zR1O18YKIXMp+&vGnN&gD!;1pX32~USFD~|v0$YbDnniu7Nqm!z6Y`*7ZDYnUzmP2u zgZ3N@)|Cq>+uv;lCYTF?a~NwhNImC&PP|D!CKC%TxX2FRi=*mC-NTL^-V%m6Z2cAW zWjVxTp#eiTYu=Cy&>1kTiEM$&fU_1&_^og8G4Z>a<{v9Q`brT)z-^*1J^9VJq>Zr~ z^$h#7T2~-nRwZ+{vI<&w(@0^#N@S`fIchXHZDsLRdiooSN0)Ct^N�cPD0lLIELs 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 IYybcN0E(jN9RL6T delta 25942 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 Jq-+2H001y@iNXK? diff --git a/Plugins/NativeShare/NativeShare.cs b/Plugins/NativeShare/NativeShare.cs index f27e814..4544ef0 100644 --- a/Plugins/NativeShare/NativeShare.cs +++ b/Plugins/NativeShare/NativeShare.cs @@ -53,9 +53,7 @@ private static AndroidJavaObject Context #if UNITY_EDITOR || UNITY_ANDROID private readonly List emailRecipients = new List( 0 ); -#endif -#if UNITY_EDITOR || UNITY_ANDROID private readonly List targetPackages = new List( 0 ); private readonly List targetClasses = new List( 0 ); #endif @@ -65,6 +63,23 @@ private static AndroidJavaObject Context private ShareResultCallback callback; + public NativeShare Clear() + { + subject = text = title = url = string.Empty; + +#if UNITY_EDITOR || UNITY_ANDROID + emailRecipients.Clear(); + targetPackages.Clear(); + targetClasses.Clear(); +#endif + files.Clear(); + mimes.Clear(); + + callback = null; + + return this; + } + public NativeShare SetSubject( string subject ) { this.subject = subject ?? string.Empty; diff --git a/Plugins/NativeShare/README.txt b/Plugins/NativeShare/README.txt index 76afe8d..b3c76ef 100644 --- a/Plugins/NativeShare/README.txt +++ b/Plugins/NativeShare/README.txt @@ -1,4 +1,4 @@ -= Native Share for Android & iOS = += Native Share for Android & iOS (v1.4.8) = Online documentation & example code available at: https://github.com/yasirkula/UnityNativeShare E-mail: yasirkula@gmail.com @@ -44,6 +44,7 @@ If you are sure that your plugin is up-to-date, then enable "Custom Proguard Fil 4. SCRIPTING API Simply create a new NativeShare object and customize it by chaining the following functions as you like: +- Clear(): clears the previously set share content (if any). Only useful if the same NativeShare instance will be reused for memory efficiency - SetSubject( string subject ): sets the subject (primarily used in e-mail applications) - SetText( string text ): sets the shared text. Note that the Facebook app will omit text, if exists - SetUrl( string url ): sets the shared url. On supported iOS apps, this url is used to generate a preview of the target webpage. Other iOS apps may append the url to the text or omit it. While sharing a file on iOS or while sharing anything on Android, the url is appended to the text (unless the text already contains the url) diff --git a/package.json b/package.json index 92ec363..6b9eddf 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "com.yasirkula.nativeshare", "displayName": "Native Share", - "version": "1.4.7", + "version": "1.4.8", "documentationUrl": "https://github.com/yasirkula/UnityNativeShare", "changelogUrl": "https://github.com/yasirkula/UnityNativeShare/releases", "licensesUrl": "https://github.com/yasirkula/UnityNativeShare/blob/master/LICENSE.txt",