Post Reply

[TABLET Z COMPETITION ENTRY][APP] Lightning Browser [2.2+][OPEN-SOURCE]

29th June 2013, 07:47 PM   |  #1  
anthonycr's Avatar
OP Senior Member
Flag Albany, NY
Thanks Meter: 713
 
577 posts
Join Date:Joined: Mar 2012
More

Lightning Browser
Speed. Holo. Privacy.


About:SourceCode - Source code on github



About:Browser
Lightning Browser...
  • is open-source
  • is HOLO
  • is based on WebKit
  • supports multiple tabs
  • has an incognito mode
  • doesn't spy on you like other browsers do
  • supports Adobe Flash (get it here)
  • has a full-screen mode
  • has a bookmarking ability
  • looks nice
  • is only ~100 KB


About:Screenshot

(Only one screenshot so I don't clog the thread)



About:History
Six months ago, I began work on a webkit based browser when I was asked for help fixing a simple web browser that two forum acquaintances (cammykool and tvall) had built using an online app maker. I looked at the site and disappointingly told them I couldn't help them because the site just generated an apk and didn't actually give you the source code. I told them I could try to build them a simple browser myself...

I started working on Lightning in January, soon published it on Google Play, published the source code on Github, and it became apparent that there was a large group of people that were looking for a light-weight, good-looking, privacy-aware, web browser. People seemed to really like the work I was doing and soon I was adding more and more to the browser. XDA developers kindly gave the browser a favorable review and download numbers spiked drastically.

Recently, I was challenged by the developer of Naked Browser (an excellent bare-bones browser that doesn't track you) about some apparent security flaws in my browser, and I am glad to say that I have fixed them. I've received tons of feedback from users and I have attempted to reply to them all, although I have missed a number of people's emails due to being bogged down with school work last semester. Every bit of feedback is important to me and I strive to fulfill people's desires in the browser.

This is the people's browser.




About:Future
I'm planning...
  • to add a sync with Google Bookmarks
  • on better supporting the Xperia Tablet Z
  • on better supporting large tablets in general
  • on adding better support for external keyboards and mouses
  • to add a lot of other options
  • to add more search providers (duckduckgo and startpage for privacy)
  • to possibly remove the GPS permission for the privacy aware of us.
  • to add anything you suggest and I can code



About: Permissions
● permission.INTERNET - Obviously needed to access the internet :P
● permission.WRITE_EXTERNAL_STORAGE - Needed for downloading files
● permission.READ_EXTERNAL_STORAGE - Needed for downloading files
● permission.ACCESS_FINE_LOCATION - Needed for sites that want your location (you can deny location access)
● permission.READ_HISTORY_BOOKMARKS - Needed for reading the stock browser history
● permission.WRITE_HISTORY_BOOKMARKS - Needed for keeping the stock browser history up to date


About:Me
I'm an Junior in college attending Rensselaer Polytechnic Institute in Troy, New York for Electrical Engineering. I enjoy programming for Android and I'm a gadget enthusiast.


Special Thanks goes to:
  • XDA-Developers: For the publicity they've given to Lightning Browser (and for this contest)
  • Sony: For supporting developers like me
  • The forum at VMRoms.com (You guys are awesome)
  • The Virgin Mobile LG Optimus V community: For teaching me all things Android
  • aminaked: for pointing out where Lightning had some security problems
  • The Android Developers at Google: for bringing WebKit to Android
  • WebKit: for being the back-bone of Lightning
  • You guys here: for giving my browser a chance.
  • cammykool and tvall: for the idea of Lightning browser



Please... Ask any questions you want. Suggest anything you want. You will be heard. This is the people's browser.
The Following 5 Users Say Thank You to anthonycr For This Useful Post: [ View ]
29th June 2013, 07:47 PM   |  #2  
anthonycr's Avatar
OP Senior Member
Flag Albany, NY
Thanks Meter: 713
 
577 posts
Join Date:Joined: Mar 2012
More


Proposed revision to the settings menu (and addition of advanced settings menu).

[note: ui elements will be standard holo elements, not the faux holo ones pictured]
Last edited by anthonycr; 2nd July 2013 at 01:12 AM.
The Following User Says Thank You to anthonycr For This Useful Post: [ View ]
29th June 2013, 07:53 PM   |  #3  
Senior Member
Thanks Meter: 430
 
493 posts
Join Date:Joined: Nov 2011
thanks downloading now. going to try this on cm10.1

Sent from my SGP311 using xda app-developers app
The Following User Says Thank You to skiwong20 For This Useful Post: [ View ]
29th June 2013, 08:38 PM   |  #4  
Filed issue on github tracker due to compile issues - looks like some stuff in Barebones class is private, then directly accessed from AnthonyWebView. Not had a look, perhaps going protected and inheriting from Barebones might help...

RE the feature ideas, I'd suggest perhaps Firefox sync is a worthwhile contender to rival Google's sync (since Firefox permits you to store your data on your own server, totally under your control).

Will take a look at search providers, as I have reverse-engineered a number of search engines' query strings and auto-suggest APIs, and found the proper ways to invoke them for mobile and desktop (tablet likely should use the desktop versions, unless user chooses otherwise).

There also appears to be a regression. It's not possible to use the newest version on a device without either the AOSP browser or Chrome. Since Chrome is closed source, and the AOSP browser is often not included on "stock" manufacturer ROMs (like the Sony Tablet Z ROM), this is a bit of an annoyance. There was no issue running Lightning version 2.4.3 without another browser being present, but it now FCs.

Code:
I/Barebones( 4696): making tab
E/ANDR-PERF-MPCTL( 1316): MPCTL client send 3
E/ANDR-PERF-MPCTL( 1316): Received len=92, m=1297100099, v=2, c=1316, s=30, m=992947771 (0x3b2f2e3b) d=0
I/Barebones( 4696): tab complete
E/Barebones( 4696): did not detect AOSP browser
W/dalvikvm( 4696): threadid=11: thread exiting with uncaught exception (group=0x40c0b450)
E/ActivityThread( 2750): Failed to find provider info for com.android.chrome.browser
E/AndroidRuntime( 4696): FATAL EXCEPTION: Thread-303
E/AndroidRuntime( 4696): java.lang.NullPointerException
E/AndroidRuntime( 4696): 	at acr.browser.barebones.v.run(Unknown Source)
E/AndroidRuntime( 4696): 	at java.lang.Thread.run(Thread.java:856)
W/ActivityManager(  604):   Force finishing activity acr.browser.barebones/.Barebones
Last edited by pulser_g2; 29th June 2013 at 09:14 PM.
The Following 2 Users Say Thank You to pulser_g2 For This Useful Post: [ View ]
29th June 2013, 11:44 PM   |  #5  
anthonycr's Avatar
OP Senior Member
Flag Albany, NY
Thanks Meter: 713
 
577 posts
Join Date:Joined: Mar 2012
More
Quote:
Originally Posted by pulser_g2

Filed issue on github tracker due to compile issues - looks like some stuff in Barebones class is private, then directly accessed from AnthonyWebView. Not had a look, perhaps going protected and inheriting from Barebones might help...

RE the feature ideas, I'd suggest perhaps Firefox sync is a worthwhile contender to rival Google's sync (since Firefox permits you to store your data on your own server, totally under your control).

Will take a look at search providers, as I have reverse-engineered a number of search engines' query strings and auto-suggest APIs, and found the proper ways to invoke them for mobile and desktop (tablet likely should use the desktop versions, unless user chooses otherwise).

There also appears to be a regression. It's not possible to use the newest version on a device without either the AOSP browser or Chrome. Since Chrome is closed source, and the AOSP browser is often not included on "stock" manufacturer ROMs (like the Sony Tablet Z ROM), this is a bit of an annoyance. There was no issue running Lightning version 2.4.3 without another browser being present, but it now FCs.

What's strange is that it compiles fine for me. I'll change the private variables to public that are accessed in the webview.

The issue with the stock browser not being present is also something that I know about, but alas... I forgot to test it with the latest build. I'll see about fixing that.

Thanks for pointing this out. I often forget about browsers with a stock provider.

What's strange is that it's giving me none of these on my Tablet Z which is still on stock...... Hmmm. At any rate, I'll fix this stuff pronto.

Sent from my Nexus 7 using Tapatalk 2
Last edited by anthonycr; 1st July 2013 at 10:22 PM.
30th June 2013, 04:55 AM   |  #6  
anthonycr's Avatar
OP Senior Member
Flag Albany, NY
Thanks Meter: 713
 
577 posts
Join Date:Joined: Mar 2012
More
I just fixed the crash issue. Silly, but all it required was a simple if(cursor!=null).
Also, the binary was updated and the code has been reverted to public to make it easier to compile.

Sent from my Xperia Tablet Z
Last edited by anthonycr; 1st July 2013 at 10:21 PM. Reason: Grammar
The Following User Says Thank You to anthonycr For This Useful Post: [ View ]
1st July 2013, 10:16 PM   |  #7  
anthonycr's Avatar
OP Senior Member
Flag Albany, NY
Thanks Meter: 713
 
577 posts
Join Date:Joined: Mar 2012
More
I added a change I'm planning to make to the settings menu to make it more n00b friendly and a little cleaner. See second post.
1st July 2013, 11:34 PM   |  #8  
Senior Member
Thanks Meter: 160
 
763 posts
Join Date:Joined: Aug 2011
The bookmark menu is crap (sorry, but it is).

Much too big items, not sortable, not configurable.

At this state Lightning unfortunately is not suited for me.
2nd July 2013, 01:04 AM   |  #9  
anthonycr's Avatar
OP Senior Member
Flag Albany, NY
Thanks Meter: 713
 
577 posts
Join Date:Joined: Mar 2012
More
Quote:
Originally Posted by hasenbein1966

The bookmark menu is crap (sorry, but it is).

Much too big items, not sortable, not configurable.

At this state Lightning unfortunately is not suited for me.

Suggestion taken. Sortable and editable I can do... Size on the other hand is an issue I am having difficulty with.

As you probably noticed, the bookmarks are an html page which the browser loads, and for some reason the text changes size in landscape and portrait.

Portrait size of the bookmarks is fine, but the landscape I agree to be unusable.
Also, I may consider a more icon/tile based thing like chrome... Whatever people want
Last edited by anthonycr; 2nd July 2013 at 01:11 AM.
30th July 2013, 02:12 AM   |  #10  
anthonycr's Avatar
OP Senior Member
Flag Albany, NY
Thanks Meter: 713
 
577 posts
Join Date:Joined: Mar 2012
More
The beta has been updated here https://github.com/anthonycr/Lightning-Browser. Lots of New options including the ability to import bookmarks from the stock browser or chrome if it's installed.

Sent from my Xperia Tablet Z

Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes


Top Threads in Xperia Tablet Z Original Android Development by ThreadRank