Pooka SDK is a cross-platform application software development kit (SDK), an app and game engine that can significantly reduce the cost of cross-platform app / game development and deployment.
Pooka SDK helps developers design their apps or games with a single shared code base to target all major desktop and mobile platforms. The apps or games generated by Pooka SDK is pure native application without resort to Web container, web-to-platform bridge, virtual machine or any extra runtime.
Platform Coverage
Windows Desktop
macOS
iOS
Android
Universal Windows Platform | Main Features
|
There are numbers of options for developers when choosing cross-platform application tools. These development tools can be categorized into few technical approaches. Choosing development tools without truly understanding the difference between each approach may result in going into a wrong direction or completing the application with tremendous over-budget.
The following chart shows overall pros and cons of each approach.
| Native App | Hybrid App | Web App | |
|---|---|---|---|
| App Definition |
|
|
|
| Packaging | App Package File | App Package File | Web pages |
| Distribution | App Store | App Store | Web / Browser |
| Programming Language | Native programming language | Scripting language | Java Script |
| Content Layout Language | Proprietary layout language | HTML5/CSS or proprietary template | HTML5/CSS |
| Learning Curve | Difficult | Moderate | Easy |
| Development / Maintenance Cost | High | Moderate | Low |
| Graphical Performance2 | High | Moderate | Moderate |
| Overall Performance2 | High | Moderate | Moderate |
| Access to Platform Features | Full Access | Full or Limited access. | Very limited access |
| Best Used For | Games, multimedia, real-time communication, or consumer-focused apps where performance, graphics, hardware access and overall user experience are critical | Apps that do not have high performance requirements, but need to access certain device features and platform functions. | Apps that do not have high performance requirements, and do not need any functions beyond web browser. |
When developing native application with Pooka SDK® instead of building them directly on platform API, Pooka SDK® helps in the following parts:
Note
1 Strictly, Java is an interpreted language rather than a native language. However, some modern mobile platforms like Android pre-compile the Java byte-code binary into native machine code, which makes Android application's performance close to a native Android application developed by NDK.
2 The performance difference can be significant if the application is graphics intensive or relies on heavy computing, such as game, video player or image editor. Otherwise, performance difference might not be noticeable, such as stock tracker app or weather forecast app.
When choosing a cross-platform application or game development tool, there are lots of considerations for developers to take, such as:
While there numbers of cross-platform application and game development tools available on the market, there is no "best one" suitable for all kinds of development scenarios. Developers need to carefully find the one best suits their application or game project. The following chart is a quick comparison of some cross-platform application / game development tools (sometimes also called app builder or game engine)3:
| ⇓ Development Tool / Game Engine | Native App or Web App? | Best for What Type of App? | Programming Language | UI Component | Access to Native Platform API | Extra Runtime Dependency | Supported Target Platforms |
|---|---|---|---|---|---|---|---|
| Apache Cordova (formerly PhoneGap) | Hybrid Web app4 | Business apps | JavaScript | Native component in Web container | Through Bridge (Cordova plugin APIs) | WebKit enabled Web Container | iOS, Android |
| Appcelerator | Hybrid Web app4 | Business apps | JavaScript | Native component in Web container | Through bridge (Appcelerator Hyperloop) | WebKit enabled Web Container | iOS, Android, Windows Phone |
| FaceBook React Native | Native app | 2D mobile apps | JavaScript (with JSX Extension) | Native component | Through bridge (React Native Modules) | No | All major mobile platforms |
| Xamarin | Native app | Business apps 2D games | C# | Native component in Web container | Through bridge (Xamarin DependencyService) | Mono Runtime | All major desktop and mobile platforms |
| Cocos2d | Native app | 2D games | C++ (Cocos2d-x) C# (Cocos2d-XNA) JavaScript (Cocos2d-JS) Objective-C (Cocos2d-Swift) Python (Cocos2d-Python) | Sprite based | Direct access to native API | No | All major mobile platforms |
| Unity | Native app | 3D games | C# (Boo and JavaScript deprecated) | Unity UI component | Through bridge (Unity native plugins) | Mono Runtime | All major desktop and mobile platforms |
| Google Flutter | Native app | Business app | Dart | Native component | Through bridge (Flutter platform channels) | Dart VM (with AOT and JIT options) | iOS, Android |
| Pooka SDK | Native app | Business app 2D & light weight 3D games | C++ | Sprite based or Pooka light-weight component | Direct access to native API | No | All major desktop and mobile platforms |
Note
3 The comparison is based on information collected from each development tools' website or other related websites, there is no guarantee that the information listed here is updated and is 100% precise. For the latest details, visit their official website.
4 Hybrid Web apps are applications programmed by Web technologies (HTML5/CSS/JavaScript) and packaged as native application but the actual application content is contained inside a WebKit enabled WebView component. Hybrid Web apps are simply native applications with an embedded web browser to host the application content.
Besides being an app engine for developing cross-platform business applications, Pooka SDK is engineered with first-class support for game development, this can be proven by numbers of award-winning mobile games powered by Pooka SDK, such as OmniGSoft's City Stage (3D car racing) and Super-G Stunt (flight simulation).
To be a game engine, an application framework must have numbers of features needed for game development situation to make the production cycle efficient. All of these necessary functions are supported by Pooka SDK, include: