Philip Sheard has been working in IT for over 40 years, and on this project for the last 20. His current skills include Java, Android, Objective-C, iOS, PHP, MySQL, ASP.Net, SQL Server, HTML, CSS, Apache and WordPress.
Most of the differences between the two apps are due to differences in the underlying platforms. Android and iOS have different design criteria, and each app is developed as a native app for its own platform. No attempt is made to copy features directly from one app to the other, without changing them to match the design standards of the new platform.
Some features are only available on one of the two platforms (usually Android). For instance Android devices have SD slots, while iOS ones do not. When this happens, the decision whether to use the feature at all is taken on merit. Some minor features can be omitted altogether. Others are so important that they have to be included, albeit on one platform only.
The Sales Manager mobile app has a large number of screens, and navigating between them is particularly important. The traditional hierarchical menu structure offered by both Android and iOS is slow and time consuming.
Android offers another solution for larger apps, called the Navigation Drawer. This allows the developer to present a menu for the entire app, as a drop-down list. The top part of the navigation drawer for the Android app is shown on the right.
Unfortunately no such paradigm exists on the iOS platform, and the iOS app is stuck with an old-fashioned, hierarchical menu system.
Although it is not quite as important as the navigation drawer, split screen mode is another feature that is only available on Android. iOS offers some limited support for split screen mode, but not in a form that can be used by the mobile app. Split screen is only available on Android tablets, in horizontal mode.
Using both Platforms
It is possible to use a mixture of Android and iOS devices, but there are a number of caveats:
Separate payments must be made to Google Play and iTunes. Payments made on one platform cannot be transferred to the other.
It may not be possible to transfer an SQLite database from one platform to the other, due to their running different versions of SQLite. It used to be possible before they diverged, but now it is probably only possible one way round.
On a brighter note, all versions of the web server support both platforms equally well. The transactions are the same in both cases.
Apps bought on Google Play can be used on any Android device without paying again. However, each device must have the same Google Account on it. Once a purchase has been made, it may be restored to any other other device. The only proviso is that they must use the same Google or Apple account.
Android purchases may be restored on a second device by tapping the Restore button in the action bar, as shown in the screenshot on the right. The process is more or less identical for iOS devices.
The External Storage on an Android device is an area to which apps can read and write files. The Android client uses it to back up the database, and to store product images. Traditionally it was an SD card, but in most modern devices it is located in internal storage, on the flash ROM.
Database backups are not shown in File Explorer, but they are visible in file manager apps. We recommend File Manager+, which can be installed using the link in the sidebar.
The gallery below shows how to locate the Vanguard folder, using File Manager+. The Vanguard folder, and the images folder inside it, are both created when the Sales app is launched (not when it is installed).
The gallery below shows how to access the internal storage on an Android device, connected over USB.
The product images must all be places in the /Vanguard/images folder.
The file names must mach the names of the products.
The extensions must all be “.jpg”.
Each product image should be roughly square, and no larger than 100 KB.
After the product images have been copied to the device, the thumbnails should be created, using the Create Thumbnails option on the SD Card screen of the Android client.
The Customer Map feature has finally been removed from the Android app.
It was always a vanity project, that was technically ingenious, but hardly ever worked. It was difficult for the user to set up, and it kept getting clobbered by updates from Google, which was anxious to monetise its technologies.
The guidebook and user manual will be updated in due course. At the moment only the menus have been patched, in case anyone is actually using the feature.