从我一直在阅读的内容来看,从不应该将Platforms文件夹添加到版本控制中。但是... Condova网站上的启动画面/图标文档指出要将图像放在res文件夹中...
那么我该如何处理呢?我想使用合并文件夹,但这仅用于www替换。
任何想法都很棒。(如果我添加platform文件夹,即使我尝试gitignore在编译时创建的文件,也会导致下一个问题。
我能够弄清楚目前看来是最佳实践。我也想为其他人记录下来。
我为所需的资源创建了一个文件夹,然后编写了一个自定义钩子来复制文件。这是我从http://devgirl.org/2013/11/12/three-hooks-your-cordovaphonegap-project-needs/中使用的一个很好的示例:
#!/usr/bin/env node
// This hook copies various resource files
// from our version control system directories
// into the appropriate platform specific location
//
// configure all the files to copy.
// Key of object is the source file,
// value is the destination location.
// It's fine to put all platforms' icons
// and splash screen files here, even if
// we don't build for all platforms
// on each developer's box.
var filestocopy = [{
"config/android/res/drawable/icon.png":
"platforms/android/res/drawable/icon.png"
}, {
"config/android/res/drawable-hdpi/icon.png":
"platforms/android/res/drawable-hdpi/icon.png"
}, {
"config/android/res/drawable-ldpi/icon.png":
"platforms/android/res/drawable-ldpi/icon.png"
}, {
"config/android/res/drawable-mdpi/icon.png":
"platforms/android/res/drawable-mdpi/icon.png"
}, {
"config/android/res/drawable-xhdpi/icon.png":
"platforms/android/res/drawable-xhdpi/icon.png"
}, {
"config/android/res/drawable/splash.png":
"platforms/android/res/drawable/splash.png"
}, {
"config/android/res/drawable-hdpi/splash.png":
"platforms/android/res/drawable-hdpi/splash.png"
}, {
"config/android/res/drawable-ldpi/splash.png":
"platforms/android/res/drawable-ldpi/splash.png"
}, {
"config/android/res/drawable-mdpi/splash.png":
"platforms/android/res/drawable-mdpi/splash.png"
}, {
"config/android/res/drawable-xhdpi/splash.png":
"platforms/android/res/drawable-xhdpi/splash.png"
}, {
"config/ios/Resources/icons/icon-72.png":
"platforms/ios/YourAppName/Resources/icons/icon-72.png"
}, {
"config/ios/Resources/icons/icon.png":
"platforms/ios/YourAppName/Resources/icons/icon.png"
}, {
"config/ios/Resources/icons/[email protected]":
"platforms/ios/YourAppName/Resources/icons/[email protected]"
}, {
"config/ios/Resources/icons/[email protected]":
"platforms/ios/YourAppName/Resources/icons/[email protected]"
}, {
"config/ios/Resources/splash/Default@2x~iphone.png":
"platforms/ios/YourAppName/Resources/splash/Default@2x~iphone.png"
}, {
"config/ios/Resources/splash/Default-568h@2x~iphone.png":
"platforms/ios/YourAppName/Resources/splash/Default-568h@2x~iphone.png"
}, {
"config/ios/Resources/splash/Default~iphone.png":
"platforms/ios/YourAppName/Resources/splash/Default~iphone.png"
}, {
"config/ios/Resources/splash/Default-Portrait~ipad.png":
"platforms/ios/YourAppName/Resources/splash/Default-Portrait~ipad.png"
}, {
"config/ios/Resources/splash/Default-Portrait@2x~ipad.png":
"platforms/ios/YourAppName/Resources/splash/Default-Portrait@2x~ipad.png
}, ];
var fs = require('fs');
var path = require('path');
// no need to configure below
var rootdir = process.argv[2];
filestocopy.forEach(function(obj) {
Object.keys(obj).forEach(function(key) {
var val = obj[key];
var srcfile = path.join(rootdir, key);
var destfile = path.join(rootdir, val);
//console.log("copying "+srcfile+" to "+destfile);
var destdir = path.dirname(destfile);
if (fs.existsSync(srcfile) && fs.existsSync(destdir)) {
fs.createReadStream(srcfile).pipe(
fs.createWriteStream(destfile));
}
});
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句