Windows App Certification Kit - supported API test goes wrong - hololens

I am uploading a HoloLens app. Everything is fine until the Windows App Certification Kit - supported API test goes wrong. It said API "D3D12GetDebugInterface in d3d12.dll is not supported for this application type. UnityPlayer.dll calls this API. which does not exist in my app.
My app is in a release configuration, and .NET Native tool chain is checked.

When Unity 3D generates the project it creates 3 different configurations, debug, release, and master. You mostly packaged up "release" for the app store, you should package up "master" for the app store and you will not get that submission error.

Related

How to send a Unity HoloLens 2 project for immediate testing by a remote colleague (without certification from Microsoft Store)

I am developing for HoloLens 2 and I don't have the device (I am using the Emulator to test).
I want to build the project with Unity and send the built package to a colleague that is not a developer - meaning, he is not good with Visual Studio - and who wants to test the app.
I tried using Microsoft Store and this worked for the initial P.O.C., but after the second submission I thought that it was going to be faster, but always takes up to 3 business days, which is not acceptable as a good workflow.
I know that, in ideal conditions, I should have the HoloLens, but this is not possible for now.
Do you have any idea on how to send packages to a non-developer person so that he can test the app in another country and so that it doesn't require a certification process like Microsoft Store?
You can take a look at the Sideloading feature provided by HoloLens Device Portal. Please follow this guide to connect the HoloLens over Wi-Fi or USB and manage your device from a web browser on your PC: Installing an app. In this way, you can directly send the app package to your colleague, and he can install it without using VS.

ASP NET Core 5.0 not supported in Azure

Hello i have a ASP Net Core 5.0 web api which i am trying to deploy to azure and i can't because it says it is not yet supported.
However following the MSDN and similar threads ( when the same issue was valid for .NET Core 3.1) i understood that you can publish it with the option to be self-contained.
It still does not work:
Application Logs
VStudio Publish
Any idea on how to publish my application to azure ?
Later Edit
I forgot to mention all calls to my web api return a 404 message.
So if my
[indexurl] returns the microsoft page
[Indexurl]/[some path] returns 404 (which i understood from github is a 500 actually)
What should i understand ? The web api works , or it doesnt and where could the problem be ?
ASP NET Core 5.0 not supported in Azure
After testing, azure webapp currently supports ASP.NET Core 5.0.
According to your description, I conducted a test, first tested under windows, it was normal. Then deployed and tested under Linux, it is normal.
I guess the reasons may be the following two:
There is a problem with your .Net 5.0 installation. It may be used when compiling, if necessary, and cause compilation exception and release failure. (The possibility is relatively low)
It is possible that the webapi created by default does not have a default index page, so you feel that it is not supported. In fact, you can use webapp for testing, or you can write an interface for testing yourself.
The VS2019 version I used for testing is Microsoft Visual Studio Enterprise 2019 Version 16.8.2. And I installed .net 5.0 Runtime on the machine.
For your question, describe in detail the steps of testing under Linux:
Step 1. Create Core5.0 Webapi Project.
Step 2. Test in local, and it works fine.
Step 3. Deploy to azure with Deployment mode is Framework-dependent.
And test it, it look likes something wrong because the project don't set default route, and I input the WeatherForecast to access default interface, it works.
Step 4. Deploy to azure with Deployment mode is Self-Contained like you pic.
And it also works fine.

Does Visual Studio Services provide a full workflow for CI/CD of web applications?

I read about Microsoft Visual Studio App Center, but it seems to only apply to developing native apps.
I need to realize a Selenium-based CI/CD workflow, like this:
Programmers develop a web application locally, pushing their changes to a local GitLab repository.
The on-premise "service" watches the GitLab repository for changes. If changes have been detected, then:
Pull project.
Compile project in Release configuration.
Run NodeJS unit tests and validate results.
Deploy to on-premise test site.
Using local (non-public) URLs, run Selenium web tests in parallel on different devices (e.g. Windows 10 desktops, tablets and smartphones; Apple tablets and smartphones; Android tablets and smartphones) with different browsers (i.e. Edge, FireFox, Chrome, Internet Explorer) and validate results.
Using "local" URLs stands for something similar to BrowserStack Local.
This includes the ability to take screenshots and to compare them to reference screenshots of a previous test on the same device/browser.
Show test results of all the tests.
If all the tests have run successfully,
Request confirmation to deploy to production site.
Deploy to production site.
Does Microsoft offer on-premise services for this? Which are they?
You can still get TFS from Microsoft as an On-premise variant of VSTS. Both have the same codebase, but the SaaS variant is released more often (every three weeks!).
VSTS/TFS can handle Git repositories out of the box, with all steps you described. Even uploading a new software version to all the stores :-)

Automated conversion of aps-environment from development to production in Xamarin

In my Xamarin iOS project, Entitlements.plist has aps-environment set to development, for dev testing purposes. I'm using the Visual Studio Team Services Extension for the App Store to automate publishing builds to TestFlight. However, when it uses fastlane pilot to upload the app, I get this error:
ERROR ITMS-90046: "Invalid Code Signing Entitlements. Your application bundle's signature contains code signing entitlements that are not supported on iOS. Specifically, value 'development' for key 'aps-environment' in 'project' is not supported.
It looks like the environment should get switched to production when running the continuous integration build. How do I automate this?
Remove Entitlements.plist, and add Entitlements.developer.plist and Entitlements.production.plist. In iOS Bundle Signing, enter the corresponding plist file for Customer Entitlements based on the build configuration.
I have just removed aps-environment from Entitlements.plist without adding new files and it worked for me

Can my Azure Mobile Service run locally?

I am new to Azure. I am following this tutorial in setting up my .Net server for azure and ios client.
http://azure.microsoft.com/en-us/documentation/articles/mobile-services-dotnet-backend-ios-get-started/
I am testing my ios client on simulator. Can I run my .NET server on my location machine with put publish it to azure? If yes, how can I figure my client to talks to this location machine?
And in the tutorial, it creates a Database Table. If I run it locally, do I need to setup my location DB server?
Not on a mac (which you need for iOS development). With the .NET backend you can run the service locally on a Windows machine, but it will be running off of localhost.
For iOS development, you have two choices. If you use the JavaScript / node.js backend, where all of your development can be done in the Mac (you can configure the service via Git locally or directly in the portal). If you use the .NET backend (the link you mentioned), then you need the Mac for the client-side development, and a PC (or Windows running in the Mac on an emulator such as parallels) to develop the server (you need Visual Studio for that).
And regarding your question about the table, when you run it locally, it will use Entity Framework Code First (by default), so you don't need to create the table in your (local) database - it will create it automatically for you.

Resources