Skip to content

Instantly share code, notes, and snippets.

@n9ti
Last active August 29, 2015 14:07
Show Gist options
  • Save n9ti/de68fa057226750a384c to your computer and use it in GitHub Desktop.
Save n9ti/de68fa057226750a384c to your computer and use it in GitHub Desktop.
ionic Android and iOS icon.
#!/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.
console.log("====== icons ======");
var appName = "Sellsuki";
var filestocopy = [
// Android
{
"icons/android/drawable-xhdpi/ic_launcher.png":
"platforms/android/res/drawable/icon.png"
}, {
"icons/android/drawable-hdpi/ic_launcher.png":
"platforms/android/res/drawable-hdpi/icon.png"
}, {
"icons/android/drawable-ldpi/ic_launcher.png":
"platforms/android/res/drawable-ldpi/icon.png"
}, {
"icons/android/drawable-mdpi/ic_launcher.png":
"platforms/android/res/drawable-mdpi/icon.png"
}, {
"icons/android/drawable-xhdpi/ic_launcher.png":
"platforms/android/res/drawable-xhdpi/icon.png"
},
// iOS
{
"icons/ios/AppIcon.appiconset/Icon-40.png":
"platforms/ios/"+appName+"/Resources/icons/icon-40.png"
}, {
"icons/ios/AppIcon.appiconset/Icon-40@2x.png":
"platforms/ios/"+appName+"/Resources/icons/icon-40@2x.png"
}, {
"icons/ios/AppIcon.appiconset/Icon-40@3x.png":
"platforms/ios/"+appName+"/Resources/icons/icon-40@3x.png"
}, {
"icons/ios/AppIcon.appiconset/Icon-60.png":
"platforms/ios/"+appName+"/Resources/icons/icon-60.png"
}, {
"icons/ios/AppIcon.appiconset/Icon-60@2x.png":
"platforms/ios/"+appName+"/Resources/icons/icon-60@2x.png"
}, {
"icons/ios/AppIcon.appiconset/Icon-60@3x.png":
"platforms/ios/"+appName+"/Resources/icons/icon-60@3x.png"
}, {
"icons/ios/AppIcon.appiconset/Icon-76.png":
"platforms/ios/"+appName+"/Resources/icons/icon-76.png"
}, {
"icons/ios/AppIcon.appiconset/Icon-76@2x.png":
"platforms/ios/"+appName+"/Resources/icons/icon-76@2x.png"
}, {
"icons/ios/AppIcon.appiconset/Icon-76@3x.png":
"platforms/ios/"+appName+"/Resources/icons/icon-76@3x.png"
}, {
"icons/ios/AppIcon.appiconset/Icon-Small.png":
"platforms/ios/"+appName+"/Resources/icons/icon-Small.png"
}, {
"icons/ios/AppIcon.appiconset/Icon-Small@2x.png":
"platforms/ios/"+appName+"/Resources/icons/icon-Small@2x.png"
}, {
"icons/ios/AppIcon.appiconset/Icon-Small@3x.png":
"platforms/ios/"+appName+"/Resources/icons/icon-Small@3x.png"
}];
console.log("[icons]");
var fs = require('fs');
var path = require('path');
// no need to configure below
var rootdir = process.argv[2];
console.log(rootdir);
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("[icons] copying "+srcfile+" to "+destfile);
var destdir = path.dirname(destfile);
if (fs.existsSync(srcfile) && fs.existsSync(destdir)) {
fs.createReadStream(srcfile).pipe(
fs.createWriteStream(destfile));
}
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment