Introducing the SmartHotel360 Reference Mobile Apps

PierceBogganPierceBoggan USForum Administrator, Xamarin Team, Developer Group Leader Xamurai
edited January 2018 in General

The SmartHotel360 reference applications shown at Microsoft Connect(); are now all open-source.,

Use this thread to discuss the apps, including architecture questions and/or issues you experience with the mobile apps themselves.

Blog: https://blog.xamarin.com/introducing-smarthotel360-reference-mobile-apps/

Posts

  • So far the git repo only has a docs folder. No source code?

  • ZenDroidZenDroid USMember ✭✭✭

    Where is source code :)?

  • CharwakaCharwaka INMember ✭✭✭✭✭

    Hi @PierceBoggan

    is src pushed ?

  • ZenDroidZenDroid USMember ✭✭✭

    Source code is in separate repositories:

    Backend Services
    Public Website
    Mobile Apps

    See "SmartHotel360 Repos" in description.

  • ZenDroidZenDroid USMember ✭✭✭
    edited December 2017

    Authentication doesn't work

  • XamITXamIT USMember ✭✭

    @stevefoxover.5931 said:
    So far the git repo only has a docs folder. No source code?

    Please scroll down on the blog page - https://github.com/Microsoft/SmartHotel360 to look for "SmartHotel360 Repos"
    You will find 5 links to separate git repos

  • XamITXamIT USMember ✭✭

    @PierceBoggan , thank you for publishing this reference application.

    I am new to Xamarin and Azure stack. Releasing of this app helps a lot to learn various edges of the tech stack.

    1. Is there a set up doc to set up all projects across repo for running and debugging the demo locally ?
    2. I have cloned all 5 repos in my userprofile\Dev\GitHub folder
    3. Opened the SmartHotel.Clients.sln solution in the VS 15.5.2; tried to update (56) NuGet packages for solution
    4. The building of the solution results into 2 errors as shown in the pic below. It seems 'Xamarin.Android.Support.Animated.Vector.Drawable 26.1.0.1' package is not references in the android project but it still shows up in the update list. I got these errors even when I unchecked the package
    Any thoughts?

    Thanks,
    XamIT

  • XamITXamIT USMember ✭✭

    Running build of the solution SmartHotel.Services.All throws following error -
    Any thoughts?

  • XamITXamIT USMember ✭✭
    edited December 2017

    Building SmartHotel360.PublicWeb throws following error
    On my surface book, I have installed node v 9.3.0 and docker version 17.09.1 CE.

    Updating the NuGet packages and then rebuild did go thru fine.
    But, running the website in the IIS express resulted in the following error -

    Any thoughts on this?

    Thanks

  • XamITXamIT USMember ✭✭
    edited December 2017

    > @XamIT said:

    Running build of the solution SmartHotel.Services.All throws following error -
    Any thoughts?

    Building these services via Docker [4gb was allocated] succeeded until the task API build that failed with the error code 127!
    remaining services were halted from the docker build .. screenshot below shows the status

  • XamITXamIT USMember ✭✭

    @XamIT said:
    @PierceBoggan , thank you for publishing this reference application.

    I am new to Xamarin and Azure stack. Releasing of this app helps a lot to learn various edges of the tech stack.

    1. Is there a set up doc to set up all projects across repo for running and debugging the demo locally ?
    2. I have cloned all 5 repos in my userprofile\Dev\GitHub folder
    3. Opened the SmartHotel.Clients.sln solution in the VS 15.5.2; tried to update (56) NuGet packages for solution
    4. The building of the solution results into 2 errors as shown in the pic below. It seems 'Xamarin.Android.Support.Animated.Vector.Drawable 26.1.0.1' package is not references in the android project but it still shows up in the update list. I got these errors even when I unchecked the package
    Any thoughts?

    Thanks,
    XamIT

    Does this reference app use the free tier of the Azure account? Do I need to factor-in for any paid services ?

  • XamITXamIT USMember ✭✭

    Hello Community and @PierceBoggan, @JamesMontemagno , @DavidOrtinau,

    Is there anyone who is successful in setting up this reference app (all solutions) on the same PC?

    I have posted couple of my findings above.

    Your input will be appreciated.

    Thanks

  • ncflyingncflying USMember ✭✭

    I have the iOS app running in the simulator, but I cannot seem to create account, login or get past this screen. Your demo script does not seem to detail how to get the app fully running.

  • XamITXamIT USMember ✭✭

    @ncflying said:
    I have the iOS app running in the simulator, but I cannot seem to create account, login or get past this screen. Your demo script does not seem to detail how to get the app fully running.

    Hi @ncflying, were you able to compile code across all solutions ? What's your set up look like? I mean are you running backend services, Mobile app, web site on the same machine ?
    My build process for backend services is broken at the Tasks API.

    I have posted the errors I am facing with screenshot above. Did you face such issues?

    Thanks,
    XamIT

  • ncflyingncflying USMember ✭✭

    I have the SmartHotel Client "app" running on my Mac with Visual Studio 2017. It compiled fine after got a few minor settings adjusted. The app didn't want to pick allow me to pick iPhone 8 and 11.x version for the Simulator. This required a change to the plist to be iOS 11.

    Backend, I have been trying to run it on a Windows machine in VS 2017. I think I have the same problem as you.

    Too bad. this is the type of app sample I have been looking for.

  • ncflyingncflying USMember ✭✭

    I am still plugging away at this. I followed these instruction on my Mac. https://github.com/Microsoft/SmartHotel360-Azure-backend. I am having slightly different issue than my PC, but I think I am closer.

    Some Services were not working.

    Here is the output from Docker on my SQL. I have 16GB of RAM. I needed to adjust the RAM setting

    _2017-12-23 01:27:13.643 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
    tasks-data_1 | 2017-12-23 01:27:13.644 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
    reviews-data_1 | 2017-12-23 01:27:13.656 UTC [67] LOG: database system was shut down at 2017-12-23 01:27:13 UTC
    tasks-data_1 | 2017-12-23 01:27:13.658 UTC [66] LOG: database system was shut down at 2017-12-23 01:27:13 UTC
    reviews-data_1 | 2017-12-23 01:27:13.662 UTC [1] LOG: database system is ready to accept connections
    tasks-data_1 | 2017-12-23 01:27:13.665 UTC [1] LOG: database system is ready to accept connections
    sql-data_1 | sqlservr: This program requires a machine with at least 3250 megabytes of memory.
    sql-data_1 | sqlservr: This program requires a machine with at least 3250 megabytes of memory.
    src_sql-data_1 exited with code 1
    _

    To deal with this, I set my Docker Pref. 4.0GB in order to run SQL Server today. if you're on a mac, click on the docker icon (Upper Right)>preferences>Advanced ..to set the memory

  • ncflyingncflying USMember ✭✭

    New update. I have the app Running. All on Mac. All these steps may not be needed, but this is where I landed.
    1) In Client App. Set iOS to Startup, Set pfile to use iOS 11
    2) Downloaded the Backed app from GIT into a new folder.
    3) Set Docker to run with 4GB Ram
    4) Lauch SQL backend, Launch App Backend - with Docker
    5) login with an EMAIL Address, not just a user name.

  • XamITXamIT USMember ✭✭
    edited December 2017

    Hi @ncflying, I am happy to see your progress. Congratulations!

    Yes, it is a perfect reference App that could help community to learn, embrace and keep up with the updates as long as Microsoft keeps this reference as its priority for championing the full stack of mobile, cloud, opensource, AI/ML/Analytics and devOps technologies. I have been really eyeing on this too.

    I am not working on iOS platform at this point. Still trying to get my basics squared away (new to Xamarin but not to the IT).
    This application is still broken on my PC.

    Unfortunately, even - though Microsoft acquired Xamarin over 20 months ago, it seems the Xamarin team isn't able to scale to support community. Releases are way too frequent to catch up with Visual Studio releases coming out with deliverables with very poor quality engineering. Even the basic starter app on VS Preview 15.6.1 are not compiling.

    I am expecting this reference app to run entirely on my brand new (top end model) of the Surface book2. There should be no reason to fund additional money for running a reference App when you have the Microsoft claimed "THE MOST POWERFUL EVER". But, so far the experience has been absolutely dissatisfying.

    Here are my outstanding issues and concerns with Xamarin (my platform - PC, VS Studio 2017 15.5, Android phone, Google devices, VS Android Emulator, Docker for Windows)
    a. First, after 20 months of acquisition, these forum, blog etc should be merged under Microsoft site.
    1. It is way confusing to juggle between MSDN library / Xamarin Forum / Support / University
    b. Solutions across layers from the reference App SmartHotel360 don't compile.
    1. I was looking forward to have all layers of the solutions to be built within the IDE. But, that’s not the case.
    2. Being a strong Microsoft believe and champion – a company that help and focused on the productivity of the
    developer first – it seems the focus here is to have developers go in and out of the IDE. Who has time to remember
    commands and scripts ? As an IT practitioner, we want to deliver business solutions and not embrace how to
    remember commands. That’s the whole basics why Microsoft led the software world first.
    3. I think when roots are weakened and rotten, the branches and fruits of the tree are going to be rotten. I hope
    Microsoft helps developer community by making its roots stronger.
    b. No timely and helpful responses from either the core team who has built this reference app or from Xamarin support
    team.
    c. The basic UI designer is missing .. XAML previewer is pathetic . New stunts are made to deploy live player in the
    emulator which are crashing (screenshot attached in my posts above). Not sure why there can't be a toolbox with the XAML controls supported in Xamarin form? Why do we need to waste time to begin with for coding XAML and look for crazy expensive options from Infragistic (https://www.infragistics.com/products/xamarin) or Telerik (https://www.telerik.com/xamarin-ui)?
    d. Visual Studio Emulator not supported beyond API 23. Basic starter android app don't get deployed automatically. I am
    still struggling with this.
    e. Understood that HAXM and Hyper-V conflict with each other. But no attempt shown by MS/Xamarin team to address this
    for simplifying developer's life
    f. Lots of promotions, requests and celebration for the roadmap but no public recognition and acknowledgement of broken
    foundation that will allow developers to get quickly on the platform.

    I am hoping that someone from Xamarin team will respond to my issues posted earlier (before I give up on Xamarin) and help me and the community to learn this technology in a simple and swift manner.

    Happy Holidays and Season's Greetings to all!

    Thanks,
    XamIT

  • ncflyingncflying USMember ✭✭

    I agree with XamIT. It feels like some users are standing behind the Xamarin product more than MS is at times. Xamarin team, you put a lot of work into this sample framework. I hope they support it and complete it.

    1) I did get the Droid App to compile and run on VS 2017 Mac.
    2) Backend. Many errors on compile, but if I push them into Docker, they launch and run.

    While investigating the App, I am a bit confused. I spent a bunch of time making sure I have the Docker "backend apps" running. I cannot find any place in the app where they are communicating with them. It really looks to me that everything is static in the App. The city elements are not in the DB, auth is just dummy auth, etc.

    While investigating some of the backend, here is access to one of the SQL databases, Profiles, running in the Docker backend: Port 6433;Database=SmartHotel.Profiles;User Id=sa;Password=Passw0rd!
    There is a database running on port 1433, but I cannot seem to find the password.

  • XamITXamIT USMember ✭✭
    edited December 2017

    Hi @nclfying, Xamarin team and our community friends,

    Here is what I wish and request in having this SmartHotel360 reference App set up for Xamarin fans to learn, grow and champion the edge of mobile development in the world of Cloud, AI, ML, Analytics. I am very hopeful that the community can and would love to maintain this app across deliveries of the releases and features of the Xamarin roamap.

    1. The master branch of all 4 solutions in the SmartHotel 360 reference app will always be current with error-free compliable code to be tested across all latest GA editions of Visual Studio on PC and MAC.
    2. Provide and maintain steps to compile and to deploy components / Apps / APIs across all layers of the reference app within all supported GA versions of the Visual Studio IDE
    3. Microsoft to have the XAML previewer as the first priority [instead of juggling with live players running on emulators that HAXM / Hyper-V config dependent causing so much non-productivity] to enable developers and even designers in engaging and collaborating to finalizing UI screens quickly and efficiently.
    4. Provide a toolbox for XAML Forms element / controls (pages, layouts etc) to design UI on a designer palette. The toolbox will always shown elements corresponding to the Xamarin Form version that updated in the Nuget / Project config.
    5. Once Apps are built, use Visual Studio App Center to validate screen flows [with potentially MVVM based mock up backend template auto created into the app corresponding to the data elements laid out on the XAML Form screens]. This validation could also help developers to validate screens across Android / iOS and UWP [as applicable].
    6. This will also help community and new developers to use and get familiar with Visual Studio App Center which was announced on Nov 15th, Mobile Apps feature of Azure App Service and with many other Azure services from inside the Visual Studio IDE

    Your thoughts will be appreciated.

    I am looking forward to setting up all layers of this reference app on my PC.

    Thanks,
    XamIT

    P.S. In the mean time , please read this nice article on Xamarin Mobile Cross-Platform Development with Xamarin

  • JamesMontemagnoJamesMontemagno USForum Administrator, Xamarin Team, Developer Group Leader Xamurai

    I am working with the team on the feedback on the SmartHotel360 applications. Please post issues on the GitHub pages for anything that you find as they monitor the issues daily and can work on any issues that you may be running into.

    Appreciate the additional feedback that has been discussed above and taking some of this back to the team.

  • XamITXamIT USMember ✭✭

    Hi @JamesMontemagno , I am thrilled to know that finally my thoughts have reached you and the Xamarin team.
    I am engaged with the team and the community on GitHub.

    Thank you.

  • ncflyingncflying USMember ✭✭

    I will join the GitHub group over there. I hope that we see more samples, recipes, and How to's. The Xamarin has great potential, as long as people stand behind the project. MobileDev changes quickly and there is huge potential for Xamarin.

  • JosephHarveyJosephHarvey USMember ✭✭
    edited November 2018

    @PierceBoggan
    Little Late to the party here, but I have a question regarding the Implimentation of ListViews in this sample project.
    Why are you using a ContentView inside the ItemTemplate? Wouldn't it be more performant to use a Datatemplate? You could even create a Datatemplate in another file and reference it in your listview if your reason is to have code reusability or to shrink the page?

    I also had a question regarding naming. Is it standard practice to rename Pages to Views or is it personal preference? What does the Xamarin team typically do in their own apps.

Sign In or Register to comment.