Wednesday, August 24, 2016

Moving to WordPress

Moving to WordPress https://agilehobo.wordpress.com

Friday, August 19, 2016

What I learnt from my first Xamarin.Android app


  • Apply Material Design to Xamarin.Android app
  • Working with NFC on Android 
  • Write async code properly (yeah, I still made mistakes) 
  • Using HockeyApp for crash report and get feedback (integrating HockeyApp into the app is very simple but using its web site is frustrate, why Micrsoft kills Xamarin Insights?)
  • Build a release version - you need to build it in the correct way ;-) 
  • And a lot of small things

Sunday, August 2, 2015

New installation experience of Visual Studio 2015

As you knew, Microsoft announced Visual Studio 2015 on July 20 and it is the first time they announce a version of Visual Studio that targets a new version of Windows (this time, it’s Windows 10) without the SDK. The SDK was available later on July 29.

How Microsoft can deliver an update for Visual Studio 2015 to developers just 9 days after releasing Visual Studio 2015? In this post, I will tell you how they do it.

At this time, the Windows 10 SDK was available for all .NET developers who are interested in developing Windows 10 UWP. There are 2 ways to install it.

The first one – the usual one – you can download the SDK and emulators for Windows 10 Mobile from Windows Dev Center then install them then start to develop Windows 10 UWP (Universal Windows Platform) applications.

The second one, just open Visual Studio 2015 installer then you will see new items which doesn’t appear in the list if you install Visual Studio 2015 before July 29 (see figure below)

clip_image001[4]

How Microsoft can do it? Internally, the Visual Studio 2015 installer uses a feed to retrieve an up-to-date component list from Microsoft server. The installer also enables the developers to download the latest version of the components without leaving Visual Studio installer.

How about the advantage and disadvantage of this installation process? The advantage is clear, developers always get the up-to-date tools and they only need to use Visual Studio installer. But the disadvantage is it relies on Internet connection (to download the components - the SDK is about 700MB and emulators for Windows 10 Mobile is more than 2GB).

In summary, Visual Studio 2015 installer provides a new way to help developers to get the latest version of the tools they want and don’t need to care about where to find them. But if you don’t have Internet connection or it’s too slow, you still can use the old way to update Visual Studio.

Saturday, May 17, 2014

Autoformatting XAML the hard way

Iris Classon mentioned about a “hidden” feature of Visual Studio which can be used to autoformat XAML here. I think it’s a good option but it’s too simple because sometime you want to have more control on formatting option (order, indent…). In this post I introduce another hard way to do autoformatting XAML.

"XAML Styler" is a Visual Studio extension, which makes XAML markup source code beautify much easier by sorting the attributes based on their importance. This tool can help you/your team maintain a better XAML coding style as well as a much better XAML readability.

You can get XAML Styler from here

You can configure XAML Styler to sort attributes in the way you want, fix whitespace between <Run/>, indent XAML markup based on Visual Studio settings and many more. And you can even format XAML without using yet another shortcut key, Ctrl + S to save file also does formatting for you. For more details on features, you can find out here.

Tự động định dạng XAML theo cách khó khăn

Iris Classon đề cập đến một tính năng “ẩn” của Visual Studio có thể dùng để tự động định dạng XAML ở đây. Theo tôi nó là một sự lựa chọn tốt nhưng nó quá đơn giản bởi đôi khi bạn muốn nắm kiểm soát nhiều hơn trong việc định dạng (thứ tự, thụt dòng…). Trong bài viết này tôi sẽ giới thiệu với các bạn một cách khó khăn khác để tự động định dạng XAML.

"XAML Styler" là một Visual Studio extension làm cho mã nguồn XAML đẹp đẽ hơn bằng cách sắp xếp các thuộc tính dựa trên tầm quan trọng của chúng. Công cụ này cho phép bạn/nhóm của bạn duy trì coding style cho XAML tốt hơn, đồng thời nó cũng giúp đọc XAML dễ dàng hơn.

Bạn có thể lấy XAML Styler tại đây

Bạn có thể cấu hình XAML Styler sắp xếp các thuộc tính the cách bạn mong muốn, sửa lỗi khoảng trắng giữa các thẻ <Run/>, thụt dòng XAML dựa trên thiết lập của Visual Studio và nhiều hơn nữa. Bạn cũng có thể định dạng XAML mà không cần sử dụng một shortcut key khác (như cách của Iris Classon), Ctrl + S sẽ lưu file và đồng thời định dạng luôn cho bạn. Để biết cụ thể hơn về tính năng, bạn có thể tìm hiểu tại đây.

Sunday, April 27, 2014

Sử dụng Visual Studio để xây dựng ứng dụng universal

Tạo hội thảo Build vừa qua, Microsoft đã giới thiệu sự hội tụ của hai nền tảng Windows Phone 8.1 và Windows 8.1. Với vai trò của một developer, điều này có nghĩa bạn có thể xây dựng các ứng dụng chạy trên cả điện thoại và máy tính bảng với khả năng chia sẻ một lượng lớn code và nội dung. Để bắt đầu xây dựng ứng dụng universal, bạn cần sử dụng Visual Studio 2013 Update 2 và các phiên bản sau. Hiện tại Visual Studio 2013 Update 2 RC đã sẵn sang để tải về tại đây http://www.microsoft.com/en-us/download/details.aspx?id=42307. Bài viết này sẽ giới thiệu với các bạn cách sử dụng Visual Studio để tạo ứng dụng universal.

Tạo ứng dụng universal

Để tạo ứng dụng universal, Microsoft đã cung cấp các project template mới giúp tạo cấu trúc và cấu hình cơ bản để bạn có thể chia sẻ code và nội dung:

clip_image002

Nếu bạn đã có sẵn một ứng dụng Windows 8.1, bạn có thể sử dụng menu “Add Windows Phone 8.1” để thêm dự án Windows Phone 8.1 mới và dự án Shared. Bạn cũng có lựa chọn tương tự nếu bạn có một ứng dụng Windows Phone 8.1 và muốn thêm dự án Windows 8.1.

clip_image003

Cấu trúc của ứng dụng universal

Một ứng dụng universal là một tập hợp của 3 dự án – một dự án Windows Store, một dự án Windows Phone và một dự án Shared. Các dự án Windows Store và Windows Phone là các dự án đảm nhiệm việc tạo ứng dụng cho các nền tảng tương ứng. Những dự án này chứa các tài sản được dành riêng cho nền tảng được hướng tới.

Dự án Shared chứa mọi thứ được chia sẻ giữa các dự án Windows Store và Windows Phone. Các loại item có thể là các file .cs, XAML, .xml, .png, .resw,… giống như các dự án cho các nền tảng. Dự án Shared không tạo ra output nhưng nội dung của nó được import vào các dự án của từng nền tảng và được sử dụng như một phần của tiến trình build để tạo ra các gói ứng dụng Windows Store và Windows Phone (.appx).

clip_image004

Viết code trong dự án Shared

Khi phát triển ứng dụng universal, phần lớn thời gian bạn sẽ dành để viết code chạy trên cả hai nền tảng. Nếu cần, bạn cũng có thể viết code dành riêng cho một nền tảng nào đó trong dự án Shared sử dụng các chỉ thị #if và #endif. Theo mặc định, ta có sẵn các hằng điều kiện biên dịch sau

C#

WINDOWS_APP

WINDOWS_PHONE_APP

C++

WINAPI_FAMILY_PC_APP

WINAPI_FAMILY_PHONE_APP

Chuyển ngữ cảnh trong editor

Khi code trong dự án Shared, bạn có thể sử dụng chuyển ngữ cảnh dự án trên thanh điều hướng để chọn nền tảng mà bạn muốn làm việc, điều này có tác động đến intellisense trong cửa sổ soạn thảo code.

clip_image005

Chuyển dự án khởi đầu (startup project)

