I have added a custom action using a plugin. Everythign works fine, but one thing:
In the `actionSelected` method of the `PluginActionBroadcastReceiver` implementation, I try to get the protected fields:
```
string[] strings = actionSelected.getProtectedFieldsList();
```
This whill generate the following exception and always return an empty list, even if there are protected entries:
```
03-25 18:26:16.196 W/Bundle (10679): Key keepass2android.EXTRA_PROTECTED_FIELDS_LIST expected String[] but value was a java.lang.String. The default value <null> was returned.
03-25 18:26:16.201 W/Bundle (10679): Attempt to cast generated internal exception:
03-25 18:26:16.201 W/Bundle (10679): java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.String[]
03-25 18:26:16.201 W/Bundle (10679): at android.os.BaseBundle.getStringArray(BaseBundle.java:1258)
03-25 18:26:16.201 W/Bundle (10679): at android.content.Intent.getStringArrayExtra(Intent.java:5299)
03-25 18:26:16.201 W/Bundle (10679): at keepass2android.pluginsdk.PluginActionBroadcastReceiver$PluginEntryActionBase.getProtectedFieldsListFromIntent(PluginActionBroadcastReceiver.java:69)
03-25 18:26:16.201 W/Bundle (10679): at keepass2android.pluginsdk.PluginActionBroadcastReceiver$ActionSelectedAction.getProtectedFieldsList(PluginActionBroadcastReceiver.java:150)
03-25 18:26:16.201 W/Bundle (10679): at md58c8feaf55f2a1454fdf77892e5b84088.TransferActionReceiver.n_actionSelected(Native Method)
03-25 18:26:16.201 W/Bundle (10679): at md58c8feaf55f2a1454fdf77892e5b84088.TransferActionReceiver.actionSelected(TransferActionReceiver.java:38)
03-25 18:26:16.201 W/Bundle (10679): at keepass2android.pluginsdk.PluginActionBroadcastReceiver.onReceive(PluginActionBroadcastReceiver.java:272)
03-25 18:26:16.201 W/Bundle (10679): at android.app.ActivityThread.handleReceiver(ActivityThread.java:2673)
03-25 18:26:16.201 W/Bundle (10679): at android.app.ActivityThread.access$1700(ActivityThread.java:156)
03-25 18:26:16.201 W/Bundle (10679): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1428)
03-25 18:26:16.201 W/Bundle (10679): at android.os.Handler.dispatchMessage(Handler.java:102)
03-25 18:26:16.201 W/Bundle (10679): at android.os.Looper.loop(Looper.java:211)
03-25 18:26:16.201 W/Bundle (10679): at android.app.ActivityThread.main(ActivityThread.java:5389)
03-25 18:26:16.201 W/Bundle (10679): at java.lang.reflect.Method.invoke(Native Method)
03-25 18:26:16.201 W/Bundle (10679): at java.lang.reflect.Method.invoke(Method.java:372)
03-25 18:26:16.201 W/Bundle (10679): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1020)
03-25 18:26:16.201 W/Bundle (10679): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)
```
It seems to be a problem with the extras in the transfered bundle, as you can guess from the output.
In the `actionSelected` method of the `PluginActionBroadcastReceiver` implementation, I try to get the protected fields:
```
string[] strings = actionSelected.getProtectedFieldsList();
```
This whill generate the following exception and always return an empty list, even if there are protected entries:
```
03-25 18:26:16.196 W/Bundle (10679): Key keepass2android.EXTRA_PROTECTED_FIELDS_LIST expected String[] but value was a java.lang.String. The default value <null> was returned.
03-25 18:26:16.201 W/Bundle (10679): Attempt to cast generated internal exception:
03-25 18:26:16.201 W/Bundle (10679): java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.String[]
03-25 18:26:16.201 W/Bundle (10679): at android.os.BaseBundle.getStringArray(BaseBundle.java:1258)
03-25 18:26:16.201 W/Bundle (10679): at android.content.Intent.getStringArrayExtra(Intent.java:5299)
03-25 18:26:16.201 W/Bundle (10679): at keepass2android.pluginsdk.PluginActionBroadcastReceiver$PluginEntryActionBase.getProtectedFieldsListFromIntent(PluginActionBroadcastReceiver.java:69)
03-25 18:26:16.201 W/Bundle (10679): at keepass2android.pluginsdk.PluginActionBroadcastReceiver$ActionSelectedAction.getProtectedFieldsList(PluginActionBroadcastReceiver.java:150)
03-25 18:26:16.201 W/Bundle (10679): at md58c8feaf55f2a1454fdf77892e5b84088.TransferActionReceiver.n_actionSelected(Native Method)
03-25 18:26:16.201 W/Bundle (10679): at md58c8feaf55f2a1454fdf77892e5b84088.TransferActionReceiver.actionSelected(TransferActionReceiver.java:38)
03-25 18:26:16.201 W/Bundle (10679): at keepass2android.pluginsdk.PluginActionBroadcastReceiver.onReceive(PluginActionBroadcastReceiver.java:272)
03-25 18:26:16.201 W/Bundle (10679): at android.app.ActivityThread.handleReceiver(ActivityThread.java:2673)
03-25 18:26:16.201 W/Bundle (10679): at android.app.ActivityThread.access$1700(ActivityThread.java:156)
03-25 18:26:16.201 W/Bundle (10679): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1428)
03-25 18:26:16.201 W/Bundle (10679): at android.os.Handler.dispatchMessage(Handler.java:102)
03-25 18:26:16.201 W/Bundle (10679): at android.os.Looper.loop(Looper.java:211)
03-25 18:26:16.201 W/Bundle (10679): at android.app.ActivityThread.main(ActivityThread.java:5389)
03-25 18:26:16.201 W/Bundle (10679): at java.lang.reflect.Method.invoke(Native Method)
03-25 18:26:16.201 W/Bundle (10679): at java.lang.reflect.Method.invoke(Method.java:372)
03-25 18:26:16.201 W/Bundle (10679): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1020)
03-25 18:26:16.201 W/Bundle (10679): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)
```
It seems to be a problem with the extras in the transfered bundle, as you can guess from the output.