{"id":159,"date":"2015-12-22T20:23:02","date_gmt":"2015-12-22T20:23:02","guid":{"rendered":"http:\/\/fluentreports.com\/blog\/?p=159"},"modified":"2019-04-03T16:54:28","modified_gmt":"2019-04-03T16:54:28","slug":"introducing-nativescript-protect","status":"publish","type":"post","link":"https:\/\/fluentreports.com\/blog\/?p=159","title":{"rendered":"Introducing NativeScript-Protect"},"content":{"rendered":"<figure id=\"attachment_163\" aria-describedby=\"caption-attachment-163\" style=\"width: 300px\" class=\"wp-caption alignright\"><a href=\"http:\/\/fluentreports.com\/blog\/wp-content\/uploads\/2015\/12\/13334048894_6e8b421c4e_o.jpg\" rel=\"attachment wp-att-163\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-163 size-medium\" src=\"http:\/\/fluentreports.com\/blog\/wp-content\/uploads\/2015\/12\/13334048894_6e8b421c4e_o-300x200.jpg\" alt=\"(c) 2014, Yuri Samoilov\" width=\"300\" height=\"200\" srcset=\"https:\/\/fluentreports.com\/blog\/wp-content\/uploads\/2015\/12\/13334048894_6e8b421c4e_o-300x200.jpg 300w, https:\/\/fluentreports.com\/blog\/wp-content\/uploads\/2015\/12\/13334048894_6e8b421c4e_o-768x512.jpg 768w, https:\/\/fluentreports.com\/blog\/wp-content\/uploads\/2015\/12\/13334048894_6e8b421c4e_o-1024x683.jpg 1024w, https:\/\/fluentreports.com\/blog\/wp-content\/uploads\/2015\/12\/13334048894_6e8b421c4e_o-624x416.jpg 624w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-163\" class=\"wp-caption-text\">(c) 2014, Yuri Samoilov<\/figcaption><\/figure>\n<p><strong>UPDATE: Works on iOS and Android; see <a href=\"https:\/\/AppProtection.net\">https:\/\/AppProtection.net<\/a>.<\/strong><\/p>\n<p>Have you spent months working on the perfect application?\u00a0 Are you now worried someone will just copy your source code right from your NativeScript application?\u00a0 (This is not a unique issue to NativeScript; ReactNative, Titanium*,Cordova\/PhoneGap and any other platforms that are not compiling Java code have this exact same issue. )<\/p>\n<p>Well, I have a solution for you.\u00a0 After a lot of hard work; I am proud to introduce my first commercial component into the NativeScript eco-system;\u00a0 <a href=\"http:\/\/nativescript.tools\" target=\"_blank\" rel=\"noopener noreferrer\">NativeScript-Protect<\/a>.\u00a0\u00a0 The <a href=\"http:\/\/nativescript.tools\" target=\"_blank\" rel=\"noopener noreferrer\">NativeScript-Protect<\/a> plugin is a (very) simple\u00a0 install and then it will automatically encrypt and\/or minimize your source code while you are building your release version of the project.<\/p>\n<p>It automatically ties itself into the NativeScript (tns) command so that you do not have to do anything. When you run anything that does a build; it will automatically encrypt and\/or minimize your build copies of the code.<\/p>\n<p>This does NOT touch your original source code; only the BUILD copies that the NativeScript (tns) command copies into the build system.\u00a0 So it makes itself a seamless part of your standard build process that you can just totally forget it even exists.<\/p>\n<p>The initial release is only for Android; but I expect to have the iOS runtimes done early next year.<\/p>\n<p>If you would like to see it in action; I have a 4 minute <a href=\"https:\/\/youtu.be\/s9eG7v5Ajak\" target=\"_blank\" rel=\"noopener noreferrer\">video <\/a>showing it from start to end.<\/p>\n<p><iframe loading=\"lazy\" src=\"https:\/\/www.youtube.com\/embed\/s9eG7v5Ajak\" width=\"480\" height=\"270\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n<div class=\"ytp-html5-clipboard\"><\/div>\n<div class=\"ytp-html5-clipboard\">In addition, two demo APK's compiled as a debug app with everything encrypted or just the main app files encrypted, can be downloaded for you to check out and kick the tires.<\/div>\n<div class=\"ytp-html5-clipboard\">(<a href=\"http:\/\/nativescript.rocks\/protect\/mtprotect-all-debug.apk\">Everything Encrypted<\/a>) or (<a href=\"http:\/\/nativescript.rocks\/protect\/mtprotect-debug.apk\">App Files Encrypted<\/a>)<\/div>\n<div class=\"ytp-html5-clipboard\"><\/div>\n<div class=\"ytp-html5-clipboard\">If you have any questions; please feel free to comment here, or contact me via the contact button on the <a href=\"http:\/\/nativescript.tools\" target=\"_blank\" rel=\"noopener noreferrer\">nativescript.tools<\/a> website.<\/div>\n<div class=\"ytp-html5-clipboard\"><\/div>\n<div class=\"ytp-html5-clipboard\">* - Titanium has a encryption step; however it is rather simple to decrypt system and so in my book this is actually worse than no encryption since it gives a very false sense of security.<\/div>\n<div><\/div>\n<div><strong>UPDATE: The current version turned into <a href=\"https:\/\/appProtection.net\">AppProtection.net<\/a>\u00a0-- So it fully supports Android &amp; iOS.<\/strong><\/div>\n","protected":false},"excerpt":{"rendered":"<p>UPDATE: Works on iOS and Android; see https:\/\/AppProtection.net. Have you spent months working on the perfect application?\u00a0 Are you now worried someone will just copy your source code right from your NativeScript application?\u00a0 (This is not a unique issue to NativeScript; ReactNative, Titanium*,Cordova\/PhoneGap and any other platforms that are not compiling Java code have this&hellip; <a class=\"more-link\" href=\"https:\/\/fluentreports.com\/blog\/?p=159\">Continue reading <span class=\"screen-reader-text\">Introducing NativeScript-Protect<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","footnotes":""},"categories":[15,5],"tags":[17,31,22,16,30],"class_list":["post-159","post","type-post","status-publish","format-standard","hentry","category-nativescript","category-security","tag-android","tag-encryption","tag-javascript","tag-nativescript","tag-nativescript-protect","entry"],"_links":{"self":[{"href":"https:\/\/fluentreports.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/159","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fluentreports.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fluentreports.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fluentreports.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fluentreports.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=159"}],"version-history":[{"count":7,"href":"https:\/\/fluentreports.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/159\/revisions"}],"predecessor-version":[{"id":719,"href":"https:\/\/fluentreports.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/159\/revisions\/719"}],"wp:attachment":[{"href":"https:\/\/fluentreports.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=159"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fluentreports.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=159"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fluentreports.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=159"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}