Tagarchief: windows phone 7

I’m happy about them!

And guess what, apparently 2856 other persons on this world are as well ^^
(probably a lot less, ‘cause of idiot’s downloading random apps without reading a description…)

Remember them?

According to microsoft’s statistics they have been downloaded as much as 2856 times =)

I don’t think they’re features somewhere big… But at least they’re mentioned in Johan PeetersBelgian Apps list πŸ™‚

Apparently, when you create a live tile, and you use an external URI to point to an image for the tile, the operating system removes the tile after a reboot…
This behaviour doesn’t occur when you use a local resource to instantiate the tile…

Just something you don’t actually know until you see it happening ^^

I’ve been programming again!
This time on soms apps called “PrefabSMS” and “WOL”.
More info about the app later, but now I just want to share some code snippets about sockets en live tiles!

UDP sockets

Sockets is something introduced since WP7.5’s update mango.
Something that should have been there since the beginngin… But hey, it’s here now, so enjoy it from now on!
Anyway, a first thing to do is include the namespace.

using System.Net.Sockets;

After that we can declare some new things πŸ™‚

Socket _socket = null;
static ManualResetEvent _clientDone = new ManualResetEvent(false);
const int TIMEOUT_MILLISECONDS = 5000;
const int MAX_BUFFER_SIZE = 2048;

Which meaning is all pretty obvious I think…

After this the socket is initialized with

_socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);

The 3rd thing we need is a send() function.
This should be something as follows:

public string Send(byte[] payload))
     string response = "Operation Timeout";

     if (_socket != null)
          SocketAsyncEventArgs socketEventArg = new SocketAsyncEventArgs();
          socketEventArg.RemoteEndPoint = new IPEndPoint(IPAddress.Broadcast, 11000);
          socketEventArg.Completed += new EventHandler(delegate(object s, SocketAsyncEventArgs e)
          response = e.SocketError.ToString();
          socketEventArg.SetBuffer(payload, 0, payload.Length);
          response = "Socket is not initialized";

     return response;

So, after initialisation, you can call send to send your byte array into the wild!

You can change the IPEndPoint in the send function into IPEndPoint(“”, 80) or something else, just an ip address and a port for the packet! πŸ™‚

Live tiles

I’ve also been playing with the live tiles. In mango you can setup live tiles to enter a deep state of your application. With this you can open a specific page with specific data in your application instead of just “regularly” opening your app…

Add following reference.

using Microsoft.Phone.Shell;


StandardTileData NewTileData = new StandardTileData
     BackgroundImage = new Uri("ftgxmessage.png", UriKind.Relative),
     Title = temp.sendBody,
     BackTitle = temp.sendTo,
     BackContent = temp.sendBody,
     //BackBackgroundImage = new Uri("Blue.jpg", UriKind.Relative) 
ShellTile.Create(new Uri("/MainPage.xaml?action="+listBox1.SelectedIndex, UriKind.Relative), NewTileData);

This piece of code instantiates a standard tile with some info. Notice: you have a front and a back of the live tile (it flips around on the home screen πŸ™‚ )

And the create() puts it on the homescreen.

An action can be included in the create function: here we call mainpage with a specified action to execute, this is done by a QueryString – see further.
Adjust at your own needs πŸ™‚

At the page data can be passed from the tile into the app (this is done by a so called QueryString). This can be accessed in the Loaded function for the program with following code:

int id = Convert.ToInt32(NavigationContext.QueryString["action"]);

Et voila, you have your action variable at hand! πŸ™‚


When you want to delete a tile, you first have to find your tile πŸ˜›

If we put the tile from above on the homescreen, it can be identified with the action variable in the QueryString. So we use this to find our tile and identify it. And to delete it πŸ™‚

string tempstring = "action=" + listBox1.SelectedIndex;
ShellTile TileToFind = ShellTile.ActiveTiles.FirstOrDefault(x => x.NavigationUri.ToString().Contains(tempstring));

That’s all for today πŸ™‚

Allright, 1 app passed certification and can be found in the marketplace: RegularDommel. (It’s just a bandwidth meter for your dommel account)

But it’s a start! =)

On the other hand, MobileVikingsReloader still fails certification…
Main reason is the following…

So what this app does is sending an sms towards the phone number of mobile vikings, just to let you know you want a top-up (also see MV’s faq)

Apparently I cannot “promote” other voice plans… Trying to get around this… Any suggestions?



Nice things:

  • speed, the entire OS is sooo fast ❀
  • browser, which is a pretty decent one
  • it IS easy to create apps, love c#!
  • some (quality) apps & games
  • fancy effects 8)
  • it works, hasn’t crashed yet! 18 days uptime
  • wonderful synchronisation with hotmail & live services

WP7 is a leap forward, but there is always a lot of comment and missing things.
Know your weaknesses!

  • decent copy paste, when you paste something it is of your clipboard. Gone, ciao, weg, verschwunden… Keep it there until I overwrite it, please!
  • decent messenger/skype/fim => in upcoming mango update due to lack of sockets in current build
  • wake on lan => same reason
  • no file transfer over bluetooth? wtf?
  • not saving of the camera options, “it’s not a bug – it’s a feature” my *ss… πŸ˜€
  • when you unlock the phone by pressing the camera button a couple of seconds, and it’s back to menu, it’s basically completely unlocked… Had this once in my pocket… So let the device check whether it’s unlocked by camera or by unlock screen. And if it was the camera-button that unlocked it, don’t let it return to the menu πŸ˜‰
  • regular backup possibilities (like the backup made after the nodo-update, but regular πŸ˜† )
  • save files with unknown extensions? come on! can’t even save pdf documents or random extensions πŸ˜›
  • file browser – thx homebrew apps for fixing this 😎
  • registery editor – same

Now, a couple of the mentions above are going to be solved in the upcoming “mango”-update. So let’s hope it becomes available quickly 😎 (September?Β  πŸ˜• )

Another suggestion:

  • shortcuts of, perhaps, 4 most used apps?! πŸ™‚

One of the best initiatives Microsoft has created for us, poor students, is the platform called DreamSpark

For the people that are not familiar with it: it offers a lot of ide’s and tools, and even some full featured os’ses so you can start develop within a couple of hours, read: visual studio, windows server, sql server, windows embedded, etc… And all of this is for free if you are a student. NIIIIICE 😎

Anyway, when you want to develop something for Windows Phone, you get the emulator. But eventually, you want to test your app on a real world device (at least, I want that πŸ˜€ ).
The privilege of placing your app in the appstore, and thus being able to test this on a physical device, is reserved for developers who pay $99… And for students, when you register via DreamSpark… NIIICE again! 😎

Because you are getting a spot in the marketplace for free, you have to be authenticated. This authentication process is done by geotrust, a third party doing Microsoft’s work πŸ˜›

The process exisits out of 3 steps

  1. creating an application in visual studio and debugging using the emulator
  2. uploading your app to the app hub
  3. getting authenticated by geotrust

And you’re ready to go 😎

Currently, IΒ  passed the authentication process from geotrust by scanning my Belgian ID and e-mailing this towards geotrust. (A couple of stupid errors came trough, like for example “mendel alias” is not my real name of-course… πŸ˜€ , but the guys are geotrust where wonderful, thx again if you’re reading this!)

So, from now on, I’m an official WindowsPhone developer! Lol ^^

First app in the marketplace (still needs to be approved) is a check tool (like for example the mobilevikings tool) for the download statistics of my ISP: Dommel.

We’ll see how everything turns out in the future 😎

When electronics become slow, unstable, or just boring, you can (mostly) upgrade them.

If your computer is getting slow you can buy a new cpu.
When you laptop has a shortage on storage space, you buy a new hard disk. Same with soundcards, RAM, and others.

But you can’t (yet) do that with a telephone (or a mac ^^)

Anyhow, my old & trusty HP was getting rusty… (Not literally ofc ‘cause plastic can’t rust πŸ™„ )

So it was replaced πŸ˜€

Let’s compare!


Hewlett-Packard iPAQ 614c

Samsung GT-i8700 Omnia 7

cpu Intel XScale PXA270 @ 520MHz Qualcomm Snapdragon QSD8250 @ 1000MHz
ram 128MiB 512MiB
storage 256MiB+8GB Β΅SD 7.97GB
display resolution 240*380 480*800
display diagonal 2.8″ 4″
camera resolution 3.1MP 4.92MP
weight 145grams + battery (+- 180grams) 138grams

Jeeaaaah, it’s a bit of an improvement :mrgreen:

I went to Fnac, a multimedia shop, located here in Ghent. Played with several devices (including some high-end android and even symbian)… But WP7 popped out. It’s animations are incredible fluent, wonderful eye-candy, and it just works. A lot of things are still missing: like for example the copy-paste functionality, and a skype client. But I’m sure (call my naΓ―ve) they will become available in the next few months… 😎
And something I noticed on android, sometimes frames are just skipped? The menu’s are just not THAT fluent, especially when I compared it with WP7… I didn’t had the chance to try the GalaxyS, and I don’t know what versions of android where installed on the devices I tried, but maybe some optimizations can be made… (Tried the high-end HTC’s though…)

Anyway, I’ve been playing with my omnia for a couple of days now, and I’m loving it… Everything is synchronized with hotmail, and my desktop computer. Google Android surely has the same functionality, but still…

Marketplace is something nice, the only close the entire platform as money in a safe… Damn, I hate that… Microsoft went “Apple-style”… Hopefully they’ll create something android like with next to the marketplace, the apk-installable files πŸ˜€

Pictures aren’t that bad, at least they don’t “move” like my previous cellphone…

even at night

The biggest issue is ofcourse the battery. I play with that cellphone all day long… But you can’t do that without charging it… When you do nothing with the device, you’ll probably make it trough the day… Maybe I need to find some energy saving tricks ^^
Now, after some days, I noticed that it’s perfectly doable to make it trough the day… Which wasn’t always possible with my hp… But the hp was continuously syncing with hotmail, the samsung only each 30 minutes (which IS a pretty huge difference…)

The list of negative arguments will probably grow in the future, but for now it’s a great device :mrgreen:
Atm only the lack of copy/paste 😐 (I notice I used that quite a lot, even on a telephone πŸ˜€ )