Version 8
Major New Features
- PhoneGap: Auto Generate images, streamlined operation
- Electron: Streamlined operation - much easier to use!
- Hot Reload: Restarting in browser doesn't create new tab
- Python 3: AppStudio used to be in Python 2. Now we're up to date.
- wxPython 4: The UI AppStudio uses is now also up to to date.
- Windows 64 is now required. (MacOS already required 64 bit)
Upgrading
If you have AppStudio 7 or older and don't have a subscription, you will need to get the upgrade to use these new features. You can order it here.
If you like would to try it first, download from the 'Check for Updates' screen in the Help menu. You'll get a demo copy.
Version 8.5.0.0 (not released)
- BS4: Updated to 4.6
- BS4: Bootswatch themes updated to 4.6
- BS4: Input password now has option to toggle plain text on or off.
- BS4: Navs - fix .clear() and .addItem() functions
- BS4: Slider - Add .hide() and .show() functions
- Code Window: Improve function list to catch more JavaScript function formats.
- Code Window: Improved function name find.
- IDE: MacOS: control keys for copy and paste work in dialog windows.
- Demo: Do not allow Cordova Build.
- Deploy: Allow wasm files to be deployed.
- Deploy: Some redundant code eliminated - may be quicker
- Design Screen: Change "Add Component" to "Add Control".
- Electron: Spaces are not allowed in Title
- IDE: Copyright is now 2021
- IDE: MacOS: control keys for copy and paste work in dialog windows.
- IDE: wxPython updated to 4.1.1. Uses wxWidgets 3.1. Tons of fixes and minor improvements.
- Installer: Renew signing certificate
- Navigo: Updated to 8.4.3. Used by BrowserArrows (see sample)
- Project Properties: Remove androidDname - replaced by VoltSigner
- Project Properties: Signing filenames default to VoltSigner's values.
- Run Menu: Add "Get Signing Certificate with VoltSigner" .
- Run Menu: Change "Volt" to "Volt Server".
- Samples: Change PhoneGap references to VoltBuilder.
- Samples: Volt Services is now called VoltServer.
- VoltBuilder: Default key names to be same as VoltSigner defaults.
- VoltBuilder: Remove reference to xmlns:gap in default config.xml
- VoltBuilder/Cordova: Main() is now called on deviceready event.
- VoltSigner: added to Run menu.
Version 8.4.2.0
- Certificate Wizard: Make Android and iOS certificates easily.
- BootStrap Input: minlength added as a property.
- Common Grid: addCols() wasn't setting cell ids properly.
- Installer: Updated to the latest pyInstaller
- Obfuscator: Updated to the latest version. stringArrayEncoding is now an array.
- Samples: Update button on JavaScript NorthWind sample fixed.
- Windows Installer: Fixed a problem with the certificate
Version 8.4.1.5
- Cordova: Now outputs resources properly.
- Deploy: Improve the deploy confirmation message.
- Deploy: Content Security Policy is now output for all deploys except desktop
- MsgBox: new option to put data url in custom button.
- Sample: MsgBox sample fixed - icon was not displaying properly.
- VoltBuilder: Account errors (like expired) are reported properly.
- Wiki: extensive updates, especially moving from PhoneGap to VoltBuilder
- Wiki: offline copy updated.
Version 8.4.1.0
- VoltBuilder: Only generate images for platform being built.
- VoltBuilder: Add properties for upload to Google Play Store.
- VoltBuilder: Add properties for upload to iTunes App Store.
- VoltBuilder: Add prompt before submitting build.
- Deploy: Add confirm prompt to FTP/SFTP Deploy.
- Runtime: Defer execution of SQLImport until after load completes.
- Deploy: Content Security Policy is now output for all jobs.
- Project Properties: Content Security Policy moved from VoltBuilder to General.
Version 8.4.0.0
- VoltBuilder now uploads to the Apple Store after building.
- Build using VoltBuilder now hooked into VoltBuilder billing.
- Preferences: VoltBuilder panel now accepts API Credentials.
- Preferences: Links changed to buttons to fix MacOS issue.
- About: New Deregister button removes serial number from copy.
- References to PhoneGap removed.
- BS4, BS3: Text alignment now works properly.
- Bootstrap: Updated to 4.5.3.
- DataTables: Updated to latest version (different modules).
- Libraries: Upgraded to Python 3.8.
- DropDMG: Updated to 3.6
Version 8.3.0.1
- VoltBuilder: token expiry extended to 1 hour.
- VoltBuilder Status: Now updates every 10 seconds.
Version 8.3.0.0
- PhoneGap Build: All references removed. PhoneGap has been discontinued by Adobe.
- VoltBuilder has replaced PhoneGap Build in AppStudio.
- VoltBuilder: work files removed after upload
- VoltBuilder: name of downloaded file uses project name.
- VoltBuilder Status: Now works like PhoneGap Status used to.
- VoltBuilder: Proper token now sent on submit.
- VoltBuilder: Use VoltBuilder API when submitting jobs.
- VoltBuilder: recover gracefully from bad data in config.xml.
- jqWidgets: Set theme properly on jqxPhotoGallery.
- Samples: All PhoneGap samples now reference Cordova and have been renamed.
Version 8.2.2.0
- Bootstrap: Updated to 4.5.2
- Bootstrap: add 'auto' option to Bootstrap position
- VoltBuilder: Timing out too quickly in some cases.
- VoltBuilder: improve error messages and logging
- VoltBuilder: make log downloadable after successful build.
Version 8.2.1.0
- VoltBuilder: pass through email address
- VoltBuilder: Don't open VoltBuilder Status if already open.
- Bootstrap: Updated to 4.5.1
- Bootstrap Themes: Updates to 4.5.1
- DataTables: Updated all libraries to latest version.
Version 8.2.0.0
- VoltBuilder: Improve interface - better information and reporting.
- PhoneGap: Move it down the menu (will be removed soon)
Version 8.1.0.6
- VoltBuilder: Fixed a problem with dates when uploading
Version 8.1.0.5
- VoltBuilder: Update interface - server interface was changed.
- Samples: Improve Adsense sample
- VoltBuilder: Improve message on build exception
Version 8.1.0.4
- VoltBuilder: display download info in a new window.
Version 8.1.0.3
- VoltBuilder: clean up HTML on return
Version 8.1.0.2
- VoltBuilder: Android Alias had wrong edit type.
Version 8.1.0.1
- VoltBuilder: Fixed problem with androidDname
Version 8.1.0
- NEW: VoltBuilder replacement for PhoneGap Build
- NEW: Automatic creation of Android keystores.
- BS4: Fix Navs.addItem()
- Icons and Splash Screen: generator updated.
- Internal: Updated to jQuery 3.5.1
- Internal: Updated to Node 12.16.3
- Internal: Updated to Python 3.8.2
- jqxValidator: Allow the id to be other than Validator1.
- Resources: Fix config.xml paths due to change in cordova-build
- Samples: Clean up PlaySound sample.
- Samples: VoltBuilder, Cordova and Electron will ask you to save to a working folder.
- Stripe: Don't throw an error if Stripe is offline.
- VoltBuilder: new Certificates folder in all projects.
Version 8.0.6
- PhoneGap CLI renamed Cordova
- Cordova: Completely renovated, simpler and easier to use.
- Cordova: Uses wxWebView (required by Apple)
- PhoneGap config.xml: Now uses wkWebView, as required by Apple.
- Project Properties: New Cordova Command property.
- Project Properties: PhoneGap section now named "PhoneGap and Cordova"
- BS4 Modal: Add ids to title, header, body and footer.
- Common Controls: Label - alignVertical with height=auto fixed.
- Controls: Add onfocusin event to list of events for all Input controls.
- Controls: Add oninput event to list of events for all Input controls.
- Cordova: Build using XCode 11 (required by Apple)
- Design Screen: Problem with rotation fixed.
- Electron: ElectronMain now passes eslint.
- Electron: Give error message if icon not found.
- Electron: was getting default icon from wrong folder.
- Electron: New electronIcon property.
- Forms: Bounds properties now properly note how fullscreen is handled.
- Installer: Properties for AppStudio.exe now shows the version.
- PWA: Don't cache php files.
- PWA: Use default scope instead of explicit. Clears a Chrome warning message.
- Samples: Improved BS4 Modal sample. (Thanks, Gary!)
Version 8.0.5
- BS3: Change icon color to red, so it looks more obsolete.
- BS4: Update Sketchy theme.
- Electron: Don't include PWA files.
- Electron: Fix formatting error in electronMain.js.
- Electron: Use main icon, not PhoneGap icon.
- Offline Help: fixed on Windows (was OK on MacOS)
- PWA: Allow multiple apps on the same server by checking id when clearing cache.
- Samples: Fix problems with Camera samples. (Thanks, bsommer!)
- Samples: Update all PhoneGap config.xml properties
To install on MacOS Catalina, you may need to right click on the .dmg file. Apple has just increased the security requirements for apps, and one of the libraries we (and millions of others) use has not been updated to this standard yet.
Version 8.0.4
- BS4 Checkbox: Do not allow multiline strings for value property.
- BS4: Remove references to Bootstrap-theme.min.css
- BS4: Themes all updated.
- Design Screen: Do not allow designHeight/Width to be strings.
- Electron: Error on deploy fixed.
- Project Explorer: Do not append "copy" if not needed when cut/pasting controls.
- Project: manifest.json and package.json are pure JSON now.
- Samples: Camera sample is now in JavasScript.
- Samples: PhoneGap samples were trying to load unneeded files.
- Samples: Problem with PhoneGapCamera fixed. (Thanks, BSommer!)
- SQLite: Problem with deploying databases with app fixed.
- Translation: "Replace" on Find screen now appears in the proper language.
- Translation: Deutsch was adding an extra space to file names.
- Translation: German translations improved.
- Windows: Round icons now appear everywhere.
Version 8.0.3
- PWA: 'disablePWA' is now called 'Make PWA?'
- PWA: Test new variable NSB.PWA if see if running as a PWA.
- PWA: If not running as a PWA, don't initialize PWA.
- esLint: Handles Windows line ending properly.
- Design Screen: Problem with deleting controls which have been cut and pasted fixed.
- Samples: Fix JavaScript version of Camera sample.
- BS4 themes: Fix spelling of Lumen.
- BS4 themes: Paper and Readable shouldn't have been listed.
- BS4 themes: Litera and Sketchy added.
- Libraries: Updates to Python, Node, obfuscater, eslint and more.
Version 8.0.2
- Bootstrap 4: bootstrap-enhanced.css removed - obsolete.
- Controls: Emoji in text fields now display properly.
- Deploy: obsolete code for nsbapp.com removed.
- Images: Do not delete image file when control referencing it is deleted.
- Properties Grid: Duplicate ID numbers checked.
- Samples: Dark Mode sample improved.
- Windows: File Version fixed in Windows' Properties.
- Windows: Signing certificate updated.
Version 8.0.1
- About: Display serial number
- Bootstrap: Make themes easier to see and preview.
- Electron: IScroll now loads properly.
- Code Window: Remembers position when switching forms.
- IDE: Copyright dates changed to 2020.
- IDE: Fix error on startup - deploy_deploymode not initialized
- MacOS: Builds are notarized, so they should work with Catalina's security.
- MacOS: Minimum version is now 10.13 (High Sierra).
- PWA: Duplicate filenames are handled properly.
- PWA: Filenames with spaces work properly.
- PWA: Fix missing function in PWA.js
- PWA: new onPWAReload() event gets called when new version detected. Can be used to override default behaviour.
- Translations: Add full Chinese Traditional
- Updates: URLs are no longer hard coded.
- Validation: Library updated to 1.19.1.
- Wiki: Offline edition's Search feature fixed.
Version 8.0.0
Here's a list of what is new.
If you own a previous version of AppStudio and do not have a subscription, you need to buy the upgrade to use Version 8. You can do this from within the app or from our order form.
Until you have bought the upgrade, you can use AppStudio 8 in Demo mode for up to 30 days. Once you buy, your copy will convert automatically to the full version.
IDE
General
- AppStudio icon updated to a more modern circle style.
- Dark Mode Support: AppStudio can now make Dark Mode apps. AppStudio does not support Dark Mode fully itself: there are still parts of the underlying wxWidgets library that its developer's need to work on.
- Filename checking improved. Properly supports spaces, underbars, dashes and periods.
- Opens to HelloWorld the first time AppStudio is started.
- Check for updates on startup.
- Tools Menu: New option to open project in GitHub website.
- Tools Menu: New option to open project in GitHub Desktop app.
- New version check on startup.
- Landscape enabled in the Layout option of the browser's Print dialog.
- Run menu: If Local Path is not defined, Deploy Local can now start the app after Deploy.
- Run menu: Deploy option now uses the deploy method selected in the picker.
Code Window
- More keyboard shortcuts now work on MacOS
- eslint messages now show just the first 10,000 characters (fixes an error)
- Pasted code with smart quotes no longer crashes Code Window.
Design Screen
- Hang which could be caused by adding and deleting a jQM control fixed.
- Right clicking on a control will refer to the control, not its parent.
- Changes to Project CSS are updated in the Design Screen right away.
Preferences
- A download directory has been added to PhoneGap Preferences.
- Option to specify deploy location removed from Deploy Preferences.
Project Explorer
- Filenames with spaces can be dragged and dropped.
- Filenames now display their actual names.
Project Properties
- Background: Set this to inherit to enable dark mode.
- PWA: New 'disable PWA' property turns off creation of PWA.
Status Bar
- Updates more frequently
Runtime
- Async/Await support added.
- "apple-mobile-web-app-capable" no longer included in head.
- "jquery 3.3.1 SNYK-JS-JQUERY-174006 assets/www/nsb/library/jquery3.js" message from Google fixed.
Deploy Methods
Electron
- 'Make Desktop App using Electron' added to Run menu
- 'Make Desktop App for Distribution' added to Run menu
- Electron build now uses Electron-build library.
- ElectronWeather sample updated to use electron-build.
- Electron Wiki article updated to show how to use electron-build manually.
PhoneGap
- New PhoneGap icon property added. Should be 1024x1024 png.
- New PhoneGap splash property added. Should be 2732x2732 png.
- If icon or splash are the wrong size or missing, a 'Missing source image' message is shown.
- All required icons are now automatically generated.
- All required splash screens are now automatically generated.
- Config.xml is automatically updated with the correct paths for icons and splashes.
- 'Generate Icons for PhoneGap' removed from Tools menu.
- Errors in config.xml now throw an appropriate message.
- Build counter property added. Increments on each build and updates config.xml.
- CSP is now required for all PhoneGap apps (Google requirement).
- PhoneGap samples now give a warning when not run with PhoneGap.
- PhoneGap Preferences: Download directory added.
- Get Native Build Status: After PhoneGap app is generated, it is automatically downloaded.
- A reasonable filename is now generated for download PhoneGap apps.
- PWA code is no longer included in PhoneGap apps.
- QR Code is no longer displayed if no PhoneGap account.
- PhoneGap Status exits if new project loaded.
PWA
- Errors in manifest.json now throw an appropriate message.
- Add project property to turn off PWA code.
- Better message given when starting PWA with file://. Must be started from a server.
- 'scope' line added to manifest.json for iOS.
Frameworks
Another year has passed without updates to jQuery Mobile. That's 5 years now. While the controls still work, for the most part, they throw error messages in Chrome for using insecure libraries. We recommend converting to Bootstrap 4.
Bootstrap 3 has been replaced by Bootstrap 4. We recommend switching to the new version.
AppStudio
Bootstrap 4
- Listgroup: Using button style with appearances now works properly.
- Textarea: Use rows property, not height, to set size of control.
- Updated to Bootstrap 4.4.1
- Datatables controls updated to current version.
Bootstrap 3 (Obsolete)
- Now marked as Obsolete in the Toolbox and Samples.
Common
- Forms: iScroll no longer used - use native scrolling instead.
- QRCode: setValue added to autocomplete in Code Window
jQuery Mobile (Obsolete)
- Now marked as Obsolete in the Toolbox and Samples.
jqWidgets
BASIC
- Async and Await are translated properly.
- False syntax error on Catch fixed.
Samples
- All: All samples now use Bootstrap 4 controls.
- New Async sample shows how to use Async/Await.
- New DarkMode samples shows how to initiate dark mode.
- PhoneGap samples now give a warning when not run with PhoneGap.
- GoogleMaps sample now tells user an API key is needed.
- jqxComboBox sample fixed.
- StockQuote sample dropped.
- Samples automatically have BASIC library included, in case they use those functions.
- jQuery Mobile removed from all samples.
- ScrollingForm sample now uses native scrolling, not iScroll.
Documentation
Internals
- Python updated from 2.7 to 3.7.
- wxPython updated to Version 4 ("Phoenix")
- All references to hfunc.js removed (obsolete)
- jQuery updated to 3.4.1
- Customer and level set in .env (affects dev environment only)
- Code quality improved by linting
- Windows installer: now built by InnoSetup 6.0.3
- Windows installer: appearance updated
Breaking Changes
- 64-bit Windows is required. 32-bit Windows will not work any more: some of the underlying libraries AppStudio uses are not available in 32 bit.
- AppStudio now installs to c:/Program Files, not c:/Program Files (x86). You may need to do a complete uninstall for this to happen.
- MacOS 10.13 or later is required.
- The PhoneGap config.xml property needs to be updated. Fill in values for PhoneGap Icon (1024) and Splash (2732), then delete these lines from config.xml. AppStudio now generates this content automatically:
* Sections with <icon lines
* Sections with <splash lines
* <gap:splash src='{splashscreen}'/>
Or, start fresh by copying the config.xml sample in shown here and adding any other changes you have made. Don't forget to delete all the old icons and splashscreens which are no longer needed.