FAST SDK Update 0.8.4

New SharedPreferences Editor plugin

Version 0.8.4 brings the new SharedPreferences plugins. There are now 7 available plugins in FAST SDK:

  • View Inspector
  • Actions
  • Overlays
  • Resource Explorer
  • Logger
  • Crash Info
  • SharedPreferences Editor

Please visit the wiki for instructions about adding it to your project.

So what can you do with the new SharedPreferences Editor plugin?

View your SharedPreferences keys and values

Of course, this is the basic feature that you could expect. You can visualize and explore your SharedPreferences as a list of key/value pairs.

Shared Preferences Editor

Easily switch between SharedPreferences files

Your application may have several SharedPreferences files. It may be an architecture choice, or simply to make your developer life easier.

We know that and that’s why we have a selector to make an easy switch between your SharedPreferences files.

Edit your SharedPreferences files

We didn’t stop to simply viewing the content of your SharedPreferences. As always, our goal is to make you save a lot of time, that’s why we wanted our plugin to be able to edit the values right from the start.

As you can see in the capture above, you can easily edit your values:

  • Boolean values are using a Switch View
  • Integers, Longs and Floats values are using a custom Number Stepper View
  • String values are using a TextView
  • StringSet values are using a list of TextViews.

Wait a minute. TextViews aren’t editable you’re going to tell me. And you’re right!

We decided that in order to edit String and StringSet values easily, both needed a dedicated screen. That’s why you can click on String and StringSet values and you will get a dedicated editing screen for each of them.

Minor features

Small but handy features, you can:

  • Sort your keys alphabetically
  • Clear your SharedPreferences key/value pairs
  • Refresh the data

Future features

This is only the first version of the SharedPreferences plugin and it’s far from being complete.

We have already planned to add the possibility to add new key/value pairs, as well as to be able to change a value type (for example, change the value associated with a key from Int to String, or from Long to Float for example).

Another feature, that will benefit other plugins as well, will be the possibility to display formatted content for String values.

For example, it’s not uncommon to store JSON values into Strings. Displaying human-formatted values will be easier to read than minified JSON data.

We will introduce Formatters later and make it available to all plugins that can use them. You will be able to choose to display your content as formatted JSON, XML, etc… and even create your own Formatters for your custom data objects.

Crash Info plugin update

There was an issue with the Crash Info plugin when a crash occurred on a background thread.

The previous behavior was to display the Crash Info panel whenever a crash occurred, regardless of the thread (UI or background).

We added a quick and simple patch to ensure that the Crash Info panel only displays on the UI thread, even if the crash occurred on the background thread.

SDK update

We made a few fixes into our core modules, refactored some code and added a few new widgets.

Since one of our goal is to allow developers to build their tools based on the FAST SDK, we need to offer some common widgets like the Switch view or the BottomSheetDialog view to name just a few.

Even though the cited examples are available in the androidx packages, remember that FAST SDK doesn’t depend on those libraries in order to be compatibles with most projects.

Documentation to take advantage of FAST SDK to build your own tools is not available at the moment as we are concentrating our effort on building the first set of tools. The api is also regularly changing, so we think it’s best to make the documentation available on this subject once the beta period is over and we have stabilized our apis.

Feedback welcome

Have you tried FAST SDK. Did you like it? Did you hate it? Please let us know in the comments, or send us a message via the contact form!

Thank you!


Share on twitter
Share on linkedin
Share on reddit
Share on facebook
Share on email