AppStudio 8: What’s new with Electron?

Electron is a tool which lets you build Windows and MacOS apps. Furthermore, it allows you to include Node libraries in your app. There are more than a million of them, adding all sorts of features.

AppStudio 8 makes it much easier to use Electron in your project. Add the libraries you need (if any), then choose Electron from the Run menu to build your project.

Specific changes in Version 8 are:

  • ‘Make Desktop App using Electron’ added to Run menu
  • ‘Make Desktop App for Distribution’ added to Run menu
  • Electron build now uses the Electron-build library.
  • ElectronWeather sample updated to use electron-build.
  • Electron Wiki article updated to show how to use electron-build manually.

There is no need to used the command line or enter npm commands with AppStudio 8.

There is a tutorial which takes you through creating your first Electron app. You can try here: Using Node and Electron to build Desktop Apps

Also check out the electronWeather sample, which uses the weather-js Node library to get weather information from the MSN Weather API. You could access the API directly, but the library makes this much, much easier.

AppStudio 8 – upgrades

Free Upgrades

If you have a current AppStudio Subscription or purchased after September 1, 2019, you are entitled to AppStudio 8 for no charge. We’ve sent emails to everyone. You have been updated in our database, so you should be ready to go.

Discounted Upgrades

If you’re not on the list for a free upgrade, you can still get a discount. From the About screen in AppStudio, click on the upgrade button. You’ll be taken to the order form, where you can order the upgrade for $69.95 (a new copy is $199.95). It includes 4 months of AppStudio subscription: after that, you’ll have a discounted subscription of $9.95 per month. (regularly $15.00).

You can also order it here: https://www.appstudio.dev/i/Subscription

Questions? Let us know: support@appstudio.dev

AppStudio 8 Released!

We’re thrilled to announce AppStudio 8 is ready.

The new release concentrates on making your workflow better. PhoneGap and Electron are both much easier to use. There are lot of smaller improvements as well.

We also updated many of the underlying libraries and paid off a lot of technical debt. This gets rid of a number of bugs and increases the stability of the product.

Here are some of the main new features. The complete list is here. We will be adding articles to our Blog and Wiki explaining how to use these features.

  1. PhoneGap: Auto generation of images makes it much easier to deploy to all the different device sizes. More than over a dozen other changes streamline and simplify.
  2. Electron: New menu items make Electron builds for Windows and MacOS completely automatic.
  3. Hot Reload: Restarting your app in the Chrome reuses the current tab instead of opening a new one.
  4. Better GitHub Integration: Go directly to your project in GitHub.com or GitHub Desktop.
  5. Python 3: AppStudio used to be in Python 2. Now we’re up to date.
  6. wxPython 4: The UI AppStudio uses is now also up to to date.
  7. Important! Windows 64 is now required. (MacOS already required 64 bit)
  8. Over 75 improvements in all!

Download Links

Use the link on our Downloads page.

To go back to Version 7:

Mac: Download for MacOS
Win: Download for Windows

Please open new topics on our Web Board for any questions you have – it will make it easier to keep track of the discussions.

The Future of SQLite (Updated)

Apple has announced that the next version of Safari will no longer support SQLite. This has been confirmed in the beta of iOS 13 – it’s gone. Update: It can be turned back on. See “Update” below.

There’s no need to panic. There are workarounds, which I’ll get to later in this post. Also, there are no indications that Google will do the same with Chrome.

Some History

SQLite was introduced into browsers many years ago as WebSQL. It was a great idea: SQLite is small, powerful and solid. You can make great apps with it. The problem came from the standards committee. W3C prefers a clear standard with alternative implementations: saying “Just use SQLite” isn’t good enough. They decided, in 2009, to deprecate WebSQL and replace it with IndexedDB.

(Behind the scenes, I hear there were some heavy politics going on. Microsoft and Oracle were both very unhappy with WebSQL using SQLite – they each had their own established database software and did not want an upstart competitor to become standard.)

Regardless, Safari and Google continued to include WebSQL in their browsers. FireFox and IE did not. https://caniuse.com/#search=websql

