Windows Phone 8.1 with DirectXTK - directx

When I try to add a reference (DirectXTK) to my native part of the WP8.1 project I got the following message: A reference to 'DirectXTK' cannot be added because the two projects target different platforms.
Anyone experienced this behavior before?
My project is based on DirectX and XAML App (Windows Phone Silverlight 8.1) app template

This has been answered on the CodePlex.
In short, you have to create a "Static Library (Windows Phone Silverlight 8.1)" project for DirectXTK.

Related

Xamarin Android use “Bundle assemblies into native code” and "obfuscation"

I am trying to combine obfuscating my xamarin android project and then bundle the assemblies into native code with the Visuals Studio 2017 Pro option.
I was able to obfuscate my assemblies with this tutorial https://blog.noser.com/xamarin-android-code-obfuscation/
Unfortunately the obfuscated assemblies does not find its way into the native bundle.
Likely i intercepted the build proccess at the wrong place.
<Target Name="Obfuscate" AfterTargets="_CopyIntermediateAssemblies" Condition="'$(Configuration)' == 'Release'">
Does anyone know how to merge the obfuscated assemblies into the native bundle? Thx for help in advance.
I help develop another .NET obfuscation/protection tool, Dotfuscator.
We've written a Xamarin build integration that automatically handles protection as part of the normal build process, so you don't have to manually write your own MSBuild targets or copy files around.
The official Xamarin docs recommend using Dotfuscator to protect Android builds, but this integration also works for iOS and UWP.
As Dotfuscator's Community Edition is included in Visual Studio, you can try this integration out for free.
I wrote a guest post for the Xamarin Blog that explains how to do this.
Edit regarding the setting in the question: I did some limited testing and Dotfuscator works fine with the "Bundle assemblies into native code" setting. I installed the latest version of Visual Studio 2017 Enterprise, version 15.7.2, but found out that version has a bug related to this setting. To work around it, I used the unofficial VSIX install mentioned at that link. Then I opened a Dotfuscator-Xamarin sample app and enabled the native code setting. I also added code to the sample to show the name of a class used by the application. Then I deployed the app to an emulator. The app ran normally and the logging statement showed an obfuscated name for the class, indicating that Dotfuscator correctly protected the app before it was bundled into native code.

New iOS MVVMCross project - which Nuget package and/or PCL targets?

We are creating a new iOS project. I want to use the Universal API so pretty sure I need to switch to Xamarin Beta channel and pull the prerelease of MVVMCross.
However when I try and add the MVVMCross package to a fresh PCL I get
Could not install package 'MvvmCross.PortableSupport 3.5.0-beta1'. You
are trying to install this package into a project that targets
'portable-net45+sl50+Xamarin.iOS10+MonoAndroid10+MonoTouch10', but the
package does not contain any assembly references or content files that
are compatible with that framework. For more information, contact the
package author.
The error looks simple enough but those compatibility errors from NuGet are never as simple as they look
The PCL is targetting
.NET 4.5
Silverlight 5
Xamarin Android
Xamarin.iOS
Xamarin.iOS (Classic)
Which targets do I need to change so I can add the correct MVVMCross to build Universal iOS
It looks like Your challenge is supporting Silverlight 5 - sl50
All the other platforms you list will support modern PCL profiles like 78 and 259. However, Microsoft haven't built any Silverlight support for these profiles.
This dropping of the "older profiles" is why MvvmCross dropped the old WindowsPhone support - announced back in July 2013 http://slodge.blogspot.co.uk/2013/07/mvvmcross-wp7-tombstoned.html
I fixed the problem you had. I managed to fix it without hacking csproj. I couldn't deselect Silverlight 5. I selected Windows 8 target and then I was able to deselect Silverlight 5.

XCode working with TFS 2013 via Eclipse

I develop iOS app my company decide to use TFS server, BUT we face many problems to make it works with xcode the best solution "As my research finalize" is use it via eclipse as the other BB, android and windows phone works.
Instruction found in this link.
BUT my own problem is eclipse alway ignore .pch -IDK if other file got ignored to- file that result in build failed where my teammate pull the project.
Any help will be appreciated

How can I get started with Xamarin from Visual Studio 2013?

I want to port a Compact Framework/Windows CE app to Xamarin to create Android and IOS (and possibly Windows Phone) "versions." I reckon I need Windows 8 for Windows Phone (8) but for now I thought I could get started with Android and IOS in moving this prehistoric app into the 21st century.
According to this article, I first need "Project linker" and can NuGet it, but searching for it via Tools > Extensions and Updates in VS 2013 returns no search results.
That article says you need VS 2012 or better; the direct link to "Project Linker," though, says it supports VS 2010.
Where do I go from here?
UPDATE
I went here, and am in the processing of downloading.
UPDATE 2
Here, it says, "Modern Integrated Development Environment (IDE) – Xamarin uses Xamarin Studio on Mac OS X, and also Xamarin Studio or Visual Studio 2010 on Windows."
Yet in VS 2013, I do have project types now for Android and IOS*, so I reckon that's just a typo (hasn't been updated)?
although I don't have a Mac, so that is not possible for me right now; also, since I'm still on Windows 7 at work, Windows 8 Phone apps are not yet a possibility, either. So at present, Xamarin within Visual Studio is simply a replacement for Eclipse/Java in the creation of Android apps.
UPDATE 3
I've been waiting for something better than PhoneGap, and I think maybe I've found it. If MS were to buy this company and bake Xamarin into Visual Studio -- voila!/yowza/wow! The cats in Cupertino will have to reach for the Pepto-Bismol!
That's a bit outdated and there's a much better approach available today.
You can use Portable Class Libraries (PCL) to share code across project spanning iOS, Android, Windows (Phones) and even OSX.
See this article (and where it leads) for more details.
I certainly agree with #poupou that PCL's are the way to go (if possible). I would recommend James Montemagno's app on github. He just created this for channel9 using VS 2013. I just created a cross-platform app based off of this and it worked out well. I would only use the file-linking for the platform specific implementations with compiler directives. This can be seen in his ServiceRegistrar class in said app.
This SO answer actually explains how to get the 2012 Project Linker to work with 2013 if you still want to go that route and gives a link to the extension.
Also, you may want to check out MvvmCross. It is open-source, has a large user-base and following, and really helps with maximum code re-use. Best part, it uses PCLs and all of it's features (plugins) are available via nuget.
I would recommend reading the article #poupou posted, watching James' channel9 videos on his github page, and (if you want to check out mvvmcross) watch #slodge's N+1 videos on mvvmcross.

Can't I get my app to work with click and touch (within same project)?

i have developed an application that will basically run on all versions of the blackberry unit (ver 4.5 and above). however, i have noticed that navigationClick() is not consumed with a touch blackberry. i know that i have to use touchEvent method instead, however, my eclipse project is set up to use jde 4.5. so is there any way of just including the classes necessary for touch events inside my eclipse project? most of our customers are still using phones with 4.5 or 4.6. so setting up the project to use jde 4.7 as the foundation is out of the question.
i know that eclipse doesn't like packaging a project with 2 different jde versions configured for the same application (because of contentions).
how does everyone else roll out an application that is compatible with ALL versions (including those with the touch)? or do you guys roll out different versions of the same app (one to support click and the other to support touch)?
any help would greatly be appreciated.
thank you so much in advance.
ac
We have several applications for the BlackBerry, and the ones that are compatible with touch-screen RIM devices have two versions: the Standard edition, which supports RIM OS 4.1+ and is built on that platform, and the TouchScreen edition which supports Storm, Storm2, and Torch devices, and is built with the 4.7 platform.
The code base is the same and the touch code is separated with preprocessor statements, but as far as I understand it, there is no way to build on a platform before 4.7 and get access to the methods introduced in 4.7.

Resources