HoloLens holographic app - hololens

When you use the "Holographic DirectX 11 App" template in Visual Studio, it creates an app that occupies the entire HoloLens view (I believe it's call the Holographic View).
How do you build a Holographic App like the Hologram demos where you can re-size the box and place the app in the Holographic Shell?
BTW, can someone with a higher reputation create a new tag "hololens-directx". I think there are beginning to be more DirectX development and this would help distinguish from the Unity questions.

Short Answer: Not Yet
Microsoft is reserving development right such as this as well as live tiles. Of the many forum posts regarding this, an official Microsoft team has formally responded to this one below.
To understand more options available to you in your app development, see this page about the app model.

The ability to place holograms into the Holographic Shell is not exposed to app developers.
Hologram app is an inbox app and third party apps cannot replicate this functionality.

App developers can only place GLTF model into Shell as a link to their app.
https://learn.microsoft.com/en-us/uwp/schemas/appxpackage/uapmanifestschema/element-uap5-mixedrealitymodel

Related

Android studio library

My team and I just developed a web base system. Next, we are planning to build an android mobile app version of the system. But none of us have experience of creating a mobile app. I did some reading from google, I saw many posting about kotlin, volley, retrofit etc.
One thing I still don't understand, can someone tell me how kotlin, groovy are different with retrofit and volley?
Is it just like web base development where one is for front end development and another one is for backend?
My app would need to constantly fetch and submit data to phpmyadmin (which I put in my VPS hosting).
Can someone give me a suggestion which library is the best for me to use to create my mobile app?
Thank you in advance!

Building an App in SharePoint Online

I have a client that wanted an easier way for his team members to build/update pages on their site, their site is heavily customized with a lot of JavaScript. The issues is that when a team member wanted to add a new section to the page they had consult a dev person to hard code in the desired features. So we decided to create customizable web parts of those features making the site more self-serviceable.
When I first started I found some documentation that said to use visual studios to build the web part using sandbox code, upload it to the site and then they would just need to activate it to deploy it on the site. Buuut unbeknownst to me code based sandbox solutions are no longer supported in Sharepoint and therefore the web parts we built could not be deployed. I was then told that I needed to build it as an Add-in, but as I started building the add-ins I found that the customizable field properties (i.e. ability to change background color, text style/color and banner color) that I want are not implementable as a add-ins.
So now I’m back at square one and I don’t know if it’s even possible to build a web part as a add-in or do I need to go a different route?
Any thoughts or links to sources you can provide would be HUGELY appreciated!
Thanks
Terek
In SharePoint 2016 things have changed a lot from the traditional model which was the classic way of building web parts. The way you worked before is called "classic", the new way is called "modern", and the way to get your dev environment is the following (brace yourself, it is a long answer):
1) In SP2016/Online you will need to configure your dev machine with the following environment, installing the following:
NodeJS Long Term Support version
Yeoman (which will be used to create web parts)
GULP (which will play the role of virtual web server)
Once the three components above are installed, you will install the Yeoman SharePoint Generator to create the SharePoint Web Parts, Yeoman simplifies the process of creating things by delivering templates ready to use and making all the configurations standard, you gonna love this guy!
To configure your machine see the following link:
https://dev.office.com/sharepoint/docs/spfx/set-up-your-development-environment
2) In SP2016/SP Online, you will develop for SPFx (SharePoint Framework), Microsoft has made significant efforts to address the changes and help developers to embark on this new journey by publishing training and educational material at GitHub, YouTube, and on its official website (I will add link below), but for the purpose of helping you, please follow this tutorial, it helped me to learn how to develop Modern Web Parts for SP 2016/Online:
https://dev.office.com/sharepoint/docs/spfx/web-parts/get-started/build-a-hello-world-web-part
3) From the tutorial above, you will get a fully functional Modern Web Part that can be deployed to SP2016/Online, you will see the new modern architecture allows you that old experience of "sandboxing" web parts in a faster way without, thus solving your problem of constant updating/refactoring components in a live production environment. This way now allows you to constantly update the code and see the results in real-time , you will be able to see results on your dev environment by calling: https://localhost:4321/temp/workbench.html and at same time on your SP environment. for example: http://portal.company.com/_layouts/workbench.aspx
Links:
YouTube "SharePoint Framework Tutorials" - it is the step by step tutorial video showing the whole process of creating a web part:
https://www.youtube.com/playlist?list=PLR9nK3mnD-OXvSWvS2zglCzz4iplhVrKq
GitHub repository with the full documentation, samples and extras for the SPFx and PnP (this is another story for another time):
https://github.com/SharePoint
I hope it helps you!

WinJs background application

I am working on creating a Windows 10 Universal app. My goal is to have the app run in the background and periodically display a status notification to the user.
I've seen a few articles that talk about creating a background task within the app (https://msdn.microsoft.com/en-us/windows/uwp/launch-resume/run-a-background-task-on-a-timer-), is this the best design pattern I can follow? I'm fairly new to Windows Universal apps and any recommendations on how to do this would be appreciated.
Look at the IBackgroundTask docs. In addition, you can easily implement notifications via the OS with Adaptive Toasts
Since the story around notifications can get complex depending on how you want to control UX, don't be afraid to research building an RT component if you can't find a UWP API that meets your needs. For instance, you can package an RT component with your UWP app that calls into native C++ libraries or more low-level Windows APIs to curate the notification experience for your user.

Can I make a universal app using HTML that runs on Hololens?

I believe these statement are true:
1) All Universal Apps Work As Holograms
2) Universal Apps can be built using HTML/JS
Does this mean I can build a holographic universal app using web technologies? For example a holographic visualizations dashboard in D3.js?
It's still too early to say definitively, but here is some info I could find.
UPDATE: There is now a library called HoloJS which allows devs to write apps in html.
First your assumptions 1 and 2 are correct. There are ways to build UWP (Universal Windows Platform) apps in javascript/html. This means you could write a UWP JS app which can run webgl in a 2D window placed somewhere in your environment. You could also run your app on Microsoft Edge.
So if all you want to do is display a 2D dashboard in a 3D room, yes it looks very possible. If you want the application to render 3D objects all around the user, there are some problems you will need to work around.
Quoted from https://forums.hololens.com/discussion/80/is-it-possible-to-use-webgl-with-hololens-repost#latest:
"Holographic apps are powered by the same graphics stack as the rest of the Windows 10 ecosystem. That means that just like the Xbox and Win32 games, apps for HoloLens are built on top of DirectX."
So you're kind of stuck with either Unity or DirectX if you want 3D visualizations that surround the user. BUT there could be a way...
A user at the bottom of this page http://forums.hololens.com/discussion/80/is-it-possible-to-use-webgl-with-hololens-repost said:
"That is interesting idea. If I understand correctly, you are trying to hook your Edge browser with your HoloLens and project 3D graphics with WebGL on your Edge browser based on the REST APIs available from HoloLens"
So, you could perhaps fullscreen your app or find some way to ensure it is in front of your user's face and then use a server to direct API calls from the hololens to your web-app in order to transform your geometry around the user.
It might be worth it to look into integrating D3 visualizations inside a threejs app if you want the holographic visualizations. https://www.youtube.com/watch?v=bWjn1N4SJsk
If you just want a 2D screen in the environment then develop as normal and use Edge inside the hololens.

Windows 10 universal app cross app communication availability

I am an WPF developer with little knowledge for the way "mobile" apps work but in general I believe that they work in some sort of sandbox way (meaning they should not be able to access each others process, info etc., I might be totally incorrect on this one). So I am wondering if such "limitations" are applied to the Universal Windows Platform (UWP) apps?
The reasoning for my question is that I would like to write and app that checks if another Universal App is in process and use some of its information. In WPF there are ways of doing just that but in UWP apps I am not sure if it is/should/will be possible.
Thanks.
There are a couple of solutions in Windows 10. Firstly, if you are building an enterprise app and can also side-load normal Desktop apps, you can use this technique to build your UI as a UWP but also be able to break out of the sandbox and do other things on the desktop.
Secondly, if the app you want to read from is cooperative (ie, is designed to provide information; you're not just grabbing it without permission) then you can use App to App services to send and receive information between two consenting applications.
Both links are to //build videos but you can download the slides too that should contain code samples.

Resources