setToastCapable.js 880 B

123456789101112131415161718192021222324252627282930313233
  1. #!/usr/bin/env node
  2. // This Plugin-Hook sets ToastCapable on true to allow windows-platform
  3. // cordova apps displaing local-notifications
  4. var fs = require('fs'),
  5. rootdir = process.argv[2];
  6. if (!rootdir)
  7. return;
  8. function replace_string_in_file (filename, to_replace, replace_with) {
  9. var data = fs.readFileSync(filename, 'utf8'),
  10. result;
  11. if (data.indexOf(replace_with) > -1)
  12. return;
  13. result = data.replace(new RegExp(to_replace, 'g'), replace_with);
  14. fs.writeFileSync(filename, result, 'utf8');
  15. }
  16. var manifests = [
  17. 'platforms/windows/package.phone.appxmanifest',
  18. 'platforms/windows/package.windows.appxmanifest',
  19. 'platforms/windows/package.windows80.appxmanifest'
  20. ];
  21. for (var i = 0; i < manifests.length; i++) {
  22. replace_string_in_file(manifests[i], '<m3:VisualElements ', '<m3:VisualElements ToastCapable="true" ');
  23. }