The suggested replacement, IndexedDB, is not an SQL database. It’s more of an indexed file system. It’s been criticized for being slow, clumsy and inconsistently implemented. For more information, see this article: https://developers.google.com/web/ilt/pwa/working-with-indexeddb

Alternatives
Continue reading “The Future of SQLite (Updated)”

AppStudio 7.4.2 released!

We’re pleased to announce that 7.4.2 has been released.

Late on July 29th, PhoneGap Build announced that version cli-9.0.0 is available. This is good news: As of August 1, the Google Play Store will require that all new apps are built using cli-9.0.0. Existing apps have till Nov 1, 2019.

This release updates AppStudio to handle the changes to PhoneGap Build. See this blog post for more info:
https://blog.appstudio.dev/2019/07/phonegap-build-updates-to-cli-9-0-0/

Here’s what is new and fixed in the new release:

  1. PhoneGap: If phoneGapVersion not specified, defaults to cli-9.0.0
  2. PhoneGap Samples: All samples are now compatible with cli-9.0.0

The easiest way to get the update is on the Help menu – “Check for Updates…”

PhoneGap Build Updates to cli-9.0.0

Late on July 29th, PhoneGap Build announced that version cli-9.0.0 is available. This is good news: As of August 1, the Google Play Store will require that all new apps are built using cli-9.0.0. Existing apps have till Nov 1, 2019.

The PhoneGap Build Version tells PGB which libraries use when building apps. cli-9.0.0 includes Android API Level 28, which is required for Android 9.0, so it makes sense to build apps using this new version.

What it means for you
Continue reading “PhoneGap Build Updates to cli-9.0.0”

AppStudio 7.4.1 released!

We’re pleased to announce that 7.4.1 has been released.

The biggest change is that the Samples now use Bootstrap 4 controls instead of jQuery Mobile. As mentioned before, it’s been 5 years since jQuery Mobile has been updated. If you’re still using it in your projects, please consider updating.

Here’s what is new and fixed in the new release:

  1. BS4 Navs: Fix what happens when clicked
  2. BS4: Input and Textarea can also be set using .value
  3. BS4: Textarea sizes to actual size of control
  4. BS4: Radiobutton: Inputmode property not needed
  5. BS4: Checkbox gives better message when index is out of range
  6. Deploy: Electron 5 is now supported
  7. Installer: Restore registry settings for Internet Explorer
  8. jqWidgets Grid: Clean up usage of ready property (was causing errors)
  9. jqWidgets: New jqWidgetsLicence property
  10. PWA: Some versions of IE do not support Let
  11. PWA: Allow for blank icon name
  12. PWA: Don’t put double quotes in the description
  13. PWA: Phase out some of the logging
  14. Run menu: Fix Run Electron menu item
  15. Samples: Use Bootstrap 4 controls instead of jQuery Mobile
  16. Samples: Compass now handles multiple ondeviceorientation events
  17. Samples: Fix old bug in GridNorthwind which caused error on split()
  18. Samples: GridWithScrolling did not have BASIC version
  19. Samples: jqWidgets Grid sample did not have JavaScript version
  20. Samples: New WebShare sample
  21. Wiki: Use JavaScript/BASIC tabbed control to show sample code more clearly.
  22. Wiki: Update offline edition

The easiest way to get the update is on the Help menu – “Check for Updates…”

Web Sharing

On your mobile device, sharing something is usually as simple as clicking the Share button, choosing which app you want to send it to, and then who you to share it with. Now you can add this capability to your own apps.

Here’s what the share button looks like on iOS:

Click on it, and you’ll see something like this:

Use the navigator.share() function in your app to bring up the Web Share picker. Not all browsers have this function, so check if it exists before calling.

You’ll need to put the data you want to pass to the app share in the argument to the share() function. For more details, see this Tech Note: https://wiki.appstudio.dev/Web_Sharing

Setting your app as a Web Share Target

On Android, you can add your app to the Web Share picker, so other apps can call yours. Your app has to be a PWA (which AppStudio now makes automatically) and needs to register itself.

It will now appear on the Web Share picker:

You can see the code to do this in this Tech Note: https://wiki.appstudio.dev/Web_Sharing.