Skip to content

Instantly share code, notes, and snippets.

@felquis
Created May 28, 2015 14:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save felquis/45cc68892b9fb1a01459 to your computer and use it in GitHub Desktop.
Save felquis/45cc68892b9fb1a01459 to your computer and use it in GitHub Desktop.
shell: {
facebookDownload: {
command: [
'echo "## Downloading Facebook Plugin"',
'git clone git@github.com:Wizcorp/phonegap-facebook-plugin.git .tmp-plugin/phonegap-facebook-plugin/',
'cd .tmp-plugin/phonegap-facebook-plugin/',
'echo "## Checkout tag v0.11.0"',
'git checkout v0.11.0 -q',
'cd ./../../'
].join('&&')
},
gruntBuild: {
command: 'grunt build'
},
facebookSetup: {
command: [
'echo "## Install Facebook Plugin"',
'cordova -d plugin add ./.tmp-plugin/phonegap-facebook-plugin --variable APP_ID="{seu app ID}" --variable APP_NAME="{Seu nome de app como ele deve aparecer para os usuários}"',
'grunt facebookAndroidManifest' // Essa tarefa apenas escreve a versão correta do target para o Facebook SDK
].join('&&')
},
installCordovaPlugins: {
command: [
'echo "## Installing plugins"',
'cordova plugin add com.ionic.keyboard@1.0.4',
'cordova plugin add org.apache.cordova.camera@0.3.4',
'cordova plugin add org.apache.cordova.file@1.3.2',
'cordova plugin add org.apache.cordova.file-transfer@0.5.0',
'cordova plugin add org.apache.cordova.inappbrowser@0.5.4',
'cordova plugin add org.apache.cordova.statusbar@0.1.9',
'cordova plugin add com.danielcwilson.plugins.googleanalytics@0.6.1',
'cordova plugin add nl.x-services.plugins.toast@2.0.4',
'cordova plugin add org.apache.cordova.splashscreen@1.0.0'
].join('&&')
},
init: {
command: [
'echo "## Removing all platforms"',
'rm -rf platforms/',
'rm -rf plugins/',
'rm -rf ./.tmp-plugin',
'echo "## Check environment"',
'cordova platform add ios',
'cordova platform add android',
'grunt shell:installCordovaPlugins', // os plugins
'grunt shell:facebookDownload', // Depois de baixado pode comentar essa linha para o build ser mais rápido
'grunt shell:facebookSetup',
'echo "#### Tudo pronto! Coloque seu Android via USB e rode \'cordova run android --device\'"',
].join('&&')
},
test: {
command: ['cd app/', 'ls -a'].join('&&')
}
}
/*
task facebookAndroidManifest
*/
// deps
var et = require('elementtree'); // npm install --save-dev elementtree
var fs = require('fs'); // NodeJS Native
grunt.registerTask('facebookAndroidManifest', function () {
var manifestPath = './platforms/android/com.phonegap.plugins.facebookconnect/app-FacebookLib/AndroidManifest.xml';
fs.readFile(manifestPath, 'utf8', function (err, data) {
if (err) {
return console.log(err);
}
var androidManifest = et.parse(data);
androidManifest.findall('uses-sdk')[0].set('android:minSdkVersion', '14');
androidManifest.findall('uses-sdk')[0].set('android:targetSdkVersion', '19');
androidManifest = androidManifest.write({indent: 4}, 'utf-8');
console.log(androidManifest);
fs.writeFileSync(manifestPath, androidManifest);
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment