CamScanner license:- Remove ads in Camscanner

CamScanner license:- Remove ads in Camscanner

CamScanner license apk Download :- Removed All ads in Camscanner App VisheshGrewal.blogspot.com

What is CamScanner?

CamScanner is an app who helps you scan, store, sync and collaborate on various contents across smartphones, iPads, tablets and computers.

Why CamScanner License is Required?

 CamScanner license would allow you to remove all ads within Camscanner app.

Features of CamScanner App:-

  • Quickly Digitize Document:- Just use your phone camera to scan and digitize all kinds of paper documents: receipts, notes, invoices, whiteboard discussions, business cards, certificates, etc.
  • Optimize Scan Quality:- Smart cropping and auto enhancing ensures the texts and graphics in scanned documents are clear and sharp with premium colors and resolutions.
  • Extract Texts from Image:- OCR (optical character recognition) feature recognizes texts in document images and extract them from images for later searching, editing or sharing. (Premium only)
  • Share PDF/JPEG shareFiles:-  Easily documents in PDF or JPEG format with friends via various ways: post on social media, send attachment or document download link through email.
  • AirPrint & Fax Documents:-  Instantly print out any documents in CamScanner with nearby printer via AirPrint; directly select document and fax to over 30 countries from the app.
  • Advanced Document Editing:-  Make annotations on documents with a full set of editing tools. Also adding customized watermarks are made available to mark your own documents.
  • Quick Search:- When you have plenty of documents, you can use Tags to categorize and easily find them. In addition, OCR for Search helps you find texts inside image and notes. Just enter one keyword, you can quickly find the document you want. (Registrants only)
  • Secure Important Documents:-
    If you want to protect confidential contents, you can set passcode for viewing important documents; also, while sending document download link, you can set password to protect others from seeing it.
  • Sync across Platforms:-
    Sign up to sync documents on the go. Just sign in to any smartphone, tablet or computer (visit www.camscanner.com ) and you can view, edit and share any document. (Registrants only)

    Features of CamScanner License Apk:-

    1. Support high-quality scans.
    2. PDF files are no longer created with “scanned with Camscanner” watermark.
    3. Upload to Evernote/SkyDrive feature will not expire.
    4. No ads.
    5. However, Camscanner License is NOT equivalent to Camscanner Premium.
    Source:- Google Play Store
    Click Here To Downlod CamScanner License Apk in Free

    Note:- You can buy this app from Play Store on only Rs.130(India Currency).
    Add a Cookie Notice for Privacy Policy Agreement

    Add a Cookie Notice for Privacy Policy Agreement

    How to add a Cookie Notice for Privacy Policy Agreement [Blogger/Website]

    Why Cookies notification Required for blogger/website.

    European Union (EU) laws require you to give EU visitors information about cookies used on your blog. In many cases, these laws also require you to obtain consent.

    As a courtesy, Google added the following notice on your blog to help meet these regulations:

    "This site uses cookies from Google to deliver its services and analyze traffic. Your IP address and user-agent are shared with Google along with performance and security metrics to ensure quality of service, generate usage statistics, and to detect and address abuse."

    The notice lets visitors know about Google's use of certain Blogger and Google cookies on your blog, including Google Analytics and AdSense cookies.

    Cookies and Cookie Types:-

    Cookies can be classified into different types based on different characteristics. 
    • Based on their purpose, there are basically two types of cookies, necessary and non-necessary. The necessary cookies are the ones that are essential for the functioning of a website, and the non-necessary cookies are the ones that are added additionally by the website and are not really important for the functioning of the website.    
    • Based on their origin, cookies can be divided into first-party and third-party cookies. First-party cookies are set by the website itself that the user is currently visiting, say, check whether the user is logged in or not. Whereas third-party cookies are put in by other websites that track the user for targeting relevant advertisements.
    • Based on their duration, cookies can be divided into two, persistent and session cookies. Session cookies are set when the user starts a session and are temporary cookies. They expire once the browser is closed and the session ends. Persistent cookies, on the other hand, stay on the user’s browser for a longer period and only die when they reach their expiration period.

    Adding a Cookie Banner Agreement:-

    Blogger is a popular platform/website to create your blog in free. To add a cookie banner that is GDPR compliant on your Blogger or Blogspot website, you can use this Tutorial.

    Steps To Add Cookie Notice:-

    1. Go to  Blogger.
    2. Now Go to Theme option.
    3. Click on Edit HTML.
    4. Now Paste this CSS code after tag.

      
      <style> .cc-window{opacity:1;transition:opacity 1s ease}
      .cc-window.cc-invisible{opacity:0}.cc-animate.cc-revoke{transition:transform 1s ease}
      .cc-animate.cc-revoke.cc-top{transform:translateY(-2em)}
      .cc-animate.cc-revoke.cc-bottom{transform:translateY(2em)}
      .cc-animate.cc-revoke.cc-active.cc-bottom,.cc-animate.cc-revoke.cc-active.cc-top,.cc-revoke:hover{transform:translateY(0)}.cc-grower{max-height:0;overflow:hidden;transition:max-height 1s}
      .cc-link,.cc-revoke:hover{text-decoration:underline}
      .cc-revoke,.cc-window{position:fixed;overflow:hidden;box-sizing:border-box;font-family:Helvetica,Calibri,Arial,sans-serif;font-size:16px;line-height:1.5em;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;z-index:9999}
      .cc-window.cc-static{position:static}
      .cc-window.cc-floating{padding:2em;max-width:24em;-ms-flex-direction:column;flex-direction:column}.cc-window.cc-banner{padding:1em 1.8em;width:100%;-ms-flex-direction:row;flex-direction:row}.cc-revoke{padding:.5em}
      .cc-header{font-size:18px;font-weight:700}.cc-btn,.cc-close,.cc-link,.cc-revoke{cursor:pointer}.cc-link{opacity:.8;display:inline-block;padding:.2em}.cc-link:hover{opacity:1}
      .cc-link:active,.cc-link:visited{color:initial}.cc-btn{display:block;padding:.4em .8em;font-size:.9em;font-weight:700;border-width:2px;border-style:solid;text-align:center;white-space:nowrap}
      .cc-banner .cc-btn:last-child{min-width:140px}.cc-highlight .cc-btn:first-child{background-color:transparent;border-color:transparent}.cc-highlight .cc-btn:first-child:focus,.cc-highlight .cc-btn:first-child:hover{background-color:transparent;text-decoration:underline}
      .cc-close{display:block;position:absolute;top:.5em;right:.5em;font-size:1.6em;opacity:.9;line-height:.75}.cc-close:focus,.cc-close:hover{opacity:1}.cc-revoke.cc-top{top:0;left:3em;border-bottom-left-radius:.5em;border-bottom-right-radius:.5em}.cc-revoke.cc-bottom{bottom:0;left:3em;border-top-left-radius:.5em;border-top-right-radius:.5em}.cc-revoke.cc-left{left:3em;right:unset}
      .cc-revoke.cc-right{right:3em;left:unset}
      .cc-top{top:1em}.cc-left{left:1em}.cc-right{right:1em}
      .cc-bottom{bottom:1em}.cc-floating>.cc-link{margin-bottom:1em}.cc-floating .cc-message{display:block;margin-bottom:1em}.cc-window.cc-floating .cc-compliance{-ms-flex:1;flex:1}
      .cc-window.cc-banner{-ms-flex-align:center;align-items:center}.cc-banner.cc-top{left:0;right:0;top:0}.cc-banner.cc-bottom{left:0;right:0;bottom:0}.cc-banner .cc-message{-ms-flex:1;flex:1}
      .cc-compliance{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:justify;align-content:space-between}.cc-compliance>.cc-btn{-ms-flex:1;flex:1}
      .cc-btn+.cc-btn{margin-left:.5em}@media print{.cc-revoke,.cc-window{display:none}}@media screen and (max-width:900px){.cc-btn{white-space:normal}}@media screen and (max-width:414px) and (orientation:portrait),screen and (max-width:736px) and (orientation:landscape){.cc-window.cc-top{top:0}.cc-window.cc-bottom{bottom:0}
      .cc-window.cc-banner,.cc-window.cc-left,.cc-window.cc-right{left:0;right:0}
      .cc-window.cc-banner{-ms-flex-direction:column;flex-direction:column}.cc-window.cc-banner .cc-compliance{-ms-flex:1;flex:1}.cc-window.cc-floating{max-width:none}.cc-window .cc-message{margin-bottom:1em}
      .cc-window.cc-banner{-ms-flex-align:unset;align-items:unset}}.cc-floating.cc-theme-classic{padding:1.2em;border-radius:5px}.cc-floating.cc-type-info.cc-theme-classic .cc-compliance{text-align:center;display:inline;-ms-flex:none;flex:none}.cc-theme-classic .cc-btn{border-radius:5px}.cc-theme-classic .cc-btn:last-child{min-width:140px}.cc-floating.cc-type-info.cc-theme-classic .cc-btn{display:inline-block}.cc-theme-edgeless.cc-window{padding:0}
      .cc-floating.cc-theme-edgeless .cc-message{margin:2em 2em 1.5em}.cc-banner.cc-theme-edgeless .cc-btn{margin:0;padding:.8em 1.8em;height:100%}.cc-banner.cc-theme-edgeless .cc-message{margin-left:1em}
      .cc-floating.cc-theme-edgeless .cc-btn+.cc-btn{margin-left:0} #cookieChoiceInfo {display:none} .cc_container {box-shadow: none; border: 1px soild #ddd; border-radius: 0;} .cc_container .cc_btn:hover, .cc_container .cc_btn:active {background: #999; color: #fff;}
       .cc_container .cc_btn, .cc_container .cc_btn:visited {background: #000 !important; color: #fff !important; border-radius: 2px !important;} 
      </style> 
      


  •  Paste this JavaScript code after this CSS code.


  • 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.6/cookieconsent.min.js">
    </script>
    

    Paste this Javascript code after </body>.

    
    <script>
        // EU Law Cookies
    
    window.addEventListener("load", function()
    { window.cookieconsent.initialise
    ({ "palette": { "popup": { "background": "#eb6c44", "text": "#ffffff" }, "button": { "background": "#f5d948", "text": "#fff" } }, "position": "bottom-center", "content": 
    { "message": "This site uses cookies from Google to deliver its services, to personalise ads and to analyse traffic. By using this site, you agree to its use of cookies.", "dismiss": "OK", "href": "https://visheshgrewal.blogspot.com/p/privacy-policy.html", } })});
    
      </script>
    
    Create JavaScript Obfuscator Tool [PHP]

    Create JavaScript Obfuscator Tool [PHP]

    Create Your Own JavaScript Obfuscator Tool using PHP visheshgrewal.blogspot.com


    JavaScript Obfuscator is a powerful free obfuscator for JavaScript, containing a variety of features which provide protection for your source code.


    What is Javascript Obfuscator?

    To transforms your original JavaScript source code into a new representation that's harder to understand, copy, re-use and modify without authorization. The obfuscated result will have the exact functionality of the original code.

    Why Obfuscation?

    • Code size will be reduced.
    • Hide the business logic and your code from others.
    • Reverse engineering is highly difficult.
    • In JavaScript, download time will be reduced.
    If you are developing enterprise application, Then I recommend you can use a product like Jscrambler for obfuscating your code. Reverse engineering of obfuscated code is really difficult to Decode.
     Example of Obfuscating of JavaScript Code.
    Original JavaScript code:-
    function hello(name) {
        console.log('Hello, ' + name);
    }
    hello('New user');

    After obfuscation:-
    
    eval(function(p,a,c,k,e,d)
    {while(c--){if(k[c])
    {p=p.replace(new RegExp('\\b'+c+'\\b','g'),k[c])}}
    return p}('7 0(1){6.5(\'4, \'+1)}0(\'3 2\');',8,8,
    'hello|name|user|New|Hello|log|console|function'.split('|')))
    

    How To make your Own JavaScript Obfuscator by Using PHP?
    To create your own JavaScript Obfuscator, You have an hosting account with Supported PHP version 5.4<.
    1.  Create a file with name index.php
    • Click Here to Get Code for Index.php file from Github.
    2. Create 2nd file with name  HunterObfuscator.php

    
    <?php
    class HunterObfuscator
    {
        private $code;
        private $mask;
        private $interval;
        private $option = 0;
        private $expireTime = 0;
        private $domainNames = array();
    
        function __construct($Code, $html = false)
        {
            if ($html) {
                $Code = $this->cleanHtml($Code);
    $this->code = $this->html2Js($Code);
    } else {
    $Code = $this->cleanJS($Code);
    $this->code = $Code;
    }
    
    $this->mask = $this->getMask();
    $this->interval = rand(1, 50);
    $this->option = rand(2, 8);
    }
    
    private function getMask()
    {
    $charset = str_shuffle('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');
    return substr($charset, 0, 9);
    }
    
    private function hashIt($s)
    {
    for ($i = 0; $i < strlen($this->mask); ++$i)
    $s = str_replace("$i", $this->mask[$i], $s);
    return $s;
    }
    
    private function prepare()
    {
    if (count($this->domainNames) > 0) {
    $code = "if(window.location.hostname==='" . $this->domainNames[0] . "' ";
    for ($i = 1; $i < count($this->domainNames); $i++)
    $code .= "|| window.location.hostname==='" . $this->domainNames[$i] . "' ";
    $this->code = $code . "){" . $this->code . "}";
    }
    if ($this->expireTime > 0)
    $this->code = 'if((Math.round(+new Date()/1000)) < ' . $this->expireTime . '){' . $this->code . '}';
    }
    
    private function encodeIt()
    {
    $this->prepare();
    $str = "";
    for ($i = 0; $i < strlen($this->code); ++$i)
    $str .= $this->hashIt(base_convert(ord($this->code[$i]) + $this->interval, 10, $this->option)) . $this->mask[$this->option];
    return $str;
    }
    
    public function Obfuscate()
    {
    $rand = rand(0,99);
    $rand1 = rand(0,99);
    return "var _0xc{$rand}e=[\"\",\"\x73\x70\x6C\x69\x74\",\"\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6A\x6B\x6C\x6D\x6E\x6F\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7A\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4A\x4B\x4C\x4D\x4E\x4F\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5A\x2B\x2F\",\"\x73\x6C\x69\x63\x65\",\"\x69\x6E\x64\x65\x78\x4F\x66\",\"\",\"\",\"\x2E\",\"\x70\x6F\x77\",\"\x72\x65\x64\x75\x63\x65\",\"\x72\x65\x76\x65\x72\x73\x65\",\"\x30\"];function _0xe{$rand1}c(d,e,f){var g=_0xc{$rand}e[2][_0xc{$rand}e[1]](_0xc{$rand}e[0]);var h=g[_0xc{$rand}e[3]](0,e);var i=g[_0xc{$rand}e[3]](0,f);var j=d[_0xc{$rand}e[1]](_0xc{$rand}e[0])[_0xc{$rand}e[10]]()[_0xc{$rand}e[9]](function(a,b,c){if(h[_0xc{$rand}e[4]](b)!==-1)return a+=h[_0xc{$rand}e[4]](b)*(Math[_0xc{$rand}e[8]](e,c))},0);var k=_0xc{$rand}e[0];while(j>0){k=i[j%f]+k;j=(j-(j%f))/f}return k||_0xc{$rand}e[11]}eval(function(h,u,n,t,e,r){r=\"\";for(var i=0,len=h.length;iencodeIt() . "\"," . rand(1, 100) . ",\"" . $this->mask . "\"," . $this->interval . "," . $this->option . "," . rand(1, 60) . "))";
    }
    public function setExpiration($expireTime)
    {
    if (strtotime($expireTime)) {
    $this->expireTime = strtotime($expireTime);
    return true;
    }
    return false;
    }
    
    public function addDomainName($domainName)
    {
    if ($this->isValidDomain($domainName)) {
    $this->domainNames[] = $domainName;
    return true;
    }
    return false;
    }
    
    private function isValidDomain($domain_name)
    {
    return (preg_match("/^([a-z\d](-*[a-z\d])*)(\.([a-z\d](-*[a-z\d])*))*$/i", $domain_name)
    && preg_match("/^.{1,253}$/", $domain_name)
    && preg_match("/^[^\.]{1,63}(\.[^\.]{1,63})*$/", $domain_name));
    }
    
    private function html2Js($code)
    {
    $search = array(
    '/\>[^\S ]+/s',     // strip whitespaces after tags, except space
    '/[^\S ]+\
    /' // Remove HTML comments ); $replace = array( '>', '<',             '\\1',             ''         );         $code = preg_replace($search, $replace, $code);         $code = "document.write('" . addslashes($code . " ") . "');";         return $code;     }      private function cleanHtml($code)     {         return preg_replace('//', '', $code); }  private function cleanJS($code) { $pattern = '/(?:(?:\/\*(?:[^*]|(?:\*+[^*\/]))*\*+\/)|(?:(?<!\:|\\\|\')\/\/.*))/';         $code = preg_replace($pattern, '', $code);         $search = array(             '/\>[^\S ]+/s',     // strip whitespaces after tags, except space '/[^\S ]+\/' // Remove HTML comments ); $replace = array( '>', '<',             '\\1',             ''         );         return preg_replace($search, $replace, $code);     } }
    All Blogger Conditional Tags and How to Use in your Blogger Blog

    All Blogger Conditional Tags and How to Use in your Blogger Blog

    All Blogger Conditional Tags and How to Use Them by Vishesh Grewal


    If you are a blogger and you don't know about Blogger Conditional.
    Don't worry i posted all Blogger Conditional Tags and How to Use Them.
    By using conditional tags, you can specify part of your template to specific place under certain condition. Example: Using conditional tags, you can hide/show content on specific post/page/label/sidebar etc.

    Blogger Conditional Tags
    In this tutorial, i share all blogger conditional tags thats almost useful for blogger.


    1. Conditional Tag Use
    
     <b:if cond='ADD_CONDITION_HERE'>ADD CONTENT HERE</b:if>
     The conditional tags syntax start with <b:if> tags and a cond attributes. Condition need to write as the value of cond attribute. Every opening  <b:if> tag need to be closed with a closing </b:if> tag.


    2.  All Blogger Conditional Tags List
    • Homepage
      
      <b:if cond='data:blog.url == data:blog.homepageUrl'>ADD CONTENT HERE</b:if>
      •  Blog Post/Article Page
      
      <b:if cond='data:blog.pageType == "item"'>ADD CONTENT HERE</b:if>

      3. Index Page
      Index pages include homepage, label page, search page and yearly archive page.
      
      <b:if cond="data:blog.pageType == "index"">ADD CONTENT HERE</b:if> 


      4. Static Pages
      Static page means blogger page which we created by blogger page section.
      <b:if cond='data:blog.pageType == "static_page"'>
      ADD CONTENT HERE
      </b:if>

      5. Post and Static Pages
      
      <b:if cond='data:blog.url == data:post.url'>
      ADD CONTENT HERE
      </b:if>


      6. Label and Search Pages
      
      <b:if cond='data:blog.searchLabel'>
      ADD CONTENT HERE
      </b:if>


      7. Archive Pages
      
      <b:if cond='data:blog.pageType == "archive"'>
      ADD CONTENT HERE
      </b:if>


      8. 404 Error Page
      
      <b:if cond='data:blog.pageType == "error_page"'>
      ADD CONTENT HERE
      </b:if>


      9. First Post
      This is not for a page type. It's used for targeting the posts on multi-post pages like (index,archive,label,search query).
      
      <b:if cond='data:post.isFirstPost'>
      ADD CONTENT HERE
      </b:if>


      10. Specific Label
      Change PUT_LABEL_NAME_HERE with your label name. Label name is case sensitive.
      
      <b:if cond='data:post.labels any (l => l.name == "PUT_LABEL_NAME_HERE")'>
      ADD CONTENT HERE
      </b:if>

      Applying Conditional Tags:-

      To apply a conditional tag to a content, you need to put your content between the opening <b:if cond..>  and closing </b:if>. Example see below
      
      <b:if cond='data:blog.pageType == "item"'> 
      CONTENT (TO BE EXECUTED IF CONDITION IS TRUE)
      </b:if>

      Applying Reverse Conditional Tags:-
      If you want to reverse a conditional tag, you can do it by changing comparison operator from == (is equal to) to != (is not equal to).
      <b:if cond='data:blog.pageType != "item"'>
      CONTENT (TO BE EXECUTED IF CONDITION IS TRUE)
      </b:if>

      In the example above, the content will appear all of pages except post page. Remember that you can not apply this method to Label-Search and First Post conditionals.

      You can place all of conditional anywhere inside the template HTML. It will not work on blogger Layout like (Add a Gadget>HTML/Javascript)
      Vishesh Auto Index 5 Features,Changelog & Download

      Vishesh Auto Index 5 Features,Changelog & Download

      Vishesh Auto Index

      A mobile focused autoindex script that allows users to create a mobile download site. Vishesh Auto Index 5 specially made for mp3 downloading websites.

      If you facing any problem/issue. Feel free to contact me.
      Features:-

      Changelog:- 

      • Page Loading Speed Optimised.
      • Removed some Javascript.
      • Improve stability.
      • Changes in Download Page.
      • Removed Facebook comments plugin.
      • Removed Old Share Buttons with New Icons.
      • Updates Page Fully Change.
      • Improved Updates Manager.
      • File Direct Download instead of using octet-stream.
      • Fixed some known bugs and make more responsive layout.
      • You can change logo anytime.
      • Mass Mp3 tags Changer of All Files in single click.
      • Added FAQ links.
      • Removed All Ads.
      • Admin Panel Security improved.
      • Cookies timelimit Changed.
      • And Much More.

       Old Features:-

      • Every File Have Title, Artist, Category, Label, Lyrics for mp3.
      • Bug Fixed for Bitrate Converted Files.
      • http redirect to http://www (Use https if you have secured connection).
      • Attractive StyleSheet with Bootstrap CSS and Font awesome Icon.
      • Faster Loading.
      • Powerful Updates Manager.
      • Facebook Page Like Button In Homepage & Download Page.
      • Search Form.
      • Bit Rate Converter(requires FFMPEG).
      • Realtime VideoWatermark (requires GDlibrary).
      • Realtime Image/Icon Watermark.
      • Upload Icon for every types of file.
      • AutoMated Sitemap(Full).
      • url.txt for Search Engine Crawling (Make Indexed Your webpage on Search Engine).
      • Recommended Files in Download Page.
      • File display system like common download portals.
      • Upload/Import via URL.
      • Full SEO Optimized.
      • Preview for almost every types of file.
      • Auto Mp3 Tag Editor(if on from admin panel).

      How To Install :-
      ################################
      1. Download Vishesh Auto Index 5
      2. Upload And Extract It on your Online File Manager
      3. Now Goto:-http://yoursitename/install.php 
      4.Enter your database details  and Website details.

      5. Enjoy it.

      How To Access Admin Panel:-###################################
      For access admin panel. Please visit like;
        http://yoursite/admin.php

      Screenshot:-

      Homepage

      Vishesh Auto Index Homepage Snapshot

      Updates Page


      Download Page



      Generating Download Page
      All in One SEO Pack for Blogspot Blogger

      All in One SEO Pack for Blogspot Blogger

      All in One SEO Pack for Blogspot All in One SEO Pack for Blogspot Blogger by Vishesh Grewal

      How to add meta tag in blogger. 

      Yes! in this posts i will share a complete pack of Blogger SEO meta tags.  As you all know that Blogspot is a most popular and easy CMS blogging platform. Search engine optimization is most important part in blogger also. A user and Search engine got a brief idea from title tag of your page/posts and it is must important. We put <title> tag after <head> tag. This title tag display on browser's title bar and Search result. If you running a blogspot blog, then you must need to SEO Optimize for your blog. SEO for blogger is most important part for every blogger. In this post i shared a complete SEO pack for blogger. A blog's must need to add different tilte tag in different pages or posts.

      Blogger SEO / Blogspot SEO

      Blogger keywords meta tags summarize your blog to search bots that, what about your blog.  Description meta tag is also important for blogger. Description meta tag provide a summary of your page or posts on search result. That is most important for indexing your posts on search engines. Title meta tag and description meta tag is most important for blogger seo. Blogger meta description tag is  <meta name="description" content="XXXX"/> this is meta tag description for blogger and it also to place after <head> like title tag. This will help in better search result.

      `If in your blog already added seo tags, then you must need clear previous meta tags from your blog. Now lets start and see how to add meta tags in blogger. Now go to Blogger Dashboard > Edit HTML and past below code right after <head>`.

      
      <!-- All in One SEO Pack for blogger by Vishesh Grewal -->
      <meta charset='utf-8'/>
      <meta content='width=device-width, initial-scale=1, maximum-scale=1' user-scalable=0;' name='viewport'/>
      <meta content='blogger' name='generator'/>
      <meta content='text/html; charset=UTF-8' http-equiv='Content-Type'/>
      <link href='http://www.blogger.com/openid-server.g' rel='openid.server'/>
      <link expr:href='data:blog.homepageUrl' rel='openid.delegate'/>
      <link expr:href='data:blog.url' rel='canonical'/>
      <b:if cond='data:blog.pageType == &quot;index&quot;'>
      <title><data:blog.pageTitle/></title>
      <b:else/>
      <b:if cond='data:blog.pageType != &quot;error_page&quot;'>
      <title><data:blog.pageName/> - <data:blog.title/></title>
      </b:if></b:if>
      <b:if cond='data:blog.pageType == &quot;error_page&quot;'>
      <title>Page Not Found - <data:blog.title/></title>
      </b:if>
      <b:if cond='data:blog.pageType == &quot;archive&quot;'>
      <meta content='index' name='robots'/>
      </b:if>
      <b:if cond='data:blog.searchLabel'>
      <meta content='index,follow' name='robots'/>
      </b:if>
      <b:if cond='data:blog.isMobile'>
      <meta content='index,follow' name='robots'/>
      </b:if>
      <b:if cond='data:blog.pageType != &quot;error_page&quot;'>
      <meta expr:content='data:blog.metaDescription' name='description'/>
      <b:if cond='data:blog.homepageUrl != data:blog.url'>
      <meta expr:content='data:blog.pageName + &quot;, &quot; + data:blog.pageTitle + &quot;, &quot; + data:blog.title' name='keywords'/>
      </b:if></b:if>
      <b:if cond='data:blog.url == data:blog.homepageUrl'>
      <meta content='YOUR, KEYWORDS, HERE' name='keywords'/></b:if>
      <link expr:href='data:blog.homepageUrl + &quot;feeds/posts/default&quot;' expr:title='data:blog.title + &quot; - Atom&quot;' rel='alternate' type='application/atom+xml'/>
      <link expr:href='data:blog.homepageUrl + &quot;feeds/posts/default?alt=rss&quot;' expr:title='data:blog.title + &quot; - RSS&quot;' rel='alternate' type='application/rss+xml'/>
      <link expr:href='&quot;http://www.blogger.com/feeds/&quot; + data:blog.blogId + &quot;/posts/default&quot;' expr:title='data:blog.title + &quot; - Atom&quot;' rel='alternate' type='application/atom+xml'/>
      <b:if cond='data:blog.pageType == &quot;item&quot;'>
      <b:if cond='data:blog.postImageThumbnailUrl'>
      <link expr:href='data:blog.postImageThumbnailUrl' rel='image_src'/>
      </b:if></b:if>
      <b:if cond='data:blog.url == data:blog.homepageUrl'>
      <b:if cond='data:blog.pageType == &quot;item&quot;'>
      <b:if cond='data:blog.pageType == &quot;static_page&quot;'>
      <b:if cond='data:blog.url'>
      <meta expr:content='data:blog.url' property='og:url'/>
      </b:if>
      <meta expr:content='data:blog.title' property='og:site_name'/>
      <b:if cond='data:blog.pageName'>
      <meta expr:content='data:blog.pageName' property='og:title'/>
      </b:if>
      <meta content='website' property='og:type'/></b:if></b:if></b:if>
      <b:if cond='data:blog.postImageThumbnailUrl'>
      <meta expr:content='data:blog.postImageThumbnailUrl' property='og:image'/>
      <b:else/></b:if>
      <link href='/favicon.ico' rel='icon' type='image/x-icon'/>
      <link href='https://plus.google.com/+VisheshGrewal/posts' rel='publisher'/>
      <link href='https://plus.google.com/GOOGLE+ID/about' rel='author'/>
      <link href='https://plus.google.com/GOOGLE+ID' rel='me'/>
      <meta content='GOOGLE-WEBMASTER-CODE' name='google-site-verification'/>
      <meta content='BING-WEBMASTER-CODE' name='msvalidate.01'/>
      <meta content='ALEXA-VERIFY-CODE' name='alexaVerifyID'/>
      <meta content='India' name='geo.placename'/>
      <meta content='YOUR-NAME' name='Author'/>
      <meta content='general' name='rating'/>
      <meta content='India' name='geo.country'/>
      <meta content='en_US' property='og:locale'/>
      <meta content='en_GB' property='og:locale:alternate'/>
      <meta name="language" content="english"/>
      <meta content='https://www.facebook.com/vkay99' property='article:author'/>
      <meta content='https://www.facebook.com/vkay99' property='article:publisher'/>
      <meta content='FACEBOOK-APP-ID' property='fb:app_id'/>
      <meta content='FACEBOOK-ADMIN-ID' property='fb:admins'/>
      <meta content='@vkaygrewal' name='twitter:site'/>
      <meta content='@vkaygrewal' name='twitter:creator'/>
      <!-- End of All in One SEO Pack for blogger by Vishesh Grewal -->

       Note:- Please Replace some social link value with your own.

      Finally it done. If you found any problems, then feel free to contact me or comment your problem.
      Google Camera Go APK download for all Android devices with Gcam Go Ports

      Google Camera Go APK download for all Android devices with Gcam Go Ports

      Google Camera Go APK download for all Android devices with Gcam Go Ports

      Google introduced Android Go last year with Android 10 and the firmware continues to Android 11 this year. Android Go Edition phones are inexpensive and hence feature very low end processors. So much so that Google developed an entirely new OS for the sub $100 phones called the Android Go Edition; or so called the lite version of Android. For instance, the Nokia 1.3 device is a €95 phone that runs of Android Go OS featuring Snapdragon 250 SoC. While the device has an upgrade plan for Android 11 Go and even the Android 12 Go Editions, the most intriguing part about this low-end smartphone is the Google Camera Go APK.
      So as for the low-end and even the mid-range Android devices, the Gcam ports mostly won’t work let along the Google Camera APK. This can be solved with the Android Go’s Google Camera Go APK. The Camera Go app comes pre-installed on Nokia 1.3. It features a fair amount of functionalities and settings as compared to the stock Pixel 4 camera app. The Google Camera Go APK interface is minimalistic with 4 options including camera (for photos), video, portrait, and translate. The settings is also a small overlay dialogue box with toggles for flash, timer, and face enhancer.

      The Google Camera Go work flawlessly with most of the Android devices out there. So it doesn’t necessarily need a specific Gcam port. This is the Gcam Go port! Simply download to your device, install, and run.

      This Google Camera Go App have no any bugs and lacks.

      Data Vocabulary Schema Deprecated Breadcrumbs error Fix in blogger

      Data Vocabulary Schema Deprecated Breadcrumbs error Fix in blogger

      Data Vocabulary Schema Deprecated Breadcrumbs error Fix in blogger by Vishesh Grewal

      Importance of Breadcrumbs

      Why is it important to have valid breadcrumb structured data markup?
      Google Search uses breadcrumb markup in the body of a web page to categorize the information from the page in search results. Given the fact that Google is displaying breadcrumbs more prominently in search results, it’s more important than ever to make sure the markup is valid. Breadcrumb markup can be implemented using JSON-LD, RDFa, or Microdata. It can also be implemented as part of a page’s visual design using HTML.

      "How to Fix Breadcrumbs Issue?" 

      • If you get Email from Google mentioning that your posts have breadcrumbs issues.
      • While submitting your post in Google Webmaster tool, you are able to submit the post for indexing, but while testing URL, you get a warning like “Data Vocabulary Schema Deprecated Breadcrumbs error”.
      Don’t worry guys, I found an instant solution for this which is 100% WORKING and TESTED. I found this solution because recently i also get a email from "Google Search Console" related Breadcrumbs issue on my Blog.

      Steps To Fix Breadcrumbs Issue:-

      •  Go to your blogger and navigate to “Theme” and click “Edit HTML”.
      • Click anywhere in the HTML code window of your blogger theme and search for “.breadcrumbs a:hover” OR “.breadcrumbs span a:hover”. You will definitely find either of these two.
      • Paste this code.
      
      .breadcrumbs svg{width:16px;height:16px;vertical-align:-4px}
      
      .breadcrumbs svg path{fill:#666} 
      









    • After that Search again for below line in blogger theme HTML
    •  <b:includable id='backlinks' 
      • Paste this code.
      <b:includable id='breadcrumb' var='posts'> 
      <b:if cond='data:blog.pageType == &quot;item&quot;'> 
      <b:loop values='data:posts' var='post'> 
      <b:if cond='data:post.labels'> 
      <div class='breadcrumbs' itemscope='itemscope' itemtype='https://schema.org/BreadcrumbList'>
       <svg viewBox='0 0 24 24'>
      <path d='M10,20V14H14V20H19V12H22L12,3L2,12H5V20H10Z' fill='#000000'/></svg> 
      <span itemprop='itemListElement' itemscope='itemscope' itemtype='https://schema.org/ListItem'>
       <a expr:href='data:blog.homepageUrl' title='Home' itemprop='item'> 
      <span itemprop='name'>Home</span></a>
       <meta content='1' itemprop='position'/> </span> 
      <svg viewBox='0 0 24 24'><path d='M5.5,9A1.5,1.5 0 0,0 7,7.5A1.5,1.5 0 0,0 5.5,6A1.5,1.5 0 0,0 4,7.5A1.5,1.5 0 0,0 5.5,9M17.41,11.58C17.77,11.94 18,12.44 18,13C18,13.55 17.78,14.05 17.41,14.41L12.41,19.41C12.05,19.77 11.55,20 11,20C10.45,20 9.95,19.78 9.58,19.41L2.59,12.42C2.22,12.05 2,11.55 2,11V6C2,4.89 2.89,4 4,4H9C9.55,4 10.05,4.22 10.41,4.58L17.41,11.58M13.54,5.71L14.54,4.71L21.41,11.58C21.78,11.94 22,12.45 22,13C22,13.55 21.78,14.05 21.42,14.41L16.04,19.79L15.04,18.79L20.75,13L13.54,5.71Z' fill='#000000'/></svg>
       <b:loop index='num' values='data:post.labels' var='label'> 
      <span itemprop='itemListElement' itemscope='itemscope' itemtype='https://schema.org/ListItem'>
       <a expr:href='data:label.url + &quot;?&amp;max-results=16&quot;' expr:title='data:label.name' itemprop='item'>
       <span itemprop='name'><data:label.name/></span> </a> 
      <meta expr:content='data:num+2' itemprop='position'/> </span> 
      <b:if cond='data:label.isLast != &quot;true&quot;'>
       <svg viewBox='0 0 24 24'><path d='M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z' fill='#000000'/></svg> 
      </b:if> 
      </b:loop> 
      <svg viewBox='0 0 24 24'><path d='M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z' fill='#000000'/></svg> 
      <span><data:post.title/></span> </div> </b:if> </b:loop> </b:if> </b:includable>
      
      How To Add Custom Robots.txt File in Blogger?

      How To Add Custom Robots.txt File in Blogger?

      How To Add Custom Robots.txt File in Blogger?

      What is Robots.txt?

      Robots.txt is a text file which contains few lines of simple code.
      It is saved on the website or blog's server which instruct the web crawlers on how to index and crawl your blog in the search results.
      That means you can restrict any web page on your blog from web crawlers so that it can't get indexed in search engines like your blog labels page, your demo page or any other pages that are not as important to get indexed.
      Always remember that search crawlers scan the robots.txt file before crawling any web page.
      Each blog hosted on blogger has its default robots.txt file which is something look like this: 

      User-agent: Mediapartners-Google
      Disallow:
      User-agent: *
      Disallow: /search
      Allow: /
      Sitemap: http://example.blogspot.com/sitemap.xml

       

      Explanation:-

      This code is divided into three sections. Let's first study each of them after that we will learn how to add custom robots.txt file in blogspot blogs.

      User-agent: Mediapartners-Google

      This code is for Google Adsense robots which help them to serve better ads on your blog. Either you are using Google Adsense on your blog or not simply leave it as it is.

      User-agent: * 

      This is for all robots marked with asterisk (*). In default settings our blog's labels links are restricted to indexed by search crawlers that means the web crawlers will not index our labels page links because of below code.

      Disallow: /search

      That means the links having keyword search just after the domain name will be ignored. See below example which is a link of label page named SEO.

      https://visheshgrewal.blogspot.com/search/label/SEO 

      And if we remove Disallow: /search from the above code then crawlers will access our entire blog to index and crawl all of its content and web pages.

      Here Allow: / refers to the Homepage that means web crawlers can crawl and index our blog's homepage.


      Disallow Particular Post

      Now suppose if we want to exclude a particular post from indexing then we can add below lines in the code.

      Disallow: /yyyy/mm/post-url.html

      Here yyyy and mm refers to the publishing year and month of the post respectively. For example if we have published a post in year 2018 in month of March then we have to use below format.

      Disallow: /2018/03/post-url.html

      To make this task easy, you can simply copy the post URL and remove the blog name from the beginning.


      Disallow Particular Page

      If we need to disallow a particular page then we can use the same method as above. Simply copy the page URL and remove blog address from it which will something look like this:

      Disallow: /p/page-url.html


      Adding Custom Robots.Txt to Blogger

      Now the main part of this tutorial is how to add custom robots.txt in blogger. So below are steps to add it.
      • Go to your blogger blog.
      • Navigate to Settings >> Search Preferences ›› Crawlers and indexing ›› Custom robots.txt ›› Edit ›› Yes
      • Now paste your robots.txt file code in the box.
      • Click on Save Changes button.
      • You are done! 


      How to Check Your Robots.txt File? 

      You can check this file on your blog by adding /robots.txt at the end of your blog URL in the web browser. For example:
      http://xyz.blogspot.com/robots.txt

      Once you visit the robots.txt file URL you will see the entire code which you are using in your custom robots.txt file.



      How to Submit your Site on Google Step-by-step Guide

      How to Submit your Site on Google Step-by-step Guide


      For Getting your Site/Blog on Google search, Here you can get step-by-step guide for Submit your Website/Blog on Google. If your website/blog isn't in Google's index, it won't be able to be found when a user makes a search. Google needs to know that your site exists to be able to crawl it and include it in its index.

      You must have a Google Account for submit your site on Google.

      How to Submit your Website/Blog on Google Search?


      1. Go to Google Webmaster Tool.
      2. Click on Menu Bar (if you use mobile version) and then click on +Add Property.
      3. Now Enter your domain name.
      4. Then you need to verify your domain by Adding CNAME record, upload HTML file on your website file manger(Hosting account required) or by Adding a meta head tag on your site/blog.
      5. Then Google verify your domain and starts crawling your site/blog.

      If you facing any error just leave a comment.