[Request] Can we have these improvements ??? - Optimus One, P500, V General

Okay android's opensource and i dont have the bandwidth to check the source and look into it myself...(with watsoever little skill i might have)
Can somehow the hackers here do something about these ???
1. improve audio quality by tweaking audio driver or by updating audio drivers (upgrading ALSA maybe )
2. any tweaks for edge network to suck up the bandwidth as much as possible??
3. use googledns with 3g/edge connections without executing a "setprop" based script all the time
4. RAW image capture like digital cameras????
5.use phone as a wifi dongle...Like if u added a usb wifi dongle to your pc..U cud connect to a wireless network nearby..
6. Bluetooth PAN ...i miss feature the most..Its a million times better than DUN profile
i will list more if something more comes up....All ideas/opinions are WELCOME..

Look at this
1.We probably could improva audio quality but you need to ask to kernel compilers.
2.Franco's local.prop have 3g tweaks,i think. It's a thing like net.tcp.buffersize,you need to search it in francisco's tweaks.
3.I don't know what's Google DNS
4.I think that editing build.prop or camera app in CM7 can save images in .raw format.
5.Maybe,try to search an app like that in the Market.
6.Same like No. 5.

Google DNS is a public dns service which u can use in case the dns servers established by your isp suck and as for 6. The app is there but it requires a network driver/kernel module bnep.ko which i cudnt find in LG's kernel driver code.. As for 4. app developer logs show there is no support for RAW capture in android yet (wonder if its even possible)..
http://code.google.com/speed/public-dns/

Related

[APP] WMDreamRemote - control your Dreambox-with streaming!

WMDreamRemote (WMDR) - with streaming
UPDATE (22/04/2012): No more deadlines. The reason is that I am busy with other projects. I might implement other features in future. You can download from my web-site, http://www.tillekesoft.com. There you can find as usual two versions. One version is for devices using 320x240 but it should work fine also with devices having a resolution of 640x480. For all other resolutions, please use the other one. For existing users, you just need to replace the old executable with the new one.
06/10/2010 - I have attached a "step-by-step"-guide for setting up WMDR - in particular what regards streaming (it is in English but you can use Google Translation-tools to translate it to another language). Hopefully, this will make it easier for new users to get WMDR working.
IMPORTANT (22/06/2010) - I just tested the new version of VLC no. 1.1.0 and it seems like WMDR is not compatibile with the latest version of VLC. So if you want to use WMDR, please ensure to use VLC 1.0.5 or earlier until I have resolved this issue.
Change-log: nothing so I am leaving old change-log here below:
This version is more like a Service-Release fixing some bugs and introducing few new features:
-fixed issue when using WMDR with Enigma2 outside your LocalLAN where WMDR passed on a DynDNS-address to the Dreambox instead of LocalIP-address which is the correct way. Thanks to mkbm for finding this bug.
-fixed streaming-issue in Enigma2 when changing between channels located on different transpoders would cause problems. Thanks to mkbm for explaining this.
-improved error-handling (clearer messages). Still to be improved further.
-possibility to kill stream when exiting WMDR
-other minor bug-fixes
-some optimization
-added a program-icon (it's very basic - if you can come up with a better-looking icon, please do so and post it here in the thread)
-fixed issue with DM8000
To see WMDR in action (using a pre-release of Beta 0.7), watch this video posted by XDA-user ajocius on YouTube:
Background: After on-going discussions in this thread http://forum.xda-developers.com/showthread.php?t=616353 regarding an application to control remotely the Dreambox, I decided to write an application to accomplish this request.
In above thread, a very simple and crude beta-application was posted. Now, the application has evolved further and therefore I reckoned it was more appropriate to open a new thread in this area which is meant for Window Mobile applications.
Extra Information: The Dreambox is a series of Linux-powered DVB satellite, terrestrial and cable digital television receivers (set-top box), produced by German multimedia vendor Dream Multimedia. It's "kind of" of open-source which has led many "teams" to develop so called "images" for this receiver as an alternative to the original one furnished by Dream Multimedia. In addition, many other hardware manufactures have produced their own receivers (some of them are actually clones while others are not) using the same concept of the Dreambox i.e. Linux-powered. The Dreambox has evolved during the years and many models are present on the market. The first ones are/were using a firmware called "Enigma" but, more or less, with the introduction of High Definition TV, a new firmware was released, namely "Enigma2". One of the "revolutionary" features of the Dreambox was that you can connect it to your local network and this opened up a whole new word compared to ordinary satellite-receivers. To get further information, just google for Dreambox or look it up at Wikipedia.
Background for the application: You can read the original thread mentioned above to get an idea why people wanted an application like the one I am releasing. In a few words: since you can access the Dreambox (or any other satellite-receiver based on Enigma or Enigma2) through your local network or through Internet, there are many things you can do remotely (at work for instance) such as handling timer-events, read EPG etc. The ideal way of doing it, especially if you don't have access to a PC, is to use a handheld device. It was brought to our attention, that there are plenty of applications to do what mentioned above already available for download on the Appstore for iPhone.
for instance:
http://appspace.com/apps/view/38502/idreamremote/
http://appspace.com/apps/view/40338/dreamon/
So, it was suggested to write a similar application for Windows Mobile. And here it is, still in beta although with quite a lot of features implemented, even Streaming-support.
Current Features:
-Streaming
-Remote Control
-Bouquets-/Channels-lists from where you can:
1) change channel
2) view EPG
3) set timers
-Controlling the receiver (Shutdown, Reboot etc)
-Supports set-up of multiple profiles (e.g. At work, home, bedroom)
-Supports set-up of multiple streaming-profiles (Local LAN, WLAN, mobile)
Known issues:
-is not compatible yet with old WebIf (1st generation) of Enigma2
-there might be some problems with certain characters not appearing correctly (please report if you have this problem)
-in 320x240 version when setting up Enigma-profiles, you might need to click twice in the various textboxes.
Features to implement in upcoming versions (not necessarily in this order):
- SMS (Send shortmessages to the TV-Screen)
- improve error handling further
- other ideas/stuff
- user-suggestions (your feedback for improvements)
- re-design the remote-control using png-images instead of jpg which should make the application a bit smaller (and require less memory)
- resolving above mentioned issues
- other bug-fixes
- support for other receivers - requests I have received are for D-box2 and IPBox HD (non Enigma)
- cosmetic issues
- Https (SSL) support. (tested and working but needs a specific hotfix-version of CF.NET (published by Microsoft) due to a bug in CF.NET)
Requirements:
-Compact Net Framework (2.0 should be sufficient)
-an Enigma-based receiver such as the Dreambox, IPBox etc..
-for streaming, please see second post below
Installation:
Note: I have not made any CAB-file.
Note2: If you want to keep your old settings and streaming-profiles, you may do so. Just replace the old WMDreamRemote.exe with the new one.
1) download the zip-file attached to this post and extract the files on your computer.
2) Copy the files into a directory of your choice on your device (internal or
storage). The files must be in the same directory.
3) Run WMDreamRemote.exe. The first time, you will get a message
saying "No connection....".
4) Choose Preferences/Profiles from the main-screen and ADD a new
profile inserting your data. Put the flag on default for the profile you use the most.
5) Then click Save Profile.
6) Go ahead if you wish to add other profiles.
7) You may delete my dummy-profile "home" (only after having added your own though) using
the Del-button. NOTE: It's important that there is always one profile present (with Default selected)
otherwise there might be unexpected errors
8) On the main-screen, you can now use the remote-control by selecting its button
9) You may also see a bouquet/channel list by clicking on its button. However, the first time the list will be empty. Therefore,
10). Go back to Preferences/Profiles and select the profile you want to use. Now select the
button named "Create Bouquets for this profile". This will take a minute or two. It will download
your bouquets and channels from your Dreambox. Do the same for each Profile you create.
11) Now you can scroll your bouquets ad channels.
12) Set up streaming-profiles (3 dummy profiles are provided for Local-LAN, WLAN and mobile) - see second post for more information
There might be some unhandled error-messages occasionally. They are mostly due to connection-problems. Just click on continue and retry unless you have indeed a permanent error with your connection.
Please test it and let me have your error-reports, feedback and suggestions for improvements. Please also indicate which device, Dreambox (or similar receiver) you are using and which image.
I must also express my sincerest thanks to XDA-user ajocius for:
-giving me access to Enigma2,
-his superb beta-testing,
-sharing his knowledge about streaming
-and of course for the great video he posted on YouTube (see above).
I have also attached some screenshots.
PS: ANDROID - Just a note to tell you that I posted here on XDA an Android-application for watching your Dreambox in streaming (LocalLAN and 3G). I called the application AndroidDreamer and you can find the thread here: http://forum.xda-developers.com/showthread.php?t=861145
If you want to test and discuss AndroidDreamer, head over to the thread. Please keep this thread for WMDR.
PS2: WINDOWS - I have published a Windows-version (WinDreamRemote or simply WinDR). You can find it on my web-site: http://www.tillekesoft.com
For discussions regarding WinDR, please use the thread mentioned on my web-site. This thread here at XDA is for WMDR - mobile version. Please respect this.
This is it for the time being.
STREAMING
Streaming works great for me, especially at home (in my Local LAN) but also at work (using WIFI) and even at the supermarket using a mobile-connection (3G) although the quality degrades.
For you, I don't know - Streaming may work, may work so and so or may not work at all.
It depends on a lot of factors:
-For Local-LAN: your WIFI set-up at home (11g, 54g etc)
-For WLAN or mobile: upload/download speed of your Broadband (normally upload-speeds are slower than download-speeds (ADSL)
-Your device
-Your computer acting as VLC-server
-not finding the right configuration in stream-profiles settings
-etc
What you need:
1) VLC (Videolan). Just Google for it and install it on your computer which will act as the VLC-server. I have only tested streaming using VLC running on Windows but it should work on VLC-servers using Linux and MAC as well. If it doesn't, please let me know. I have only tested version 1.0.5 of VLC so I am unable to say if previous versions will work.
UPDATE (22/06/2010) - I just tested the new version of VLC no. 1.1.0 and it seems like WinDR is not compatibile with the latest version of VLC. So if you want to use WinDR, please ensure to use VLC 1.0.5 or earlier until I have resolved this issue.
2) TCPMP (free and which you can find here on XDA) or Coreplayer (not free). Make sure that ASX-files are opened by the program you installed (look in the programs' settings for file-association). Some say that TCPMP is faster to load the stream (5-6 seconds in my Local-LAN) than Coreplayer. On the other hand, some say that Coreplayer is more fluid. The choice is yours.
3) A rather modern and fast device. It might work with slower devices as well but you may have to play a lot with your VLC-configuration (bitrate etc) before you get it to work
4) and of course WMDR
How to set up everything:
1) install VLC on your computer which will act as the VLC (streaming) -server. Then under the menu, select "View" in the English version (not sure since I have it in Italian) and then select "Add Interface" and finally you select "Add Telnet-interface". If you haven't changed anything, the default password for Telnet is admin and the port in use is 4212. That's it. VLC must be running to get streaming working. There are options to install VLC as a Windows Service or you can create a bat-file to be executed upon launch of your VLC-server. I guess similar options are availabe on Linux and MAC as well.
2) if you are going to use streaming outside your Local-LAN, you must ensure that you have set up port-forwarding correctly in your router. You must ensure that the WebIf can be accessed. You must ensure also that port 4212 (for Telnet) is opened and forwarded to the VLC-server. The same goes also for the streaming-port on the VLC-server which TCPMP/Coreplayer needs to access to receive the stream. So, basically you need to set up port-forwarding for one port for accessing the WebIf of your Dreambox and two ports for accessing your VLC-server.
3) A typical VLC-command to get streaming going is as follows:
Code:
vlc.exe" -vvv [url]http://192.168.1.130:31339/0,0025,0384,0385,0295[/url] --sout #transcode{vcodec=MP4V,vb=384,scale=0,5,acodec=mp3,ab=64,channels=1,deinterlace}:Duplicate{dst=std{access=HTTP,mux=ASF,dst=192.168.1.12:8085}}
Here are some explanations:
- the part "vlc.exe" is handled by WMDR using Telnet. You don't need to anything except for filling in information regarding the IP-address of your VLC-server, its password and which port to use.
- the part
Code:
"http://192.168.1.130:31339/0,0025,0384,0385,0295"
is your dreambox-ip, the port used for streaming and some channel-parameters. These parameters are handled automatically by WMDR and do not require your attention
- the part
Code:
"#transcode{vcodec=MP4V,vb=384,scale=0,5,acodec=mp3,ab=64,channels=1,deinterlace}:Duplicate{dst=std{access=HTTP,mux=ASF,dst="
is the one you have to insert in WMDR and which you need to experiment with to get the best picture/quality/fluidity according to your connection-speed. WMDR is pre-installed with 3 examples which are working on my HD2, my WIFI (using 54g) and my ADSL with an upload speed of 512kb. You can use those as an example and then modify them according to your needs.
- the part "192.168.1.12:8085" is the IP of your VLC-server and the port which TCPMP/Coreplayer should connect to in order to get the stream. You fill in this information in the stream-profiles.
With this information, you can set up your streaming-profiles in WMDR. In the streaming-profiles, you will find an additional setting called "VLC Sleep Delay". You can leave it at 200ms as its default-value. This parameter is used by WMDR when "talking to" VLC via Telnet. If the connection is very slow, you can increase this value but normally, even on Mobile-connections, the value of 200ms is OK.
Above information should get you going.
If you have problems with streaming, look at the points mentioned above since it is unlikely due to WMDR itself and that I can do anything to resolve your problems.
Good luck!
TIPS AND TRICKS:
-To make TCPMP open up automatically in full screen mode, you can do the following registry-edit:
Code:
HKEY_LOCAL_MACHINE\Software\TCPMP\PLAY
DWORD 123
Change value from 0 to 1
-For associating the file-extension ASX with TCPMP, do as follows: In TCPMP it is under:
Options -> Settings (you need to scroll down to see that option) - > Click button "Select Page" - > File Associacions
Click to expand...
Click to collapse
-As far as I have understood, TCPMP has been discontinued but there are some people updating it from time to time. If you have problems viewing the stream, it may (perhaps) be because you are using an old version of TCPMP. Here are two links to TCPMP which I have found working on my HD2:
http://forum.xda-developers.com/showpost.php?p=5657963&postcount=1
http://forum.xda-developers.com/showpost.php?p=5685536&postcount=1
TROUBLESHOOTING
- If you get errors in TCPMP (unknown file format, crashes) or if you don't see anything at all, you can try the following to trace where the error originates:
Select Stream in WMDR and if you get an error message from TCPMP, just disregard the error and put your device on the table or wherever. Don't click on anything. Don't kill the stream. Now, in the folder of WMDR on the device, you should find a file called WMDR.asx. Copy this file to your desktop (on a PC). Go to your PC and right-click on WMDR.asx and choose "open with" and select VLC (it will open another session of VLC). If you now can see the stream from your Dreambox on your computer-screen, then it means that WMDR comunicates correctly with VLC and most likely there is a problem with TCPMP/Coreplayer or because the file is too large/complex to be seen on the device. If you don't see anything, then probably there is a communication-problem between WMDR and VLC. Check IP-address, Port and Password of VLC.
- Make sure that streaming actually works between your Dreambox and VLC (without using WMDR) and that you can watch the streams on your computer. You can test this by using the web-interface of your Dreambox or you can search internet for instructions. If you have problems (can't see anything at all, bad quality, buffering-problems etc), then the problem itself lies with the source and there is no way streaming will work in a satisfying way. For instance, it has been reported that cheap (clones of) DM500 might have problems with streaming.
is this like a remote control app for any settop boxes and tv's that uses ir port or is it limited to the Dreambox?
Sorry - it's not using an ir port.
The application controls the receiver through the receiver's web-interface or through telnet.
However, the application could probably be used with (and modified to support) other types of receivers as long as there is a way to communicate with the receiver via local network, wifi, data-connections or Internet. If anyone is interested, please let me know.
trickbiker121 said:
is this like a remote control app for any setop boxes and tv's that uses ir port or is it limited to the Dreambox?
Click to expand...
Click to collapse
tilleke said:
Sorry - it's not using an ir port.
The application controls the receiver through the receiver's web-interface or through telnet.
However, the application could probably be used with (and modified to support) other types of receivers as long as there is a way to communicate with the receiver via local network, wifi, data-connections or Internet. If anyone is interested, please let me know.
Click to expand...
Click to collapse
sorry this isnt the app that i thought it was sorry to bother you
Hi Tilleke
Very nice looking release. I'm really happy with it!
i have tested it and here are my results:
Main screen > remote controle > page 2 > the numbers are not working here.
Main screen > preferences > Create bouguets > This option crashed my dreambox with a blue screen like windows always do...
Remember this is NOT a comment, this is only to help you with this great app!
Great Job, keep going... and i will be waiting till next release.
Thanks for testing and posting your results.
Can you please let me know which receiver you have and which image you are running. And on which device did you test it?
Will check this better.
citychannel said:
Main screen > remote controle > page 2 > the numbers are not working here..
Click to expand...
Click to collapse
When creating the bouquets, did you follow the procedure written in the first post? I am saying this since that part is not fool-proof yet. Did you reach the point when a message appears indicating "Update ready" or did it crash before. BTW: I have never seen a crashed dreambox with a blue screen I'd love to able to reproduce that error
citychannel said:
Main screen > preferences > Create bouguets > This option crashed my dreambox with a blue screen like windows always do.....
Click to expand...
Click to collapse
Thanks!!
citychannel said:
Remember this is NOT a comment, this is only to help you with this great app!
Great Job, keep going... and i will be waiting till next release.
Click to expand...
Click to collapse
Hi there
1) I have a dreambox 7025 with enigma on it
2) i didn't saw ' update ready' the DM crashed 4 seonds after i pressed the 'Create Bouquets for this profile'
A new 'bug' i found is the time out bug. This error appears randomly after zapping between channels or using the volume buttons.
Good luck and thanks!
thanks for your report.
1) OK, you've got DM7025 and running Enigma(1). Are you using the original image or have you flashed another image such as Gemini, Nabilo...If yes, which one?
2) Can you access the WebIf of the DM7025 using your local network and using a normal web-browser? In your browser, you should use:
Code:
http://ip-address of DM7025:port
it should then ask you for a user-name and password, normally root and dreambox.
example:
Code:
http://192.168.0.83:8888
If you are using the standard port (80), it could also be:
Code:
http://192.168.0.83
When you are connected to the WebIf and clicking on ZAP, can you see your bouquets and channels?
3) The time-out bug: What message do you get. Can you please transcribe it? Does this happen when you are connected using WIFI or when you are connected using the data-connection of your phone-provider?
4) what device are you using?
Sorry, but I need above information otherwise I really don't see how to track down the errors you mentioned since I can't reproduce them on my system/device.
PS: I confirm that the numbers on the 2nd screen don't work. I forgot to enable a few lines in my code. Will be corrected in next version. Thanks for finding out.
citychannel said:
Hi there
1) I have a dreambox 7025 with enigma on it
2) i didn't saw ' update ready' the DM crashed 4 seonds after i pressed the 'Create Bouquets for this profile'
A new 'bug' i found is the time out bug. This error appears randomly after zapping between channels or using the volume buttons.
Good luck and thanks!
Click to expand...
Click to collapse
Hi, working on my hd2 with dreambox 7000 S (gemini 4.6).
But one issue: The programm can´t display the german letters ä, ö and ü (in programm-list and bouquets)
Glad it works.
Thanks for reporting the problem with the German letters. This probably means it would be a problem with other characters as well. I will check this issue and see if I can correct it in next release.
Bib_x said:
Hi, working on my hd2 with dreambox 7000 S (gemini 4.6).
But one issue: The programm can´t display the german letters ä, ö and ü (in programm-list and bouquets)
Click to expand...
Click to collapse
Can you add support for modacos´s apptodate?
http://www.modaco.com/category/332/apptodate/
http://forum.xda-developers.com/showthread.php?t=327990
Hi Tilleke,
1) Im running Enigma with Gemini on it
2) Yes i’m using Webif and i can zap normally without lag or error (192.168.1.12), so port 80
3) I am using a WIFI connection and after 2 or 3 times pressing downwards in bouquets it comes with this error:
An error occurred on sub_modcommon_executeurl
Response code -1
Timeout
Continue?
4) i am using a HTC TD2 with WM6,1 pro
Thanks in advance
The num pad on second screen isn´t working. Only the buttons on bottom (tv, radio, text, help) are working.
Thx for the suggestion. I'll see what can I do.
Bib_x said:
Can you add support for modacos´s apptodate?
http://www.modaco.com/category/332/apptodate/
http://forum.xda-developers.com/showthread.php?t=327990
Click to expand...
Click to collapse
Yep. Already reported by citychannel. See first post under known issues.
Bib_x said:
The num pad on second screen isn´t working. Only the buttons on bottom (tv, radio, text, help) are working.
Click to expand...
Click to collapse
Thx for the information. This will facilitate tracking down the error and how to resolve it.
citychannel said:
Hi Tilleke,
1) Im running Enigma with Gemini on it
2) Yes i’m using Webif and i can zap normally without lag or error (192.168.1.12), so port 80
3) I am using a WIFI connection and after 2 or 3 times pressing downwards in bouquets it comes with this error:
An error occurred on sub_modcommon_executeurl
Response code -1
Timeout
Continue?
4) i am using a HTC TD2 with WM6,1 pro
Thanks in advance
Click to expand...
Click to collapse
Thanks for your work
im a db fanatic and currently working on e2 image let me know if you need any help.
One small request:
Would be possible in future release to add a DyNdnS address facility ?
It already works...
I have a profile called "away" which I use to set timer-events when I am not at home. Set up a new profile and in the IP-address-field, just write your DynDNS-address and in the Port-field the port you are using.
You might, of course, need to enable portforwarding in your router-settings.
Hope this helps.
^^MeX^^ said:
Thanks for your work
im a db fanatic and currently working on e2 image let me know if you need any help.
One small request:
Would be possible in future release to add a DyNdnS address facility ?
Click to expand...
Click to collapse
A little bit offtopic:
Do you know which ports i have to forward in my router if i want to stream my dreambox-tv-program over internet with vlc?
Streaming in LAN works well, but i want to watch TV outside my home, too.

How to limit upload speed in Android?

Really not sure if I am posting this in the right place, so apologies if that's not the case.
I like dropbox's Camera Upload feature, but quite often I find that it will saturate my internet connection and everything else on my network struggles. Especially if it is uploading video recordings off my phone.
Is there a way to place a speed limit to the data upload rate? Kind of like a bandwidth limiter for Android?
mversion said:
Really not sure if I am posting this in the right place, so apologies if that's not the case.
I like dropbox's Camera Upload feature, but quite often I find that it will saturate my internet connection and everything else on my network struggles. Especially if it is uploading video recordings off my phone.
Is there a way to place a speed limit to the data upload rate? Kind of like a bandwidth limiter for Android?
Click to expand...
Click to collapse
Many Android kernels got support for traffic shaping, so you can use the "tc" shell command to implement what you need. Maybe there's some rooted app able to manage this for you, since it's quite a tricky task.
But this is not such a good idea. Instead you should implement the traffic shaping in your WiFi/Internet router. If it doesn't support it native, I suggest you try some other software for it, e.g. OpenWrt, DD-WRT or Tomato.
kuisma said:
Many Android kernels got support for traffic shaping, so you can use the "tc" shell command to implement what you need. Maybe there's some rooted app able to manage this for you, since it's quite a tricky task.
But this is not such a good idea. Instead you should implement the traffic shaping in your WiFi router. If it doesn't support it native, I suggest you try some other software for it, e.g. OpenWrt, DD-WRT or Tomato.
Click to expand...
Click to collapse
Thanks.
I have Tomato installed on an Asus RT-N66U router, but the bandwidth limiting options only work for LAN connections and not WLAN it seems.
A rooted app that puts a limit on a per app basis would be something I'd be happy to pay for.
mversion said:
Thanks.
I have Tomato installed on an Asus RT-N66U router, but the bandwidth limiting options only work for LAN connections and not WLAN it seems.
A rooted app that puts a limit on a per app basis would be something I'd be happy to pay for.
Click to expand...
Click to collapse
Hard to believe it's not working for WLAN connections, and even if so, you can apply the rules on the outbound Internet connection scheduling on source addresses. I.e. you can chose to implement the restrictions on either the receive- or transmit site. Do some more reading on QoS and I'm quite sure you'll manage to implement it as you need. But it IS tricky, even with the Tomato GUI, and would be as tricky as well using a rooted Android app.
And since I know it's not a such a good idea to implement traffic shaping in the Android itself, I'm not going to write this app.
Hey, I'm looking over internet for this exact thing, problem is my Galaxy Tab is hugging my internet, I need to limit it to say, 100kb/s up and down. My router is A-Link WNAP 3G router.
It would be even better to limit all WLAN traffic to 100kB/s because my computer is hooked with an ethernet cable :victory:
Can someone help me ?
kuisma said:
Hard to believe it's not working for WLAN connections, and even if so, you can apply the rules on the outbound Internet connection scheduling on source addresses. I.e. you can chose to implement the restrictions on either the receive- or transmit site. Do some more reading on QoS and I'm quite sure you'll manage to implement it as you need. But it IS tricky, even with the Tomato GUI, and would be as tricky as well using a rooted Android app.
And since I know it's not a such a good idea to implement traffic shaping in the Android itself, I'm not going to write this app.
Click to expand...
Click to collapse
You are very wrong that it isn't a good idea to implement traffic shaping. All new cloud applications have Camera upload feature which clogs the upload of the whole network and then you cannot even surf with your computer while photos are uploaded (not to say videos).
Traffic shaper would solve this things for sure! I would even pay for that app on appstore.
I used bandwidth ruler from the play store to limit upload speed in my galaxy SIII and it works like a charm. but that requires root to work ,
here is the link :
mversion said:
Really not sure if I am posting this in the right place, so apologies if that's not the case.
I like dropbox's Camera Upload feature, but quite often I find that it will saturate my internet connection and everything else on my network struggles. Especially if it is uploading video recordings off my phone.
Is there a way to place a speed limit to the data upload rate? Kind of like a bandwidth limiter for Android?
Click to expand...
Click to collapse
Dear Friend,
did you get what you was looking for?
because i am looking for an App which can control all or Each/ individual app to upload the files. likewise
google+ Google photos, Google hangout, Etc. which i hate the most to upload my photos . for them i have rooted my note4 and install AVAST Anti-Virus + Firewall to prevent the app to access the net .
Because i know what app we allow to access the internet they take away our personal information along with videos and photos which we don't know because our smartphones are 24/7 connected with DSL hight speed internet.
These type of Apps are fully controlled by the remote server to takeaway our data with minimum speed like 10KB to 30KB per mint.
I have already block the apps to access in the internet, but some reason i have to disable firewall, then most of the apps try to get updates, i need an app which can control /allow the app to upload in Bites not in KB or MB.
if you have something like that please advise
awaiting your reply
Thanks
Ismail

[Solv] SIP Proxy App for integrated SIP-Client / Use other Codecs with integrated SIP

EDIT: This question has been appropriately solved, see http://forum.xda-developers.com/showpost.php?p=38597450&postcount=12 for the solution
Hallo,
I know there are a lot of Softphones available for Android. But all (or most) of them show always a notification due to the foregroud service. In addition they must be started manually and take more or less ressources. Also you have to manage two Apps (normal phone and softphone). Some like CSipSimple are very unstable and sound-quality with ilbc Codec is also very low.
But Android has an integrated SIP client. In theory it is superior, BUT it lacks two main features: STUN and Codec choice, it uses always G.711u. G.711u with 64 KBit/s is quite heavy, there are much more efficient codecs.
Because I don't see this features coming and a google search to use another codec was with no success, it is time for a sip media proxy running in the phone. This transcodes the audio to other codecs and makes STUN available. Do you know any of those solutions or do I have to create one myself?
Or better: Do you know a way to change the Codec of the integrated SIP-Client?
(I know my app has to be a service as well and probably foreground-service, however I still would use the integrated dialer. It has a much better user experience than other softphones I know).
Thanks for answers.
SamsungPisser said:
But Android has an integrated SIP client.
Click to expand...
Click to collapse
By 'client', do you mean an app or are you talking about the native SIP framework: SipManager, etc. ? I've never seen a native SIP app on any of the three devices I have.
I mean native without any app. It is in the telephone "app". Take a look there http://www.voipvoip.com/android/sip.html how to configure.
Some providers take the native sip out. Then you need a rooted phone and to edit an xml file to bring it back. Just google how to.
BTW:
I found out, that the native sip client supports the following Codecs (not just one as I thought):
PCM a-law
PCM u-law
AMR
GSM
GSM-EFR
OK. This is what I thought. I'm developing a specialized VoIP client and I'm testing on two phones and a N10 tablet. The telephony app on the phones don't support SIP and the N10 doesn't have a telephony app (normal for a tablet).
I don't think that it's possible to add new codecs to an existing client. Here's my logic: All telephony clients are Android apps. The app dev can use the native SIP framework or use another. But when the app is compiled, the features of whatever SIP framework was choosen are essentially frozen, including the list of supported codecs. Unless the app knows how to discover new codecs, it is stuck with the original list until the app is re-compiled. Don't think that Android supports features to install and discover codecs in the device.
Your media proxy idea might work, but it would have to be a full proxy, not just one for the media stream. The SIP RFCs call this a B2BUA (back-to-back user-agent). The telephony app would be configured to call the local B2BUA and the B2BUA would register and place/receive calls with the remote SIP server. Admin would be a little funky because the user now has two phone thingy's to administer. Most users struggle with SIP on one phone app.
You probably know this, but the codecs are not implemented in the Android SIP classes, but in android.net.rtp.
I don't think that it's possible to add new codecs to an existing client.
Click to expand...
Click to collapse
I've never planned that.
The telephony app on the phones don't support SIP and the N10 doesn't have a telephony app (normal for a tablet).
Click to expand...
Click to collapse
I think it is only deactivated. Take a look here http://forum.xda-developers.com/showthread.php?t=1109962 there are instruction to enable it.
Would it be possible to install the native android telephony app on a tablet?
The telephony app would be configured to call the local B2BUA and the B2BUA would register and place/receive calls with the remote SIP server. Admin would be a little funky because the user now has two phone thingy's to administer. Most users struggle with SIP on one phone app.
Click to expand...
Click to collapse
I think that is not the problem, because you have to configure this only once.
I'm developing a specialized VoIP client
Click to expand...
Click to collapse
Do you have some names of free SIP / RTP and Codec implementation which would make it easer for me to develop the app?
I think it is only deactivated. Take a look here http://forum.xda-developers.com/showthread.php?t=1109962 there are instruction to enable it.
Click to expand...
Click to collapse
That only enables SIP on the existing phone client. It won't help if the client doesn't exist.
Would it be possible to install the native android telephony app on a tablet?
Click to expand...
Click to collapse
I don't think there is a native phone app for tablets. What I'm developing is a phone app that uses the native telephony framework.
I think that is not the problem, because you have to configure this only once.
Click to expand...
Click to collapse
You're probably right. Having good documentation (something that's missing from most phone clients) would help a lot!
Do you have some names of free SIP / RTP and Codec implementation which would make it easer for me to develop the app
Click to expand...
Click to collapse
Not really. (By 'implementation', I assume you mean app, not a library.) I've played around with SipDroid and LinPhone. LinPhone seems to be light weight and works well for testing against some of the telephony apps at work. But they all have bug/quirks and don't meet the standards of what I would expect in a commercial product. LinPhone sends non-standard keep-alives.
For my project, it will probably have to be closed source, so I can't touch the open source code. This is why I'm interested in using the Android native code.
That only enables SIP on the existing phone client. It won't help if the client doesn't exist.
Click to expand...
Click to collapse
I thought with Gingerbread there comes an integrated SIP on every phone (or it is deactivated, but can be activated) or how is removed from Android?
I don't think there is a native phone app for tablets. What I'm developing is a phone app that uses the native telephony framework.
Click to expand...
Click to collapse
Can't you just install the telephony app from another android device?
Not really. (By 'implementation', I assume you mean app, not a library.)
Click to expand...
Click to collapse
No actually I meant a library with that question.
Yes I also had several problems with linphone. I landed with Bria, but earlier versions keep a wakelock all the time. Newer version have problems with VPNs when you don't route all traffic through it. Btw integrated SIP also has a problem with VPNs where not all data is routed through, thats also a reason why I want to develop my app. And as already said, I want to have the native Android layout when there is a call.
Can't you just install the telephony app from another android device?
Click to expand...
Click to collapse
Maybe, but here's where my knowledge of Android devices falls short. (I'm primarily a Windows and embedded device developer)
I just did some poking around in the N10 directories using RootExplorer. There is a Phone.apk file, but it's not installed and fails if you try to install it. Probably a way to enable installation, but it's not my expertise.
Some help from an experience phone dev would be helpful ...
Did you find an approach in order to choose amongst the native SIP stack's built-in codecs?
I really need that feature as sound quality is bad on poor WiFi connections while it is ok when using a third party client which allows me to choose a codec that uses less resources.
Although, I would really like to stay with Android's built in SIP only...
Thanks
Not yet. Codec is automatically choosen and also depends what the other side supports. Because my Router and the integrated SIP both only understand PCM together this Codec is choosen. I plan to set up an asterisk server in between my router (Fritzbox) and the phone. I'll update here when it works.
OK thanks, please let us know
I now setup Asterisk as MediaProxy for the integrated SIP. This has two main advantages.
1. I use GSM Codec which uses (with overhead and so on) transmitting 4,48 KB/s (~36 KBit/s) and receiving 3,65 KB/s (~30 KBit/s), don't know why there is so much discrepance. With OpenVPN in between there is transmitting 6,13 KB/s (~50 KBit/s, Overhead 38 %) and receiving 5,5 KB/s (44 KBit/s, Overhead 46 %) on the line.
2. Android integrated SIP often uses wrong IP in the RTP header, so there is no audio. Asterisk corrects this.
With Asterisk I need no App on my Android device as I thought to correct the wrong IP issue.
My Asterisk is in my home network, not reachable from the Internet, only via VPN, so I did not take much measures to secure it. Please consider this when you copy my setup.
I made the effort to compile AMR into Asterisk because I hoped that it would use less bandwith than GSM. But you can save the effort. It uses exactly the same as GSM. Android integrated SIP support GSM and GSM-EFR. When you Wireshark you see that GSM and not GSM-EFR is selected/used. But the highest GSM profile is used, so I don't know if it is in fact GSM-EFR. GSM-EFR and AMR at this bitrate have the same quality http://en.wikipedia.org/wiki/Enhanced_full_rate
I use a Fritzbox where I register with asterisk as softphone, Fritzbox could also be your VOIP provider where you want to connect to.
Here the sip.conf
Code:
[ext1]
type=friend
context=meinKontext
host=dynamic ; Android SIP must register with Asterisk
nat=yes ; Even with VPN and no NAT present option needs to be set, corrects problem that integrated SIP chooses wrong IP in the RTP Stream
secret=YOURPASSWORD
dtmfmode=rfc2833
pedantic=no ; Offcially useless here, however needed here that calls can be terminated before other part has hung up, because Android integrated SIP does not correctly send cancel request
disallow=all ; Forces the usage of GSM Codec
allow=gsm ;
[fritzbox620]
type=peer
host=192.168.178.1
defaultuser=620
secret=YOURPASSWORD
insecure=invite,port ; Fritzbox has no password for Asterisk so invite must be allowed without credentials, port is needed because otherwise sometimes it will fail
dtmfmode = rfc2833
context=fritzbox620
nat=no ;Change to yes when you use an VOIP provider
fromdomain=fritz.box ; otherwise Asterisk would use its own domain
fromuser=620 ; otherwise asterisk would use the extension name
directmedia=no ; making transcoding possible
[general]
;Here are a lot of settings, please edit or add only the relevant
context=unauthenticated
register => 620:[email protected]
allowguest=no
pedantic=no
srvlookup=yes
And now extensions.conf for the dialplan
Code:
[meinKontext]
exten => _[0-9*].,1,Answer()
same =>n,Ringing()
same => n,Dial(SIP/${EXTEN}@fritzbox620)
;exten => _[0-9*].,1,Dial(SIP/${EXTEN}@fritzbox620) ;Would be better, because then you would see how long your call lastet, but integrated SIP in Android has a bug, when the called answers you hear for about 3 seconds another dial tone and now you have a delay of 3 seconds which makes talking very annonying, however this delay goes away within the first minute of the call, but still above solution avoids it. Compared to Bria VOIP client there is still a minimal delay on receiving site, but not on sending, but it is acceptable
[fritzbox620]
exten =>_[0-9*].,1,Dial(SIP/ext1)
exten => _[s],1,Dial(SIP/ext1) ;Accept calls where dialed number is unclear

Updated/Fixed wifi calling for ICS rom users

Hey guys when the latest RUU was released I pulled all the WiFi calling stuff out (well.. lots of bits and pieces) to update my fourth bar install... Figured I'd share it here. This will fix the increasing lag/delay with WiFi calling on all ICS sense based roms..
It shouldn't work on cm10 but i haven't tried it.I am pretty sure the movial implementation of WiFi calling requires many sense hooks though... But the interesting thing to me is that I have modified fourth bar quite a lot from the original to the point where there is practically no sensE stuff left whatsoever.. so it's either a modified telephony provider or it doesn't require sense at all... I haven't tested it much. Feel free to play around if you want.
Made this on the fly from my phone (and also is why I using DB) so let me know if it works if not I'll make one proper. Feel free to try on viper but if you do I'd suggest also.copying over htc frameworks.as well as telephony provider from a sense rom, just a suggestion!
You can tell.the update worked.because the WiFi calling active icon will be different. Oh and those using fourth.bar or speedrom..WiFi calling doesn't have to be permanent.. simply make a shortcut to the WiFi calling activity "wificall preferences" using apex or nova activity shortcuts.. you can also make shortcuts to the full IMS config including SIP reg server, auth info, protocol type, etc. I wouldn't mess with these.settings but could be useful to those porting. FLASH.THE ZIP.IN RECOVERY
LINK: http://db.tt/4B6tcCE1
(uHH... got a PM asking if it was odexed... these files are obviously deodexed..lol.. considering there's no .odex file... but yeah I mounted the system.img from the latest RUU, extracted it, deodexed the entire thing.. and pulled these out to make this zip. I've actually been combed through it with diff to the last RUU and there's really not a lot changed at all. Couple libs here and there, maybe a few other APKs... Not much at all!.. if you need it odexed, it's easy enough to reodex.. I actually prefer my phone to be odexed as well. Good tool to do this is called Dexo, The Universal Odexer.. you can find it on google. It's basically a couple of binaries and a script.. works like a DREAM and the basic script odexes your system apps as well as framework.. and it's easy enough to modify to odex data.. only thing with odexed data is you must delete the .odex file manually after you uninstall any apps because you'll get out of space etc errors if you do not... I find things are much MUCH faster on an odexed system, by far... matter of fact I'll go ahead and create another post with the Tool and a quick batch file I wrote for windows that makes the process very quick and easy.)
Good work :dance:
Just wondering, would there be anyway to get it to work with Miui
build.prop
might need to add this to the build prop if it isn't there
ro.ril.enable.ganlite=1
ro.ril.def.agps.feature=1
chevycowboyusa said:
might need to add this to the build prop if it isn't there
ro.ril.enable.ganlite=1
ro.ril.def.agps.feature=1
Click to expand...
Click to collapse
actually I think that's for the Kineto Gan implementation of Wifi calling, which uses a Userspace application (The one we tried to port over for Viper)
This is actually the Movial IMS implementation. Have you tried this implementation on viper perhaps? You would need some framework files, I think... but it's worth a shot honestly. I don't think it's as tightly hooked into Sense as a lot of us originally thought. I decompiled all of the APKs and I combed through it and I didn't really see any hooks into Sense.. I think that it more than likely depends on a modified telephony provider..
The Kineto Gan implementation used a bit of trickery with what's called a RIL switch, where it would (as the name implies) basically switch the RIL out on the fly between Kineto's RIL (for wifi calling) and the normal one. This implementation is a lot cleaner, and the configurations are included within the files themselves... It actually uses SIP. All the configuration info is actually easily found within the XMLs once the APKs are installed as system apps. The trickery is with the authentication. I've been running wireshark and capturing packets... between that and decompiling the APKs it appears that a basic SIP registration address is used for everyone, it's not unique. There's some kind of SIP address->mobile number translation that happens... the IMS project is open source, and the full source code is actually available on Google Code.. and it has even been updated for Jelly Bean. The interesting part is, I was able to compile the IMS Test App for ICS, take the configuration information I found.. entered it into the test App, and was able to establish half-way working service with the Test application. The thing is, even though it uses SIP, it's not your everyday run of the mill SIP. There's some wrapping and translation going on that uses info contained in the packets to determine where it's going (mobile number).. and don't even get me started on Text Messaging.... that looks like one giant hack-job...basically hijacking the SIP/RTP protocol for a proprietary implementation that just uses the base outline.
I tried to register with a regular SIP client using the configuration information I found (The password was TMO-VOIP-TRIAL) and i couldn't establish registration... and looking at the source I could definitely see why. There's a lot of stuff going on behind the scenes.
The good news is there's VERY LITTLE that appears to have been changed when it was updated for jellybean... what this means is... theoretically if someone was skilled enough they could take the DIFF's (which are freely available on google code) and update the IMS implementation for jellybean. It would take a good amount of time and effort, but I honestly think it's much more possible than a lot of people originally believed. It's the authentication part that's tricky..
But yeah, you might want to give it a shot on Viper! For a start I would probably move over ip-provider.apk, ims-service.apk, IPService.apk, WifiCall.apk (This is basically the on/off switch that Settings calls.. you can just use an activity shortcut to reach it though), and gba-service.apk
Push those all to /system/app
Then on the framework side I would move over javax.obex.jar, gba-service-lib.jar, and the other important one is going to be jsr-api.jar... I didn't know that it was related but it's clearly defined in the IMS source code (https://code.google.com/p/the-ims-open-source-project-for-android/source/browse/#git/jsr-api)
I would also copy over TelephonyProvider.apk and Phone.apk, for good measure. .. and see what happens.
You would need a way to trigger it ON, which can easily be done with Nova/Apex by making an activity shortcut to WIfiCall.apk, you can also make activity shortcuts to all the configuration options within the IMS-server itself but it comes preconfigured.
it's worth a shot... currently WiFi calling is working flawlessly for me on Fourth Bar and I have pretty much EVERYTHING htc related disabled. Including com.htc etc...
Could be in the HTC frameworks though.. or somewhere else... but it's def. worth a shot!
I think this is a awaresome job,although I don't know what's this...
Please do that!
Great work. I tried your file to no avail. Good catch on the other files. I read somewhere that phonesky is also required.
Biggest issue I had with the semi working one that I used is that it wouldn't read the SIM. I moved some files around and then it hung on connecting to the Wi-Fi due to a lack of server address
I'll follow your instructions tonight and see where I can get... I still am working on GPS and now vpn too. Last night I attempted a sense 3.6 venom build.
Wasn't pretty. Something kept failing in the updater script and I got too tired to pay with it..
**tried all the files and made the short cut..
No love.. It didn't work..
Still trying a few things
Any other ideas?
chevycowboyusa said:
Great work. I tried your file to no avail. Good catch on the other files. I read somewhere that phonesky is also required.
Biggest issue I had with the semi working one that I used is that it wouldn't read the SIM. I moved some files around and then it hung on connecting to the Wi-Fi due to a lack of server address
I'll follow your instructions tonight and see where I can get... I still am working on GPS and now vpn too. Last night I attempted a sense 3.6 venom build.
Wasn't pretty. Something kept failing in the updater script and I got too tired to pay with it..
**tried all the files and made the short cut..
No love.. It didn't work..
Still trying a few things
Any other ideas?
Click to expand...
Click to collapse
Hmm... there IS a build.prop entry that I actually just noticed
ro.ril.ims=1
I would try to add that.
Phonesky is just the updated google play market, I believe.
I would try that build.prop entry, then get a logcat if you can and post it. I'd try but currently can't really mess around with my phone as I need wifi calling for work stuff.
See what is going on in the logcat, or post it and I'll comb through it. See if there's API calls that are failing under something like Function does not exist or something or another.. that would seem to indicate some missing framework stuff that provides those functions. Then it might just be including said frameworks as well as altering the bootclasspath in the kernel (Pretty easy thing to do, just break the boot.img into parts with unpackbootimg, un-gzip the ramdisk with gzip and CPIO, edit the init.rc, recompress the ram disk with GZIP, then recompile the boot.img with mkbootimg) and I believe you'd also have to deodex the ROM itself, then if you wanted it odexed you'd have to odex it back with the correct BOOTCLASSPATH or else it will not boot. I'm not sure but I THINK deodexed APKs need to be built with the right bootclasspath.
There HAS to be a way to get it working on Viper. After all it's the same underlying android OS version.. The sensation guys got it worknig on CM9...
ok..
ericdjobs said:
Hmm... there IS a build.prop entry that I actually just noticed
ro.ril.ims=1
I would try to add that.
Phonesky is just the updated google play market, I believe.
I would try that build.prop entry, then get a logcat if you can and post it. I'd try but currently can't really mess around with my phone as I need wifi calling for work stuff.
See what is going on in the logcat, or post it and I'll comb through it. See if there's API calls that are failing under something like Function does not exist or something or another.. that would seem to indicate some missing framework stuff that provides those functions. Then it might just be including said frameworks as well as altering the bootclasspath in the kernel (Pretty easy thing to do, just break the boot.img into parts with unpackbootimg, un-gzip the ramdisk with gzip and CPIO, edit the init.rc, recompress the ram disk with GZIP, then recompile the boot.img with mkbootimg) and I believe you'd also have to deodex the ROM itself, then if you wanted it odexed you'd have to odex it back with the correct BOOTCLASSPATH or else it will not boot. I'm not sure but I THINK deodexed APKs need to be built with the right bootclasspath.
There HAS to be a way to get it working on Viper. After all it's the same underlying android OS version.. The sensation guys got it worknig on CM9...
Click to expand...
Click to collapse
I fixed VPN and I'm uploading it in a few. I think I noticed something as well. I went back to stock ota to see what was going on and noticed wifi calling isn't showing up in settings/more should be there with vpn/ wifi hotspot/ nfc etc....
ericdjobs said:
The trickery is with the authentication. I've been running wireshark and capturing packets... between that and decompiling the APKs it appears that a basic SIP registration address is used for everyone, it's not unique. There's some kind of SIP address->mobile number translation that happens... the IMS project is open source, and the full source code is actually available on Google Code.. and it has even been updated for Jelly Bean. The interesting part is, I was able to compile the IMS Test App for ICS, take the configuration information I found.. entered it into the test App, and was able to establish half-way working service with the Test application. The thing is, even though it uses SIP, it's not your everyday run of the mill SIP. There's some wrapping and translation going on that uses info contained in the packets to determine where it's going (mobile number).. and don't even get me started on Text Messaging.... that looks like one giant hack-job...basically hijacking the SIP/RTP protocol for a proprietary implementation that just uses the base outline.
I tried to register with a regular SIP client using the configuration information I found (The password was TMO-VOIP-TRIAL) and i couldn't establish registration... and looking at the source I could definitely see why. There's a lot of stuff going on behind the scenes.
Click to expand...
Click to collapse
How was the Test App half-way working for you? I didn't compile it, but I tried an apk I found a while back and it CLAIMED it was registered, but I couldn't make it call out. I tried random presence and subscribe options but I don't think they were taking and nothing happened when I called my mobile number from somewhere else. My guess is that I have to subscribe or set presence to something magic for my phone number. After not really finding what I should actually be doing from skimming the 4th or 5th spec, and noticing that the nexus 4 guys have a $1400 bounty and don't really have progress, I gave up.
Yeah there's a pile of authentication (on both sides) that IMS has over SIP. If I understand right, the first part of registration is similar, but then TMO's side says you're unauthorized along with a challenge that's supposed to be sent to the ISIM and part of a key for establishing an IPSec tunnel that everything else goes through. Can't tunnel, then use SIP because you need the key (and part of that probably comes from the ISIM too), and a regular SIP client will just think it failed.

[APP][4.0.3+ & GB][XPOSED] LightningWall

Xposed app firewall.
This app is an firewall for the installed apps. Only apps with permission "android.permission.INTERNET" are
shown. IPv4 and IPv6 are supported together with TCP and UDP. You could configure outgoing and incomming
connections independent from each other.
The rules could be applied for each network: W-Lan, local network, mobile, roaming, unknown.
Logging is configurable for incomming/outgoing and allowed/denied connections.
Colors:
Blue: Template is used.
Yellow: Custom settings.
Green: The app is trusted.
Red: The app is blocked.
Features:
No iptables required, the kernel doesn't need to support it.
The firewall is active when Android starts, no startup data leak.
The rules are always active, no re-apply on connection change is needed.
Limitiation:
Host names in the log file are PTR entries.
Works only for Android (Java), not the native (Linux) part
Donation:
No self-promotion in the app.
You could trust or block an app (Menu/ActionBar)
You could use a template for not configured apps
Additional (experimental) networks: Bluetooth, WiMAX, Ethernet
Tasker support, per App
You support this app and further development!
Permissions:
ACCESS_SUPERUSER: apply iptables rules
This app does not connect itself to any websites or hosts!
Important:
This app needs the Xposed Framework. The framework requires root access for installation. Don't forget to enable the module in Xposed. You can grab it here: Xposed Installer
Website: http://tinyurl.com/l5bpv23
Play Store: http://tinyurl.com/ome2pvc
Xposed Repository: http://tinyurl.com/ksc6plz
Changelog: http://tinyurl.com/n8gsqja
Why this app? No firewall for Xposed exists yet
Translation:
You could find here a interface to translate the english strings: http://tinyurl.com/okycacj
A free account of www.oneskyapp.com is required to edit. Additional, please attach your email address or send it via PM
Insane.. I was looking for something like this about 12 hours ago.. its almost like you read my mind and made it just for me!.
I like your style. Nice and simple and keeping it in line with your others.
Sent from my GT-I9300 using Tapatalk
Downloading now.
Sent from my SCH-I535 using XDA Premium 4 mobile app
shivadow said:
Insane.. I was looking for something like this about 12 hours ago.. its almost like you read my mind and made it just for me!.
I like your style. Nice and simple and keeping it in line with your others.
Sent from my GT-I9300 using Tapatalk
Click to expand...
Click to collapse
Maybe you head me thinking loud 6 weeks after starting this app: "i will release today, if there are still error, i'll fix them later"
Am I correct in assuming this is not open source?
I got a question about incoming/outgoing connections, maybe somone else want to know:
Incoming connections are used by less than 1% of all apps. This is used if the app is a "server", like BubbleUPnP. So most time incoming conections could be blocked, i think for mobile network 100%.
An outgoing connection is like a phone call: You call someone (outgoing connection), and can talk (send "data") and hear (receive "data")
Wifi Internet and Network:
If you want to control eg your local tv-receiver, xbmc device or avm router (with FreetzMobil), only connections to the local network are required. This prevents app to send data to the internet.
The "local network" are all "private" IPv4 and IPv6, they will not be forwarded by internet routers. Additionally, if you use "public" IPs they are local if it is in the same subnet as a ip of your device. Uncommon for IPv4 usage, but public IPv6 are the common usage (public IPv6 for every device)
an0n981 said:
Am I correct in assuming this is not open source?
Click to expand...
Click to collapse
As usual i send source only to people i know
I took this mod for a quick test drive, a little feedback:
-Is it not possible to restrict kernel?
-Could it be that apps that use native libraries to connect to the internet cannot be restricted? Firefox and Mega (both use native libraries) were able to connect even when completely restricted.
Also a little cosmetic issue com.android.process.gapps showed completely green at all times. However restrictions were applied properly
an0n981 said:
I took this mod for a quick test drive, a little feedback:
-Is it not possible to restrict kernel?
-Could it be that apps that use native libraries to connect to the internet cannot be restricted? Firefox and Mega (both use native libraries) were able to connect even when completely restricted.
Also a little cosmetic issue com.android.process.gapps showed completely green at all times. However restrictions were applied properly
Click to expand...
Click to collapse
Yes, see OP: "Limitiation: ... no native binaries." This is because the design of Xposed
Isn't it "com.google.process.gapps"? Onyl this one app has the wrong colors? Has it a green dot for "trusted app"? What did you configured for it?
Yes I meant com.google....
I set it from template to custom, blocked everything, however in the app overview it still showed as all green. When it was restricted GCM was blocked and the log showed blocked connections to mtalk.google.com:5228. Then I unrestricted outgoing mobile and wifi and GCM was available and the log correctly showed allowed connections but the colors in the app overview didn't change
Version 1.0.1 uploaded
- fix "incoming" thx @w0rinal
- also an error related to coloring, @an0n981 can you check if it fixes your problem? Toggling options could be required
defim said:
- also an error related to coloring, @an0n981 can you check if it fixes your problem? Toggling options could be required
Click to expand...
Click to collapse
Sorry the bug is still present
Also 1 more questions. Do you see any problem running this along side AFWall?
The bug affects any app that starts end ends with <>. <android.media> and <org.mozilla.firefox.sharedid> also always revert back to displaying completely green once the app is reloaded
an0n981 said:
Also 1 more questions. Do you see any problem running this along side AFWall?
Click to expand...
Click to collapse
No, should work without problems. The one created iptables rules other hooks the connection methods - if one fails, the other does it
an0n981 said:
The bug affects any app that starts end ends with <>. <android.media> and <org.mozilla.firefox.sharedid> also always revert back to displaying completely green once the app is reloaded
Click to expand...
Click to collapse
The "<>" entries are not real apps (.apks) with a package name, they are uids. At app start i load all installed apps with internet-permission and hide apps which are no more installed / have not any longer the permissions -> the uid items are not in the list of installed apps (obviously)
Will be fixed in next release
EDIT: Uploaded
This is awesome ?
A few questions:
- is there a way to edit template? I couldn't find it anywhere in settings- am I missing something?
- Can you add multiple selection? For example, someone has lots of apps and wants to block roaming to them etc. etc. without having to change it manually for each app.
- filtering or sorting apps? perhaps something simple like the way afwall , or a more thorough filter like XPrivacy has?
Sent from my Nexus 5 using Tapatalk
defim said:
The "<>" entries are not real apps (.apks) with a package name, they are uids. At app start i load all installed apps with internet-permission and hide apps which are no more installed / have not any longer the permissions -> the uid items are not in the list of installed apps (obviously)
Will be fixed in next release
EDIT: Uploaded
Click to expand...
Click to collapse
Confirmed fixed
jaibar said:
This is awesome ?
A few questions:
- is there a way to edit template? I couldn't find it anywhere in settings- am I missing something?
- Can you add multiple selection? For example, someone has lots of apps and wants to block roaming to them etc. etc. without having to change it manually for each app.
- filtering or sorting apps? perhaps something simple like the way afwall , or a more thorough filter like XPrivacy has?
Sent from my Nexus 5 using Tapatalk
Click to expand...
Click to collapse
The template is used for all "blue" apps, which where are not configured by user. Modifying template is part of the donator options (see OP).
Btw, next planned feature: detection of VPN connections
defim said:
The template is used for all "blue" apps, which where are not configured by user. Modifying template is part of the donator options (see OP).
Btw, next planned feature: detection of VPN connections
Click to expand...
Click to collapse
Nice feature !
I dry tested this app (i.e. not checked in the Xposed module on my device) and already saw that the VPN was missing. Now I use AFWall+ which is good and has more profiles. I block all Google apps with it with a 'limited internet' profile and every time I download something from Play, I load another profile which allows 'Google Play services' and 'Google Play store' internet connection and after download/update I revert to 'Limited internet'.
On my Mac I have 'Little Snitch' firewall which has the ability to let it prompt for certain apps which I don't want to be connected permanently (such as the Mac App Store), but only when I do e.g. an OSX update. In that case I let it prompt and say 'only this time'.
A similar approach on LightingWall should be very welcome. E.g. a notification that the Play store wants to connect with internet and when one wants to download / update an app, say 'only this time' and not permanently.
mermaidkiller said:
Nice feature !
I dry tested this app (i.e. not checked in the Xposed module on my device) and already saw that the VPN was missing. Now I use AFWall+ which is good and has more profiles. I block all Google apps with it with a 'limited internet' profile and every time I download something from Play, I load another profile which allows 'Google Play services' and 'Google Play store' internet connection and after download/update I revert to 'Limited internet'.
On my Mac I have 'Little Snitch' firewall which has the ability to let it prompt for certain apps which I don't want to be connected permanently (such as the Mac App Store), but only when I do e.g. an OSX update. In that case I let it prompt and say 'only this time'.
A similar approach on LightingWall should be very welcome. E.g. a notification that the Play store wants to connect with internet and when one wants to download / update an app, say 'only this time' and not permanently.
Click to expand...
Click to collapse
Xprivacy implements a similar thing, allowing the user to be informed when one of the restrictions are asking for access of that permission, including internet permissions(no distiction between lan or vpn), i would also welcome an on demand prompt feature for this app, its one faeture i wished afwall had, but believe it cant because of the nature of iptables i believe,
Saying that im also kinda worried that this might conflict, two apps essentially fighting for control to "pause" the system, hope im wrong, maybe if the two devs of the two respective apps co-orporated in implementation,it might be resolved, if there is an issue, i dont know........... but im getting ahead of myself here, defim has not even stated that he'll implement this, still, no harm in discussing possibilities, slim or not
@banderos101 @mermaidkillerIf you want to be informed if an app is allowed or denied to access some hosts, you could get it with Tasker. Just with a simple message box or more enhanced things Tasker can do. It should not be a problem using this app wiht Xprivacy, AFwal etc. If you block a connection with one app, it could be that the others can't see/log it. This depends on the order of the apps, An iptables firewall should be the last the connection is passing.
A per host filter is not planned, if you want to stop connection to some (tracking, malwar, adware) hosts a hosts file filter could be used, like my UnbelovedHosts
defim said:
As usual i send source only to people i know
Click to expand...
Click to collapse
Too big a risk to take for security software like this. Post your work up on Github under a reasonable license.
I'm not seeing a big advantage over the GPL AFWall+ anyway.

Categories

Resources