Git Product home page Git Product logo

crossmob / crossmobile Goto Github PK

View Code? Open in Web Editor NEW
51.0 5.0 13.0 21.89 MB

Create native iOS, Android, Windows Phone and Desktop applications in Java. Write it once, and produce sophisticated multiplatform applications.

License: GNU Lesser General Public License v3.0

Java 50.51% C++ 0.02% C 0.01% Objective-C 49.38% Shell 0.08%
xmlvm android java ios ios-app ios-sdk mobile mobile-app mobile-development cross-platform

crossmobile's Introduction

Build Status GitHub

CrossMobile

General information

CrossMobile is a framework that facilitates the development of mobile applications.

The goal of CrossMobile is to be able to write native mobile applications, using Java as the main language and fully recycle the written code. Using a rich iOS API it is possible to write once not only GUI applications, but applications that cover most of mobile aspects, like push notifications, geolocation, maps, camera etc. There is no need to write specific code for Android, just follow the iOS API and all will be handled by this framework, with zero manual target fine tuning.

Feature highlights

CrossMobile is not a hybrid solution. It doesn't run code under an invisible web view. What it does is:

  • iOS : transpile code from JVM to Objective-C, using an up-to-date version of the XMLVM tool.
  • Android : have a thin compatibility library for the iOS API and pass through all system calls to Android subsystem, removing the Android implementation details from the developer.
  • Desktop : with technologies similar to the Android backend, reuse as much Java code as possible, provide the same experience to the Desktop as a stand-alone Java (JAR based) application.

CrossMobile is a mature project, it is developed for more than 5 years up to now and proved its stability through various commercially published applications.

How to get it

Please go to the download page to download the latest release.

If you want to compile it from source yourself, make sure to have a look at the COMPILE.md file first with info how to get the source code and how to compile it.

History

A human-friendly Release log could be found here, or a detailed ChangeLog here.

Requirements

macOS Windows Linux
Required macOS 10.12.6
Xcode 9.2
Android command line tools 3.5
Windows 7
Android command line tools 3.5
x64 distribution
Android command line tools 3.5
Recommended macOS 10.14+
Xcode 11.+
Android Studio 3.5+
Windows 10 64 bit
Android Studio 3.5+
x64 distribution
Android Studio 3.5+

More information

For more information about CrossMobile, please visit its dedicated site crossmobile.org.

crossmobile's People

Contributors

acmlira avatar farshid-monhaseri avatar jim-pit avatar teras avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

crossmobile's Issues

Developing web app

Can I use this tool to develop web app in addition to mobile/desktop app so that I can run the same application in a web browser also? If yes then how?

UIBUTTON

Hi it's possible to create a rounded button ?

Request information

Hello, i have a question about creation a plugin template.
when i create a plugin template how can i use it in in my application
because i would like create a specific plugin and i would like use it only in android and i see in plugin template i can create code for android , ios , desktop
but i don't have any idea how can i use plugin in my application

Thank u

CrossMobile Android Design and Drag drop add widgets

I am using CrossMobile, it has some shortcomings for Android, for example, there is no checkbox, there is no Android basic elements such as ListView, there is no application design screen for Android, I want it to be like this, I will drag the button, add it to the home screen, and when I double-click the button, I will enter the click event of the button and write the code.

It would be great if these features existed

Local notification

Hello how can i create a local notification

this is my code

UNUserNotificationCenter center = UNUserNotificationCenter.currentNotificationCenter();
UNMutableNotificationContent conten = new UNMutableNotificationContent();
conten.setTitle("Jurassic Park");
conten.setSubtitle("Lunch");
conten.setBody("Its lunch time at the park, please join us for a dinosaur feeding");
conten.setSound(UNNotificationSound.defaultSound());
UNTimeIntervalNotificationTrigger trigg = UNTimeIntervalNotificationTrigger.triggerWithTimeInterval(2.0,false);
UNNotificationRequest req = UNNotificationRequest.requestWithIdentifier("ContentIdentifier",conten,trigg);

center.addNotificationRequest(req,nsError -> {

});

UITabBarController In Desktop&Android

when i use UITabBarController, i face with "crossmobile.ios.uikit.UIResponder is abstract; cannot be instantiated" error in desktop, android running , but there is no any problem in ios running

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.