Skip to Content
Technical Articles
Author's profile photo Kevin Riedelsheimer

iOS SAP TechEd Missions available for public

Hi community,

for those who I’ve met on SAP TechEd in 2019, I’ve promised to make the iOS TechEd missions available after TechEd and here we are.

Feel free to take a look and try them out:

I hope you will enjoy working through the missions.

As always Happy Coding!

 

 

 

Assigned Tags

      6 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Denys van Kempen
      Denys van Kempen

      Thanks Kevin

      Your tutorials were added to the overview blog in the section Developer Center. Were they part of the Developer Garage or any UX learning journey hands-on workshop as well?

       

      Author's profile photo Kevin Riedelsheimer
      Kevin Riedelsheimer
      Blog Post Author

      Hi Denys van Kempen ,

      the tutorials were part of the Developer Garage.

      Cheers,

      Kevin

      Author's profile photo Douglas Maltby
      Douglas Maltby

      Thanks, Kevin. I've completed the first Image Classification app mission at https://developers.sap.com/mission.sdk-ios-image-classifier.html

      It certainly took me longer than 2hrs 10 min, but I've got it all working. At times I had to go backwards and revisit earlier sections to get things just right.

      I did have a few issues, and I think 1 or 2 that could use revision in the mission code:

      1. Constraints - 0 doesn't seem to "stick", and always seems to reset to 4. It doesn't really seem to matter, but there is a 4 pixel border in my app: https://developers.sap.com/tutorials/fiori-ios-scpms-teched19-02.html
      2. Prototype cells require (maybe just warning) a reuse identifier name. I called them customerIdentifier and productIdentifier: https://developers.sap.com/tutorials/fiori-ios-scpms-teched19-03.html
      3. The ML Model ouput must be used in the project later, not the project itself. I missed dragging the output model out into Finder as a file. https://developers.sap.com/tutorials/fiori-ios-scpms-teched19-05b.html
      4. The SDK code uses cell.keylabel which throws a lot of warnings to be replaced. Just warnings, but  the SDK may need updated for 'keyLabel' is deprecated: This property is has been deprecated.  Please set the `title.text` property.
      5. The ML model reference in the code is TechEd2019 and needs to be changed to ProductImageClassifier. Combined with using the ML project, rather than model, this took some time for me to unwind.
        https://developers.sap.com/tutorials/fiori-ios-scpms-teched19-07.html

      As an SAP developer, but inexperienced iOS developer, it wasn't always easy for me to follow your relative coding instructions or know exactly why I was putting code somewhere and how it matters (e.g. "Add the following lines of code inside the class brackets and right below the class definition") but I ultimately figured it out and got the app working to classify laptop and office chair images (although not the resulting category product *images* via lazy loading).

      I thought highlighting my issues above might help others who find this mission later. Sharing a public repository might also help everyone get the code exactly right. I've pushed my Xcode project to GitHub here: https://github.com/douglasmaltby/SalesAssistant

      Many thanks for this initial foray into the iOS SDK,  Xcode and Create ML! It was worth the time from several angles!

      Doug

      Author's profile photo Kevin Riedelsheimer
      Kevin Riedelsheimer
      Blog Post Author

      Thank you for the Feedback.

      Author's profile photo Douglas Maltby
      Douglas Maltby

      I also completed the 2nd iOS SAP TechEd mission app "MyDeliveries" with Create Your First iOS Application with the SAP Cloud Platform SDK for iOS last weekend. But I haven't yet made the additions of adding dynamic calls for the chart or locations on the graph. I've tagged them in XCode with //FIXME: for later work.

      I've put the results MyDeliveries2 (a 2nd iteration after I couldn't found where I messed up the SDK code) in github for reference here: https://github.com/douglasmaltby/MyDeliveries2 . My lesson there was to commit to source control from the beginning of the exercise...

      MyDeliveries2 builds and runs perfectly from XCode in the iPhone simulator, but not on my iPhone X with 13.3.1. I get an error "dyld: Library not loaded: @rpath/SAPCommon.framework/SAPCommon"  that also says framework code signatures are invalid for the private containers that it does find. Based on what I found at Stackoverflow, I think the root cause of the issue is with Apple and will be resolved in iOS 13.4. Here's the (non-SAP) thread that is the basis of my conclusion: https://stackoverflow.com/questions/60015309/running-ios-apps-causes-runtime-error-for-frameworks-code-signature-invalid

      Regardless, thank you for these iOS exercises. They were both highly worthwhile and I look forward to more, especially with the SCP SDK for iOS 5.0 just released yesterday! https://blogs.sap.com/2020/03/06/cp-sdk-for-ios-5.0-released

      Again, many thanks!

      Doug

      Author's profile photo Kevin Riedelsheimer
      Kevin Riedelsheimer
      Blog Post Author

      Again thank you for running through my missions. I will keep the community posted about more content 🙂