New: Modify target version of project depending on your device's Android version.
When you create a new dot42 project it will automatically target the latest Android version (currently 4.2). If your device supports this version, there is no problem, but if your device supports an older Android version, you have to remember to change the target version to the version of your device.
We have canged the device dialog that pops up when you run your dot42 project from Visual Studio.
When you select a device that does not support the Android version your project targets, it shows a warning and gives you the option to change the target version of your project. You do this by simply clicking "Yes change project version". Next, you rebuild your project and run it again.
New: Added OpenGL, R.Layout.Simple_item_list1, Camera and Simple HttpServer samples.
We've added several new samples:
- Animation\SpinningCube showing the use of OpenGL in dot42.
- Widgets\SimpleListItem1 showing the use of the build-in Android.R.Layout.Simple_list_item_1 resource used for listview items.
- Camera\SimpleCamera showing how to create a simple camera app that previews the camera image and allows you to take pictures.
- Network\SimpleHttpServer showing how to use server sockets to implement a very simple HTTP server. It will respond with "Hello world" on each request.
New: Added support for "supports-screens" element in Android manifest.
The <supports-screens> element of the Android manifest can now be created using the Dot42.Manifest.SupportsScreens attribute.
For example:
[assembly: SupportsScreens( NormalScreens = true, XLargeScreens = true, SmallScreens = false)]
New: Added update check to Visual Studio plugin.
When you use dot42 inside Visual Studio it will check for updates of dot42. This is done atmost once a day.
Change: "static readonly string" constants in the Android API are now available as "const string".
All static literal string-type fields in the Android API are now converted as "const" string in the dot42 assembly. As a result you can use them in attribute definitions like this:
[assembly: UsesPermission(Android.Manifest.Permission.ACCOUNT_MANAGER)]
Change: Changed debugger attachment process.
Currently, the most reported issue is that the debugger fails to attach to the app running on the device. In this version we have made further changes to resolve this and to enhance diagnostics. If you encounter this issue, please open the Device log and send screenshots of its content to support@dot42.com.
Change: Sign converted method (sbyte parameters to byte parameters) have been removed from interfaces.
Almost all primitive types supported by Java are a perfect match for their countersparts in .NET. For example int is int, float is float and so on. The byte type is the exception. A byte is a signed 8-bit integer in Java and and an unsigned 8-bit integer in .NET. To make matters worse, .NET uses unsiged bytes all over the place while Java only has signed bytes.
To make this easier for a C# developer, dot42 has sign converted methods for all API methods that have a signed byte in it. That means there are 2 methods, one with sbyte parameters and one with byte parameters. The dot42 compiler takes care of the correct mapping and conversion.
This caused problems with interfaces. As an interface is a contract you now had to implement 2 methods for some interfaces instead of 1. That is why we removed the byte methods from interfaces.
Fixed: '.' in resource ID breaks compilation of R.cs.
If you use a '.' in a resource ID (which is valid in Android) it is now correctly handled by dot42.
For example a resource id of "my.resource" is now accessible as R.Ids.my_resource in C#.
Fixed: Missing resources.arsc due to MSBuild 'optimization'.
In rare cases the dot42 MSBuild "forgot" to build some resource elements.
Fixed: IntentFilter manifest support fails.
The use of the (Dot42.Manifest).IntentFilter attribute caused a compiler error. This has been resolved.
No comments:
Post a Comment