Bạn cũng có thể chuyển nhanh dự án khởi đầu như hình dưới đây.

clip_image006

Chia sẻ code giữa các ứng dụng universal

Bạn có thể sử dụng các thư viện class để chia sẻ mã nguồn cho nhiều ứng dụng universal khác nhau. Với C# và Visual Basic, Microsoft đã cải thiện Portable Class Libraries (PCLs) để hỗ trợ Windows Runtime và XAML hướng tới các nền tảng Windows 8.1 và Windows Phone 8.1.

clip_image007

Với C++, bạn có thể sử dụng template cho dự án Class Library mới để chia sẻ code giữa các thư viện class Windows 8.1 và Windows Phone 8.1.

Tôi hy vọng qua bài viết này các bạn có thể nắm được sơ qua cách sử dụng Visual Studio 2013 để tạo các ứng dụng universal.

Monday, September 9, 2013

Became featured app once again and about critical problem of Weather Tag Pro and Place Tag Pro

After becoming featured app on Windows Phone Store on August 25 and August 26, Weather Tag Pro became featured app once again. It will become featured app on Saudi Arabia market for all phones on September 11.

By the way, as many users reported, I noticed that Weather Tag Pro and Place Tag Pro have a critical problem with retrieving place information. As I checked, the problem only happens on Windows Phone 7.x, not Windows Phone 8. A fix was submitted and it will available on Windows Phone Store a few days later. Sorry for the inconvenience.

Saturday, August 17, 2013

I love the feedback

At this time Weather Tag Pro received 29 rate and reviews. 22 of 29 are 4 or 5 stars rates. It is really great. They are made me proud and give me more exciting to work on Weather Tag Pro. Some of the reviews are really good. They don't just say what the user think about my app, they also tell me give me some ideas to work on. Here are a few samples:

Su Nokia Lumia 920: funziona, veloce, divertente con previsioni e temperatura molto precise. 2 cose da migliorare: il geotag ke mette solo la regione invece ke la città e le info sulla foto ke sono in inglese invece ke in italiano.
from an anonymous user, Italy

Die App funktioniert gut. Ich hatte mit einer anderen schlechte Erfahrungen gemacht. Eventuell könnte man bei den Orten nachbessern - da hier wirklich nur die Stadt angegeben wird (die andere App hatte noch die Postleitzahl dabei). Ich probiere es demnächst mal außerhalb von Berlin. Etwas umständlich ist, dass nach dem Foto erst mal der Fotoeditor geladen wird. Wenn man keine Effekte hinzufügen möchte ist das etwas zeitraubend. Oder ich habe noch nicht gefunden, wie man das umgeht. Ansonsten eben fünf Sterne, weil es wohl im Moment die beste Wetter-Foto-App für WindowsPhone ist. Ob das so bleibt, wenn - wie angekündigt - die InstaWeather usw. für WindowsPhone kommt? Wir lassen uns mal überraschen. Kaufempfehlung!
from Dennis, Germany

Good app, works good. Photo editor starts slowly on my Nokia Lumia 800. A skip option for the photo-editor would be nice. Dutch language would also be nice.
from Laurent, Netherlands

Beside the good reviews, I also received some bad (or maybe, not good) reviews. Most of them complain about the location, my dear users want it to work more accurate.

And here is my actions:

- A skip option for the photo-editor was added in version 2.3 (or 2.5)
- Dutch is supported in version 2.6 (with correction in version 3.0)
- And the most wanted, improvement in retrieving location information, it was added in version 3.0.

Please try it and let me know your feedback. Let me know if you like it, or even hate it. Thank you.

Happy Weather :-)

BTW, as always, my dear users, you can always send me feedback directly via email. You only need to open "about" menu item on the start page, then tap "Send feedback" button.

Tuesday, August 13, 2013

How to open a picture by Weather Tag Pro in Photo hub

Open a picture in Photo hub

Step 1


Step 2


Step 3


Result

How to create square picture in Weather Tag Pro


Step 1


Step 2


Step 3


Result