This is the second part of my online courses from 2017 that are now available for free. In this course we go beyond the developer guide and the online docs to explain how to work with crucial Codename One tools required for building real world apps. We explain everything from device portability to native interfaces (access to native device features) and much more!
As part of this course we cover the process of building a simple restaurant ordering system and we cover several complex Codename One API's.
The original version of the course included a section created by Chidiebere Okwudire the creator of parse4cn1 which is removed here. I chose to omit it since the status of the Parse project is unclear and I'm not sure about IP ownership for that section.
Working with CSS
The CSS in this section should work well for new versions too. In Maven CSS is the default and the whole "setting up" portion is no longer applicable.
The source code for this part is in this github repository.
Working with Custom Web Services
Introduction to Spring Boot
The source code used in this part is available in this github repository.
Connecting to a Web Service
The source code used in this part is available in this github repository.
Extracting a UI Design
Introduction
The source code used in this part is available in this github repository.
Cutting Images in Photoshop
CSS
BaseForm
MainMenuForm
CheckoutForm
UI Design From Scratch
Introduction
The New Forms
Fixing the Checkout Experience
CSS Changes
Code Changes and Summary
Architecture
Overview and Basic Model
Integration and Summary
Native Interfaces - Billing
The Native Interface Callback
The version of the code matching the changes in this section is here.
Dependencies - Gradle and CocoaPods
The Native Code
Native Interfaces - Camera
Introduction and Generic Code
Implementing the Native Camera on Android
Camera iOS Port Basics
ARC and View on iOS
Capture and Callbacks in iOS
Putting it All Together
The final repositories for the server and the mobile app are here:
Communicating with the Server
Address and Validation
Categories and Search
Security
Security Basics and Certificate Pinning
Storage Encryption and Misc Security Features
Maps
Introduction and Installation
Hello World and Devices
Markers, Lightweight Overlays and Map Layout
Building from the Open Source Project Offline Without Build Servers or Plugin
Introduction and Setup
Running the Kitchen Sink in the Simulator
Building a Desktop Version of the Kitchen Sink
Building an Android Native Version of the Kitchen Sink
Build an iOS Native Version of the Kitchen Sink
Performance and Memory Tuning
What is Performance? Breaking Down the Problem
EDT, Threading, Caching and Soft References
The Different Image Types and Their Impact on Performance/RAM
List, Network, Parsing and Resource File Size
Profiling on the Desktop, Using the Performance Monitor Tool
Profiling on Devices iOS and Android
Case Study: Performance Problems in the Kitchen Sink