Directory structure for cross-platform phonegap project

匿名 (未验证) 提交于 2019-12-03 02:50:02

问题:

What's a good directory structure for a single source repository that holds both Android and iOS versions of a phonegap project? I'm okay using sym-links since I don't expect any development to happen on PCs. (But if there's a clean way to do it without, I'm all ears, since git and symlinks on PCs are a nightmare.) I've tried this:

www/     index.html     js/ *.js     xpjs-ios/ *.js     xpjs-android/ *.js     css/ *.css     html/ *.html  (all other files)  android/         (lots of java and config files) android/assets/www/index.html -> www/index.html                    js -> www/js                    xpjs -> www/xpjs-android                    html -> www/html                    css -> www/css ios/     (xcode config and such) ios/www/index.html -> www/index.html         js -> www/js         xpjs -> www/xpjs-ios         html -> www/html         css -> www/css 

Then I point xcode at the ios/www directory, and eclipse at the android/www directory. For platform-specific javascript, the html files refer to xpjs/phonegap.js and xpjs/my-quirks.js and get either the android or ios versions of those files.

This all seems like it should work, but xcode4 doesn't seem to deal with symlinks. If I open one of the source files in the xcode editor, it reads fine, but when I try to save it it says something like

The document "index.html" could not be saved.  It does not exist. 

and the app when I try to run it fails with

ERROR: Start page 'www/index.html' was not found. 

Surely somebody's figured this out.

回答1:

Its actually quite easy with Git and Submodules. The phonegap wiki referenced above is indeed a bit slim so I actually went ahead and implemented a solution that configures xcode & eclipse project.

See the link on my blog post: Phonegap project structure using git submodules

If you don't want to use Git submodules, there is a Symlink solution as well which doesn't care if you use Git or SVN.

http://www.tricedesigns.com/2012/02/16/linked-source-files-across-phonegap-projects-on-osx/



回答2:

there's a writeup (looks like a first pass) on the phonegap wiki that explains how to use a git submodule. to supplement that entry, i also did a writeup on using the svn:externals property. my only thought on symlinks is that it's something people have to setup as opposed to getting them intrinsically from the source control repository. not really a problem, but it is a logistic to the setup when you switch computers or get additional devs on a project. i'll be taking the svn:externals route until i find something better.



易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!