logo

Wow! I just fixed this weird Wifi Bug with my Nexus4 Phone. I noticed that everytime my Bluetooth was...

Wow! I
just fixed this weird Wifi Bug with my Nexus4 Phone. I noticed that everytime my Bluetooth was on my Wifi breaked down totally. The Icons were still in place but no Data was transfered.
After Booting in Safe Mode everything went fine again. In Normal Bootmode again its still Bugged. I digged into the Last Updated Apps and looked at all the Running Services.
I noticed that the App "barcoo" had gotten a new feature called "iBeacon". It uses the Bluetooth 4.0 Low Profile mode to notify you when youre near a shopping place, basicly it display advertisements when you standing in front of the shelf. So this App Feature apparantly bugs out. TL;DR if you have trouble with your Wifi when Bluetooth is enabled: check your Apps that uses Bluetooth Features and try do deactivate them. [#w]

For those who suffer from no sound after hibernate / sleep with a Intel HD-Audio Soundchip. I have this...

For those who suffer from no sound after hibernate / sleep with a Intel HD-Audio Soundchip.
I have this Setup on an GIGABYTE GA-C1037UN-EU.
Try this script, it will kill all soundapps and remove the intel soundmodule from the linux kernel.
After resuming the PC the script reloads the Module.

place the script in /etc/pm/sleep.d
call it 49_sound_fix

function kill_sound_apps() {
pidsnd=$(lsof | grep /dev/snd | awk '{ print $2 }')
pidmixer=$(lsof | grep /dev/mixer | awk '{ print $2 }')
piddsp=$(lsof | grep /dev/dsp | awk '{ print $2 }')
kill $pidsnd $pidmixer $piddsp
}

case "$1" in
hibernate|suspend)
kill_sound_apps
modprobe -r snd_hda_intel
;;
thaw|resume)
modprobe snd_hda_intel
;;
*)
;;
esac

exit $?

chmod +x /etc/pm/sleep.d/49_sound_fix
[#w]

Setting up a Socks Proxy over SSH on Windows If we wanna open the Tunnel automatically on Startup we...

Setting up a Socks Proxy over SSH on Windows

If we wanna open the Tunnel automatically on Startup we need passwordless ssh login with Private/Public Keys
For this use puttygen.exe from http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Get plink.exe to
Its a command line interface for putty

First create a new Key pair with Puttygen.exe, add the public key to your servers .ssh/authorized_keys
If the .ssh directory doesnt exist, use ssh example.com and say Yes

Store the private Key on your PC.

With
plink.exe -ssh <proxyIp> -l <user> -i <path/to/privateKey.ppk> -D <localport> -N
we create the Tunnel, -N supresses the login shell

we now could simple put that in a .bat file and run it on startup, but it would spawn a cmd shell that must stay open.

A better solution is a Windows Service,

load the Windows Server 2003 Resource Kit Tools
http://www.microsoft.com/en-us/download/details.aspx?id=17657

Swith into the Tools Directory with a root cmd shell
instsrv.exe <TunnelServiceName> <fullPathTo>srvany.exe

The Service is now installed, we need to configure it.

save that as *.reg file

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\<ServiceName>\Parameters]
"Application"="<pathTo>plink.exe"
"AppParameters"="-ssh <proxyIp> -l <user> -i <path/to/privateKey.ppk> -D <localport> -N"
"AppDirectory"="<pathToPlink.exe>"

Now the Service automatically Starts on Bootup and opens the Tunnel. On Standby or Hibernation though, the Tunnel just collapse.
For this we need to Trigger a Service Restart on relogging. We could also react on the Power event but that covers not all Power Saving Features.

SocketRestarter.xml:

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2013-11-01T23:20:18.1334498</Date>
    <Author>##PCName\##USERNAME</Author>
  </RegistrationInfo>
  <Triggers>
    <SessionStateChangeTrigger>
      <Enabled>true</Enabled>
      <StateChange>SessionUnlock</StateChange>
    </SessionStateChangeTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>##PCName\##USERNAME</UserId>
      <LogonType>InteractiveToken</LogonType>
      <RunLevel>HighestAvailable</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>true</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>false</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>P3D</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>C:\Windows\System32\sc.exe</Command>
      <Arguments>stop ###ServiceName###</Arguments>
    </Exec>
    <Exec>
      <Command>C:\Windows\System32\sc.exe</Command>
      <Arguments>start ###ServiceName###</Arguments>
      <WorkingDirectory>4</WorkingDirectory>
    </Exec>
  </Actions>
</Task>

Now we can use localhost <Port> as Socks5 Proxy, Cool! =)
[#w]

PuTTY Download Page


New Google Maps API for Android #android   #androiddev A new Google Maps API is available for Android...

New Google Maps API for Android
#android   #androiddev  

A new Google Maps API is available for Android. It brings long awaited features such as vector-based 2D maps, 3D maps and fragments support. Go check it out!

http://android-developers.blogspot.fr/2012/12/new-google-maps-android-api-now-part-of.html

Android Developers Blog: New Google Maps Android API now part of Google Play services


#androiddev #droidcon #polaris #clustering  I've had to hack quite a few things into Google Maps for...

#androiddev #droidcon #polaris #clustering 

I've had to hack quite a few things into Google Maps for various Android projects and I always meant to open source something but never quite got round to it. Now that +Cyril Mottier has produced this fine Polaris project (enjoyed your Droidcon UK project btw!) I thought I'd contribute a cool and often requested maps feature: Clustering.

If you're already using Polaris and want to enable clustering all you have to do is create a Clusterer object and feed it your original Annotations (OverlayItems) and it will give you back a reduced set (replacing overlapping ones with cluster spots) so that you can add them to your PolarisMapView.

You can optionally create a custom ClusterConfig object which tells the clusterer the thresholds for low, medium & high cluster spots) e.g. 

Clusterer clusterer = new Clusterer(mMapView, annotations, new ClusterConfig(4, 8));
    mMapView.setAnnotations(clusterer.getClusters(), R.drawable.map_pin_holed_blue);

If you need it now, then you can take a look at:
https://github.com/damianflannery/Polaris/tree/clustering

with sample apk here:
https://github.com/damianflannery/Polaris/downloads

I already sent a pull request to Cyrill. Hopefully it will be integrated into Polaris proper when he gets some free time :)

Over the past few Months i tested varius Music Streaming Providers and want to write down a few of my...

Over the past few Months i tested varius Music Streaming Providers and want to write down a few of my impressions.

The first Service i've tested was #Pandora. Pandora itself is a pure Internetradio so you cant search and listen to a specific song. You search for your favorite Artists and create a radiostation that will play only Songs of the same sort of Music Genre. Pandora uses a special algorithm to categorize the Songs, the Project behind is the 'Music Genome Projects'. The Player itself runs Inside the Browser and there is a App for your Mobile Device. A Ad is played after 3-5 Songs each. As a result: The 'algorithm' itself dont work so well for me. Sure it plays only Songs from the same Genre but in comparison to other Streaming Services it generates the weaker result.

The next Service that i have tested was #Spotify. Spotify was one of the first Music Streaming Services and has a quite large Music Libary. Unlike Pandora you can search for a specific Song or Album inside the Spotify Player. The Player itself has the look and feel of Winamp or the Windows Mediaplayer. Songs are played either direct from the Search or with the Radio feature. Radiostations behave the same like the stations inside Pandora but with better Songchoices. I cant describe the 'better' but i've found me listening to a Spotify Radio for Hours not realizing that i listening to a Radio. The Player Programm also support so called Apps that enhance the Player, Examples are Tunewiki (You see the Lyrics with the actual line highlighted, great for Karaoke :P) or Sounddrop were you can Join a Genre Room and hangout with other People that like this sort of Music. You can Vote for the Next Song played or nominate Someone to be the DJ, really cool stuff.
Another thing that gets my Heart is the sleek Control inside the Player. A example: When i listening to a Radio and i want to listen to a specific Song i either can choose to queue that Song up or played direct. When the Song has finished the Radio continuing to play. But when i search for an Album it plays the the next Song when finished the first selected Song. Little features that make me smile :-).
On the Downside: Spotify requires a Facebook Account and has many Social Functions like sharing Playlists, Friendslists, it surfs literally on the Social Media wave. Another big bummer is that Spotify follows the P2P approach. Thats means that your Client will upload Songs that you have in your Cache to other Spotify Users (also if you have a Premium Account!). The Files inside the Cache are encrypted and the Songs are paid but thats a big problem when you want to use Spotify at work or other shared Networks.

Yesterday i've tested #Deezer, it also has a Browser Interface and mobile Support, handling is simmilar to Spotify but the algorithm for choosing new Songs when listening to Radio is also weaker than Spotify. Deezer also require a Facebook Account to register. A cool feature in the Radio Section is that you can dislike some Artists that are simmilar to your choosen Genre.

PS: For all German Users: Spotify will launch tomorrow in DE!

Got problems including the +1 Button on my website. I slowed down the loading times alot, it was slightly...

Got problems including the +1 Button on my website. I slowed down the loading times alot, it was slightly my fault because i have no pagination but i managed to get a good solution.
I load the Buttons explicit and dynamically when the article comes into sight. #JQuery Waypoint is the libary to acomplish that with ease.
Also i added a Google Badge for +Android Developers
What do you think? Its slidely slower on the loadtimes.

Posts - corazza.de


Finally getting my Radius Location #JPA #JPQL Query working! yay I wanted to get all locations ne...

Finally getting my Radius Location #JPA #JPQL Query working! yay

I wanted to get all locations near my current location inside a given Radius.

The key is that you can call SQL Functions inside JPQL with the FUNC function. Also you dont need to join anything and you have to evaluate your distance inside the WHERE not prepairing the distancevalue inside the SELECT.

return em.createQuery(
"SELECT i FROM Index as i"
+ " where "
+ "( 6371 * FUNC('acos', FUNC('cos', FUNC('radians', <yourlat>) ) * FUNC('cos', FUNC('radians',i.location.lat ) ) * "
+ "FUNC('cos',FUNC('radians',i.location.lng ) - FUNC('radians',<yourlng>) ) + FUNC('sin', FUNC('radians',<yourlat>) ) * "
+ "FUNC('sin',FUNC('radians',i.location.lat ) ) ) ) < :radius")
.setParameter("radius", radius)
.getResultList();

the 6371 is the km constant, if you need miles you can set it to 3959

Reshared post from Derya Unutmaz Researchers have recently discovered four new chameleon speci...

Researchers have recently discovered four new chameleon species, which rank among the world’s tiniest reptiles. Adults of the smallest species are just over an inch from snout to tail.

The four new species belong to the genus Brookesia, also known as the leaf chameleons, which live in remote rainforests in northern Madagascar. The genus is already known to contain some very small species, with members typically resembling juvenile versions of larger species.

As small as these guys are, a super-tiny dwarf gecko found in the British Virgin Islands might be just a tad more wee.

source: http://www.wired.com/wiredscience/2012/02/tiny-chameleons/


Today i thought about how many Tabs i have opened in my Browser, things started to get messy. I c...

Today i thought about how many Tabs i have opened in my Browser, things started to get messy. I came across this nifty little line of code to count my tabs:
javascript:var w=Components.classes['@mozilla.org/appshell/window-mediator;1'].getService(Components.interfaces.nsIWindowMediator).getEnumerator('navigator:browser'),t=0;while(w.hasMoreElements())t+=w.getNext().document.getElementById("content").mTabs.length;alert("You have "+t+" tabs open");

oh, and only 1,3GB Ram usage on Firefox 10.0! Not slaggy at all.


Reshared post from Rupert Rawnsley The Android SDK Manager (which is a download manager for An...

The Android SDK Manager (which is a download manager for Android developers) just added Sources for Android SDK to the latest release. This allows you to easily step through the source code when debugging, which was sort of possible before, but frankly a huge hassle to get working.

According to cryptic comment 149 near the bottom of this discussion http://code.google.com/p/android/issues/detail?id=979, they will be adding this to all releases going forward, but not retrospectively.


Reshared post from Nathan Wong Some of today's #Android 10 pence apps have already come down i...

Reshared post from Dianne Hackborn How about some Android graphics true facts? I get tired of...

How about some Android graphics true facts?

I get tired of seeing so much misinformation posted and repeated all over the place about how graphics rendering works on Android. Here is some truth:

• Android has always used some hardware accelerated drawing. Since before 1.0 all window compositing to the display has been done with hardware.

• This means that many of the animations you see have always been hardware accelerated: menus being shown, sliding the notification shade, transitions between activities, pop-ups and dialogs showing and hiding, etc.

• Android did historically use software to render the contents of each window. For example in a UI like http://www.simplemobilereview.com/wp-content/uploads/2010/12/2-home-menu.png there are four windows: the status bar, the wallpaper, the launcher on top of the wallpaper, and the menu. If one of the windows updates its contents, such as highlighting a menu item, then (prior to 3.0) software is used to draw the new contents of that window; however none of the other windows are redrawn at all, and the re-composition of the windows is done in hardware. Likewise, any movement of the windows such as the menu going up and down is all hardware rendering.

• Looking at drawing inside of a window, you don’t necessarily need to do this in hardware to achieve full 60fps rendering. This depends very much on the number of pixels in your display and the speed of your CPU. For example, Nexus S has no trouble doing 60fps rendering of all the normal stuff you see in the Android UI like scrolling lists on its 800x480 screen. The original Droid however struggled with a similar screen resolution.

• "Full" hardware accelerated drawing within a window was added in Android 3.0. The implementation in Android 4.0 is not any more full than in 3.0. Starting with 3.0, if you set the flag in your app saying that hardware accelerated drawing is allowed, then all drawing to the application’s windows will be done with the GPU. The main change in this regard in Android 4.0 is that now apps that are explicitly targeting 4.0 or higher will have acceleration enabled by default rather than having to put android:handwareAccelerated="true" in their manifest. (And the reason this isn’t just turned on for all existing applications is that some types of drawing operations can’t be supported well in hardware and it also impacts the behavior when an application asks to have a part of its UI updated. Forcing hardware accelerated drawing upon existing apps will break a significant number of them, from subtly to significantly.)

• Hardware accelerated drawing is not all full of win. For example on the PVR drivers of devices like the Nexus S and Galaxy Nexus, simply starting to use OpenGL in a process eats about 8MB of RAM. Given that our process overhead is about 2MB, this is pretty huge. That RAM takes away from other things, such as the number of background processes that can be kept running, potentially slowing down things like app switching.

• Because of the overhead of OpenGL, one may very well not want to use it for drawing. For example some of the work we are doing to make Android 4.0 run well on the Nexus S has involved turning off hardware accelerated drawing in parts of the UI so we don’t lose 8MB of RAM in the system process, another 8MB in the phone process, another 8MB in the system UI process, etc. Trust me, you won’t notice -- there is just no benefit on that device in using OpenGL to draw something like the status bar, even with fancy animations going on in there.

• Hardware accelerated drawing is not a magical silver bullet to butter-smooth UI. There are many different efforts that have been going on towards this, such as improved scheduling of foreground vs. background threads in 1.6, rewriting the input system in 2.3, strict mode, concurrent garbage collection, loaders, etc. If you want to achieve 60fps, you have 20 milliseconds to handle each frame. This is not a lot of time. Just touching the flash storage system in the thread that is running the UI can in some cases introduce a delay that puts you out of that timing window, especially if you are writing to storage.

• A recent example of the kinds of interesting things that impact UI smoothness: we noticed that ICS on Nexus S was actually less smooth when scrolling through lists than it was on Gingerbread. It turned out that the reason for this was due to subtle changes in timing, so that sometimes in ICS as the app was retrieving touch events and drawing the screen, it would go to get the next event slightly before it was ready, causing it to visibly miss a frame while tracking the finger even though it was drawing the screen at a solid 60fps.

• When people have historically compared web browser scrolling between Android and iOS, most of the differences they are seeing are not due to hardware accelerated drawing. Originally Android went a different route for its web page rendering and made different compromises: the web page is turned in to a display list, which is continually rendered to the screen, instead of using tiles. This has the benefit that scrolling and zooming never have artifacts of tiles that haven’t yet been drawn. Its downside is that as the graphics on the web page get more complicated to draw the frame rate goes down. As of Android 3.0, the browser now uses tiles, so it can maintain a consistent frame rate as you scroll or zoom, with the negative of having artifacts when newly needed tiles can’t be rendered quickly enough. The tiles themselves are rendered in software, which I believe is the case for iOS as well. (And this tile-based approach could be used prior to 3.0 without hardware accelerated drawing; as mentioned previously, the Nexus S CPU can easily draw the tiles to the window at 60fps.)

• Hardware accleration does not magically make drawing performance problems disappear. There is still a limit to how much the GPU can do. A recent interesting example of this is tablets built with Tegra 2 -- that GPU can touch every pixel of a 1024x800 screen about 2.5 times at 60fps. Now consider the Android 3.0 tablet home screen where you are switching to the all apps list: you need to draw the background (1x all pixels), then the layer of shortcuts and widgets (let’s be nice and say this is .5x all pixels), then the black background of all apps (1x all pixels), and the icons and labels of all apps (.5x all pixels). We’ve already blown our per-pixel budget, and we haven’t even composited the separate windows to the final display yet. To get 60fps animation, Android 3.0 and later use a number of tricks. A big one is that it tries to put all windows into overlays instead of having to copy them to the framebuffer with the GPU. In the case here even with that we are still over-budget, but we have another trick: because the wallpaper on Android is in a separate window, we can make this window larger than the screen to hold the entire bitmap. Now, as you scroll, the movement of the background doesn’t require any drawing, just moving its window... and because this window is in an overlay, it doesn’t even need to be composited to the screen with the GPU.

• As device screen resolution goes up, achieving a 60fps UI is closely related to GPU speed and especially the GPU’s memory bus bandwidth. In fact, if you want to get an idea of the performance of a piece of hardware, always pay close attention to the memory bus bandwidth. There are plenty of times where the CPU (especially with those wonderful NEON instructions) can go a lot faster than the memory bus.


Reshared post from Moritz Tolxdorff Do you want the brand new YouTube Design? - Here we go! I...

Do you want the brand new YouTube Design? - Here we go!

If you want the new YouTube layout before it's rolled out officially you just have to follow this 4 simple steps:


1. Go to http://www.youtube.com
2. Press Ctrl + Shift and J in Chrome to open the Developer Tools
Press Ctrl+Shift+K in Firefox
3. Click on the "Console" Tab and enter
document.cookie="VISITOR_INFO1_LIVE=ST1Ti53r4fU";
4. Reload the website and enjoy the new layout.


Flashed my Motorola Defy with CyanogenMod today. Awesome Mod, my Phone act a lot smoother/faster....

Flashed my Motorola Defy with CyanogenMod today. Awesome Mod, my Phone act a lot smoother/faster.
My original Android 2.2 hungs up all the time and it was a pain to use it for Navigation.
The install is easier as i thought. You only need a rooted phone on Android 2.2.
- Install 2ndInit
- Boot into custom recoverymenu that installed by 2ndInit
- Wipe/Factory reset
- flash the cyanogenmod.zip from your sd card
And you are done! Piece of cake!

A really good guide with pictures (german) can be found here: http://www.android-hilfe.de/custom-roms-fuer-motorola-defy/94929-custom-rom-cyanogenmod-7-android-2-3-7-cm7-1-stable-update-10-2011-a.html

CyanogenMod | Android Community Rom based on Gingerbread


Reshared post from Tom Anderson This "freakonomics"-style video on Daylight Savings Time gets ...

This "freakonomics"-style video on Daylight Savings Time gets better and better as it builds. As a Hawaii resident, I can tell you things are just fine when a state does not participate in daylight savings time, and I can attest to misbooking international flights (and even a few conference calls) due to timezone confusion. After experiencing several nights of bad sleep this week, I was intrigued to hear what this video says about the effects of daylight savings time on sleep. Best quote from the video: "Yo dawg, I heard you like timezones so we put some more timezones in your timezone!" Thanks +Colin Grey


Wow mobile Internet is really great. I was on a biking tour around my hometown Gießen, really off...

Wow mobile Internet is really great. I was on a biking tour around my hometown Gießen, really off the road, basically in the middle of nowhere. And i had my Internet Radio on all the time, its playing a 96kb mp3 stream for 1hour20min with Edge and HSPA, its amazing!

On an other note: I had a really hard time to set up my streaming radio. I finally used a custom App for another favorited Radiostream but i was unable to play the RadioBob Stream ( http://radiobob.de/stream/stream.m3u ). I used Winamp, Double Twist Player, Morph Player and the Android default musicplayer. Neither can play a stream from a URL. I was able to kick of the playing with calling an Intent from inside the Browser, but again i was not able to bookmark/playlist my Streamurl. Any recommendations for a Player that is able to accomplish this?

http://radiobob.de/stream/stream.m3u


Reshared post from Frances Haugen Go check out the Google Doodle! It's Alexander Calder's birt...

Go check out the Google Doodle! It's Alexander Calder's birthday (July 22, 1898) - he's the father of mobiles. It kinda blew my mind to read that in Wikipedia... mobiles seem so basic and it's weird to imagine they ever wouldn't have existed.

Fun things to do with the Doodle:
* Tilt your laptop side to side - if you have an accelerometer, it'll move :-)
* Drag it about with your mouse
* Check out the shadow cast underneath the search box

My most recent interaction with his work was at the Los Angeles County Museum of Art back in May. We were wondering how precisely balanced his mobile was, so we started trying to blow air at it and see if we could move it from our vantage point firmly planted on the ground - and it did move!