Recently, I had been tasked with working on analytics in
Android and iPhone. As part of my
implementation, I needed to verify analytics is actually being captured. To verify I had to use a web debugging web
application tool. For the project I
worked on there was a preference to use Charles. In a previous post I had drafted instructions
to setup Charles on an Android emulator.
The instructions I drafted up were for my personal development use because,
I did not access to an android device; however, my QA team did not access to an
emulator and needed a way to verify analytics capture on an Android
device. Therefore, I drafted
instructions on how to setup Charles on an Android device.
Pre Conditions
- Downloaded Charles and Installed on proxy host (e.g. laptop, desktop)
- Android device
- Android device is setup on Wireless
- Android device and proxy host (e.g. laptop, desktop) are on the same domain
- Jot down the proxy host IP address
Setup
1. On Android device go to Settings à Wi-Fi
1. On Android device go to Settings à Wi-Fi
2. Select the “Connected” network, by pressing and holding the “Connected” network. You should get a pop up.
3. You will need to select “Modify network”.
4. In this next screen scroll down until you see “Show advanced
options”, select the checkbox. More options should appear by scrolling down.
Enter the following:
Proxy hostname: xxx-xxx-xxx-xxx (IP address of your host
proxy)
Proxy port: 8888 (the
port Charles uses)
Select Save, and you are done with Android.
Select Save, and you are done with Android.
5. Get Charles SSL Certificate
6. Open Charles on your host (e.g. laptop, desktop) be sure set the following settings:
Navigate to Proxy à Proxies
Navigate to Proxy à
SSL
I spent a good deal of time wrapping my head around the basics, and after sifting through all the documentation and requirements I realized the name analytics sounds more sophisticated than the actual implementation.
- From your device visit the URL http://charlesproxy.com/charles.crt
- Accept the security warning
6. Open Charles on your host (e.g. laptop, desktop) be sure set the following settings:
Navigate to Proxy à Proxies
- Enter 8888 in Port field
- Check Enable transparent HTTP proxying
- Check Enable SSL Proxying
- Locations, Add Host: * and Port: *
7. Go to your device and start using your app and watch your HTTP and HTTPS traffic.
I spent a good deal of time wrapping my head around the basics, and after sifting through all the documentation and requirements I realized the name analytics sounds more sophisticated than the actual implementation.
I have found analytics to be pleasant to work with. I have also gained an understanding with how
this technology can produce results that can be very beneficial to the end
user’s experiences, for future development efforts. On the flip side, I also realized where
analytics has the potential to be misused.
Android Device
Model number: DROID RAZAR MAXX
Android Version: 4.1.2
Referenced Material




No comments:
Post a Comment