Monday, October 29, 2018

Installing Apps to Android mobile in bulk using Laptop


Mobile phones are becoming useful sidekick apart from performing the basic function of making calls,  so much so that they are now managing various aspects of life like finances, science, day to day converters, communication and messaging , social media and so on.


A smart phone becomes a very useful tool in the hands of user depending on the apps it has been loaded with. Now here comes the problem! Apps are installed over the months and years  and if for any reason, a new phone is purchased or old one is formatted, all the apps have to be installed one by one which becomes tedious. The following steps will guide you as to how to take backup of all your apps in your laptop from your old phone  and then load them into your new phone in a single click..

Ok, so here are the steps..I have tried to keep it as simple as possible.

PREPARING THE PHONE & LAPTOP

1 Developer options have to be enabled on your phone to do this exercise. To enable developer options, open settings app, select System, scroll to bottom and select About Phone, scroll to bottom and tap Build number 7 times, return to previous screen to find Developer options near bottom

2. turn on USB Debugging in developer options.

3. Connect the phone to laptop by means of a USB cable and select USB debugging (ADB) mode., a seperate CD drive can be seen mounted in my computer containing the phone USB drivers for laptop, double click and install the drivers( this may differ from phone to phone, in some phones, you may have to download the USB drivers from manufacturers website and install)

4. download and unzip SDK platform-tools_r28.0.1 for windows in a directory , say D:\adb-fastboot\platform-tools

5. Right click my computer, go to properties, go to advanced system settings, click on environment variables button , in system variables scroll down and click on  path, click edit button, modify the path by adding a semicolon and inserting D:\adb-fastboot\platform-tools after semicolon as shown in screenshot below. click ok all the way to close the advanced system settings. This is being done so that you can run adb command from any path.
                                                 



6. reboot the laptop and open command window, and type adb, you should see something like this screenshot:-

now your laptop is ready to send commands to your phone via ADB

PREPARING THE PRINT.BAT FILE IN LAPTOP

1. Install myphone explorer app. My phone explorer is a nice nifty app which can be used to take backup of your apps, contacts, sms etc to your laptop . It also has a useful sync feature which can be used to sync files between your laptop and Phone external memory, if you happen to keep your work related stuff on your phone for ready reference.


2.  Install Myphone explorer on your laptop/PC.

3. turn on  your wifi hotspot on your mobile and connect your laptop to it.

4. open myphone explorer in both laptop and mobile phone and using the laptop app go to File-> connect to phone. click on Extras menu  -> Create backup as per the screenshot below. Now all your apps are stored in a folder in  laptop (say D:\apps-1)



5. open a command prompt window and cd to D:\apps-1. type dir /s /b > print.txt , this creates a file called print.txt in the folder. now, open this file in notepad and replace D:\ with adb install -r D:\  for all the occurrences.










6. Now, you might notice that some filenames of apps have space between them, we need to replace space with an _ (underscore) character everywhere. so we have another nifty vbscript file to do that for us. Download the file here , open the vbscript file in notepad and change the path in the Set fol line like Set fol = fso.GetFolder ("D:\apps-1"). what this vbscript file does is read each filename in
D:\apps-1 directory and find blank space in them and replace with a underscore. The reason why this is being done is the command line adb install fails on space in filenames so it has to be replaced with an underscore.
 
7. open print.txt in notepad and  click save as and enter filename as  print.bat and file type as all as shown in screenshot below. This will generate a batch file called print.bat
 
8. double click print.bat file to open a command window to install each app one by one as can be seen in screenshot below!
 

 
 
 
References:
 https://android.stackexchange.com/questions/64353/how-to-batch-install-apks-from-computer-to-android-without-actually-touching-my

 
 
 
 
 



 




 

Wednesday, June 27, 2018

Ubuntu 18.04 on old HP Compaq 6710b Laptop

HP Compaq 6710b is my oldest laptop given by ONGC way back in 2006. The laptop had windows vista initially and having a Intel core2 duo CPU @ 2.2 GHz with  2 GB RAM. It was brand new but slow as hell.

Later , installed Windows 10 under the magnanimous program of Microsoft who did not allow upgrade to Win 10 from vista but allowed to install it without activation. Updates continued to happen , everything happened, but it continued to be slow as hell.

Then, ONGC under its EPP(somewhere in 2014) allowed purchase of another HP laptop with 4 GB RAM , however this time we purchased the laptop instead of the L1 route earlier. 6710b continued working as the latest laptop evolved from win 8 to win 8.1 , windows 10 and finally to the latest April Update of Win 10 pro. However, 6710b continued to be slow as hell.

In 2018, ONGC EPP, I purchased a powerhorse, Asus FX series 16 GB RAM, Latest Nvdia card(1060 I guess), Intel 7th gen HQ CPU, 7200 rpm 1TB HDD and 128 GB SSD. Out of concern for the geriatric laptop, I purchased 2 sticks of 2 GB RAM for Rs 2000/- in total to give a 4 GB upgrade to the 6710b, However, 6710b continued to be slow as hell.

Finally, decided to give 6710b exit to windows by totally removing windows and installing Ubuntu 18.04 released this April. Now this old laptop is decent and not slow as hell

However, it did take some time to boot (3 minutes), which was odd, when the laptop is not slow as hell, why should the boot be slow as hell?
(1) here is the error it threw up during boot
(2)sudo nano /etc/default/grub
(3) 
(4) Added GRUB_CMDLINE_LINUX_DEFAULT="quiet video=SVIDEO-1:d" and removed "splash"

(5) saved and sudo update-grub

Now , boot time reduced to 20 seconds :)

Old laptop is no longer damn slow as hell :)


Note: Also came to know that boot menu can be displayed by pressing shift during boot and pressing E key against a kernel entry allows to edit it and boot with the edited entry to test before making changes permanent as mentioned in steps (2) onwards




Thursday, May 17, 2018

configuring ccproxy and internet gateway for routing internet from one network to another

CCproxy is software used to give internet connection to neighboring computers in the same network (connected to same switch or wifi network). It is simple and easy to use. 

This particular use-case is for situation when internet is required in an adjacent network (say 192.168.32.*, which say is the LAN) and the internet connected Proxy server is in another network (say 192.168.43.* which say is the jio network coming from wifi or mobile)

Steps:-
1. Open CC Proxy , do the settings as follows:-
2. Start the proxy server

3. install winpkfilter (which is the internet gateway)

(a) click the local area connection and  select the NAT status as client, meaning your LAN connection (say 192.168.32.10) will be client and click ok.

(b) click on wireless connection and NAT status will be provider, give the proper IP address of the JIO or wifi provided IP address (say 192.168.43.232) and click OK

(c) Click Start NAT as seen above

4. In one of the LAN PCs (say 192.168.32.25), add the following command in command window with admin privileges to add the IP address of JIO computer . Note that all Pcs in the LAN will be in the 192.168.32.* network.

route add 192.168.43.232 mask 255.255.255.255 192.168.32.10

5. ping the 192.168.43.232 computer, it should ping.

6. Open any browser and add proxy address as 192.168.43.232 and port as 808

7. open and browse internet in this network while your jio is connected to another network



 

Thursday, April 26, 2018

variables need to be explicitly declared even though óption explicit'option not given

INTRODUCTION
1. It is considered a good practice to use óption explicit'at the beginning of a module or code block, doing so, will need unique declaration of each variable in the module.

2. Though, this is good for organized coding, it can take the fun out of quick coding.

PROBLEM
1. I had not used option explicit anywhere, however, when a excel macro file developed elsewhere, was copied to my system, the code execution stopped at each undeclared variable. Declaring that variable solved the issue, however, code will stop at the next undeclared variable.

2. I checked the options menu in VB editor, "require variable declaration was also unchecked". This was a huge problem as I may have had dozens of undeclared variables. Why was I facing this problem in my home laptop while elsewhere it worked?

3. googled, found someone else also faced the same problem. The issue was using "References"which are not installed (Active X controls, like comctl2.ocx etc).

4. Clicked Tools-->References, and indeed there was highlighted a checkbox with "Missing: common controls (SP6). Unchecked this missing reference, and everything solved.  The code did not stop at any undeclared variable.

5. Meanwhile installed the common control active x and got the functionality was also obtained (separate blog post created for same)
 

making date time picker controls (sp6) work in Excel 2007

1. It is better to install MS office as 32 bit software even in 64 bit systems if legacy VBA code is being used in some excel files.

2. The common controls (mscomct2.ocx) will not work if office installed as 64 bit application.

3. The common control components like Microsoft Date time picker are obtained if the mscomct2.ocx active x file is added to the system.

4. Do not confuse between Mscomctl.ocx and mscomct2.ocx. The former is used for VB6 and later is used for VBA. download the correct ocx file and register to get the date time picker control in Excel VBA.

5. see this link (or google, if this does not open) for procedure to register active x controls.
https://www.ablebits.com/office-addins-blog/2016/10/12/insert-calendar-excel-datepicker-template/#Register-date-picker

6. irrespective, if your application is installed as 32 bit (meaning it is stored c:\program files (x86) ) in the 64 bit OS system , the OCX file has to be copied to C:\windows\syswow64 and then procedure as mentioned in step 5 to be applied.  The 64 bit applications are stored in normal program files folder (C:\program files)

7. By doing step 5 & 6, the date time picker control started appearing in VBA of excel.