Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Local builds using Apache Cordova #10

Open
emmerich opened this issue May 10, 2013 · 0 comments
Open

Local builds using Apache Cordova #10

emmerich opened this issue May 10, 2013 · 0 comments

Comments

@emmerich
Copy link

It would be useful to be able to build the project locally. This would mean you wouldn't have to hit PhoneGap's build server to produce native applications from your source.

This involves the following steps:

  • Creating a native project using Cordova. Each of the platform frameworks provides an ability to create a template project. This step would involve generating that template project.
    • For first iteration, this can be done through the Maven ant plugin rather than having to write a custom plugin ourselves. The Cordova zip file should be locally installed by the user to their local Maven repository. The plugin would then grab that zip, explode it into the target directory, call the appropriate build files, and then clean up the exploded zip. By the end of this step there should be a template native project in the target directory. This step may have a dependency on the SDKs of the chosen platform. Eventually this could be added as part of a plugin.
  • Merging in a PhoneGap project to the generated native project. This would involve copying of HTML5 assets to the appropriate location in the native project, as well as making sure the PhoneGap config.xml file is parsed and merged in properly. (For example, in Android, icons that are defined in the config XML need to be copied to the appropriate drawable folder).
    • This would involve parsing the PhoneGap config file and making sure that anything it defines is properly mapped into the native project. One such example is the definition of icons in Android. They need to be copied to the correct drawable folder.
  • Building/deploying of the now-merged native project. This would involve calling the appropriate SDK tools underneath (be it android or xcode's build tooling).
    • For Android, we could just make calls to the Maven Android plugin rather than having to call the binary ourselves.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant