Git Product home page Git Product logo

ms-intune-app-sdk-ios's Introduction

Microsoft Intune App SDK for iOS

Version 19.4.0

NOTE: We only support Intune App SDK version 17.0.0+ We recommend always staying up to date with the latest version.

See release notes for more information. GitHub users can recieve email notifications for new releases to this repo by clicking on Releases only from the "Watch" drop-down menu in the upper right-hand corner.

The Microsoft Intune App SDK for iOS enables data protection features and mobile app management via Microsoft Intune.

Before you install and use Microsoft Intune App SDK for iOS you must:

See the Intune App SDK iOS Developer Guide on how to integrate the SDK into your iOS app.

Supported SDK, Xcode and iOS versions:

Supported Intune SDK Version Supported iOS Versions Supported Xcode Version Support Scope
18.0.0+ 15+ 15 Main release branch - supports all feature work and bug fixes
17.0.0+ 14+ 14 (latest minor version) High-priority security fixes only

ms-intune-app-sdk-ios's People

Contributors

aanavath avatar abasore avatar gastaffo avatar kyle-reis avatar msintuneappsdk avatar tranamst avatar vigavadi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ms-intune-app-sdk-ios's Issues

Enforce Intune MAM App Protection Policy

Hi,

Our Intune MAM enabled app used to have MAMPolicyRequired and AutoEnrollOnLaunch set to True/Yes and if I recall correctly, the app will be blocked by Intune MAM screens until a MAM policy was installed. I.e. the app would not be allowed to continue to run further.

However because our app is very dynamic and driven based on server / environment configurations and we make use of ADAL (depending on client configurations) the Intune MAM enabled way of enrolling had to be changed (so the user is not double prompted for login etc.) and thus we can now no longer rely on Info.plist settings. Thus at runtime I decide which one of the 2 enrollment api calls to make.

According to the documentation, the IntuneMAMEnrollmentDelegate should only be used for logging / debugging and not tied to business logic at all.

So my question is:

  • How would you recommend that I "block" our app from logging in the user / showing him content until we know that an Intune MAM policy is inplace?

At the moment there is a chance where the enrollment fails, the app loads further and the user is able to overcome security (for example being able to copy and paste from the app).

Kind regards,
Andre

OneDrive app not showing Mail managed app on the list while using Send a Copy

In my enterprise we noticed that after recent releases of OneDrive for iOS, supposedly related to new Intune backend and Intune SDK changes, OneDrive is not showing iOS Mail native app on the list while approaching to share a file from OneDrive to email message via Share->Send a Copy->Mail app. Mail app is not visible on the list while other managed apps are there. It is only possible while we disable Intune App Protection.

Edit: Interestingly, I do not see Mail app on the list of destinations even while on not MDM enrolled device and this happens only while sending a copy from corporate OneDrive account. Mail app is on the list while sending a copy from your personal OneDrive account. This definitely has something to do with Intune App Protection and Intune SDK blocking iOS native Mail app.

How to get access token from Azure ADFS SSO?

Our iManage server can be configured to work with Azure ADFS SSO. But how would this tie into the built-in authentication with the Intune SDK? What happens when re-authentication is needed? I assume the Intune SDK will show the re-authentication screen?

I could bypass the login requirement of the iManage server if I had a cookie/token set for the HTTPS calls. But I don't know how or where to get the token.

Version 12.0.12 not compatible with xcode 11.2

Version 12.0.12 is not compatalbe with xcode 11.2, we are seeing the following error when trying to import IntuneMAMSwift

Module compiled with Swift 5.1 cannot be imported by the Swift 5.1.2 compiler: ...

It looks like xcode 11.2 may have a known issue that could be a cause:https://developer.apple.com/documentation/xcode_release_notes/xcode_11_2_release_notes

It states:
If a module is built with BUILD_LIBRARIES_FOR_DISTRIBUTION and contains a public type with the same name as the module itself, clients will fail to import the module. (19481048) (FB5863238)

Workaround:
Rename either the type or the module to remove the conflict.
Stackoverflow shows a possible fix if its not related to the below known issue with xcode11.2

Info on what could be causeing this was found in:
https://stackoverflow.com/questions/58654714/module-compiled-with-swift-5-1-cannot-be-imported-by-the-swift-5-1-2-compiler

IntuneMAMSettings.h missing from headers folder in v11.1.2

Describe the bug:

When updating version of Intune SDK to version 11.1.2, App doesn't compile because of missing header IntuneMAMSettings.h.

This happens because library is added to the project without using the Framework, but using libIntuneMAM.a and headers are added from your Headers folder.

Problem is that IntuneMAMSettings.h is missing in Headers folder.

Workaround

Copying IntuneMAMSettings.h from Framework headers works.

Intune App SDK for iOS (please complete the following information):

  • What version of the Intune SDK are you using? 11.1.2 Are you using the latest version? Yes
  • What platform is your app based in (Java, Xamarin based, Cordova, etc)? Objective-C
  • For errors during build, does the app build without Intune SDK integration? Yes
  • Who is the customer? CipherHealth

Duplicate symbol MAMConditionalAccessEvent

With version 9.0.3 I get this linker error (Xcode 9.4.1), for device and simulator builds. Is there something new I maybe need to change in my project? 8.1.1 is compiling and working fine.

duplicate symbol OBJC_CLASS$_MAMConditionalAccessEvent in:
InTune/release/libIntuneMAM.a(ConditionalAccessEvent-D05887428D983D73.o)
duplicate symbol OBJC_IVAR$_MAMConditionalAccessEvent._duration in:
InTune/release/libIntuneMAM.a(ConditionalAccessEvent-D05887428D983D73.o)
duplicate symbol OBJC_IVAR$_MAMConditionalAccessEvent._funnelKey in:
InTune/release/libIntuneMAM.a(ConditionalAccessEvent-D05887428D983D73.o)
duplicate symbol OBJC_IVAR$_MAMConditionalAccessEvent._remediation in:
InTune/release/libIntuneMAM.a(ConditionalAccessEvent-D05887428D983D73.o)
duplicate symbol OBJC_IVAR$_MAMConditionalAccessEvent._result in:
InTune/release/libIntuneMAM.a(ConditionalAccessEvent-D05887428D983D73.o)
duplicate symbol OBJC_IVAR$_MAMConditionalAccessEvent._silent in:
InTune/release/libIntuneMAM.a(ConditionalAccessEvent-D05887428D983D73.o)
duplicate symbol OBJC_IVAR$_MAMConditionalAccessEvent._startTime in:
InTune/release/libIntuneMAM.a(ConditionalAccessEvent-D05887428D983D73.o)
duplicate symbol OBJC_METACLASS$_MAMConditionalAccessEvent in:
InTune/release/libIntuneMAM.a(ConditionalAccessEvent-D05887428D983D73.o)
ld: 8 duplicate symbols for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Intune SDK for iOS support for Swift apps built with Xcode 10.2+

The Intune SDK for iOS does not yet support Swift apps built with Xcode 10.2+. These apps use Swift libraries that are baked into the OS on iOS 12.2+. These apps use Swift libraries that are baked into the OS on iOS 12.2+.

Obj-C apps or any app built on an older version of Xcode should continue to use the framework that is currently available.

The development team is working to release a new framework for Swift apps built with Xcode 10.2+.

Intune MAM 11.0.13 + ADAL 4.0.1 + Swift 5.0 crash on enrollment

Describe the bug:

I just upgraded our project to Swift 5.0. Also upgraded ADAL to 4.0.1 since Intune MAM now supports latest ADAL.
Upgraded Intune SDK (using only Swift) to the latest release 11.0.13.

App crashes because of an unrecognized selector sent to UIWebView: self.webView.navigationDelegate = self inside the class: MSIDOAuth2EmbeddedWebviewController

Briefly looking at it, the class MSIDOAuth2EmbeddedWebviewController expect an instance of WKWebView but was instead given UIWebView.

To Reproduce
N/A

Expected behavior:
Enrollment to succeed and app not to crash.

Screenshots and logs:

	(lldb) bt all
	ADAL was compiled with optimization - stepping may behave oddly; variables may not be available.
	* thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 1.2
	    frame #0: 0x000000018d9e39c0 libobjc.A.dylib`objc_exception_throw
	    frame #1: 0x000000018e725ab8 CoreFoundation`-[NSObject(NSObject) doesNotRecognizeSelector:] + 140
	    frame #2: 0x00000001bb02cf60 UIKitCore`-[UIResponder doesNotRecognizeSelector:] + 280
	    frame #3: 0x000000018e80eac4 CoreFoundation`___forwarding___ + 1408
	    frame #4: 0x000000018e81075c CoreFoundation`_CF_forwarding_prep_0 + 92
	  * frame #5: 0x0000000101341b78 ADAL`-[MSIDOAuth2EmbeddedWebviewController loadView:](self=0x0000000101daeda0, _cmd=<unavailable>, error=<unavailable>) at MSIDOAuth2EmbeddedWebviewController.m:158:18 [opt]
	    frame #6: 0x00000001013416b4 ADAL`__66-[MSIDOAuth2EmbeddedWebviewController startWithCompletionHandler:]_block_invoke(.block_descriptor=0x00000002820b7810) at MSIDOAuth2EmbeddedWebviewController.m:116:9 [opt]
	    frame #7: 0x0000000101b4b6f0 libdispatch.dylib`_dispatch_call_block_and_release + 24
	    frame #8: 0x0000000101b4cc74 libdispatch.dylib`_dispatch_client_callout + 16
	    frame #9: 0x0000000101b5a6fc libdispatch.dylib`_dispatch_main_queue_callback_4CF + 1360
	    frame #10: 0x000000018e79ac1c CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
	    frame #11: 0x000000018e795b54 CoreFoundation`__CFRunLoopRun + 1924
	    frame #12: 0x000000018e7950b0 CoreFoundation`CFRunLoopRunSpecific + 436
	    frame #13: 0x000000019099579c GraphicsServices`GSEventRunModal + 104
	    frame #14: 0x00000001bb001978 UIKitCore`UIApplicationMain + 212
	    frame #15: 0x000000010170c9ec IntuneMAMSwift`Intune_UIApplicationMain + 264
	    frame #16: 0x0000000100c48de8 Redacted InTune`main at AppDelegate.swift:15:7
	    frame #17: 0x000000018e25a8e0 libdyld.dylib`start + 4
	  thread #4, name = 'JavaScriptCore bmalloc scavenger'
	    frame #0: 0x000000018e3a5ee4 libsystem_kernel.dylib`__psynch_cvwait + 8
	    frame #1: 0x000000018e4254a4 libsystem_pthread.dylib`_pthread_cond_wait$VARIANT$armv81 + 628
	    frame #2: 0x000000018d97d090 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 24
	    frame #3: 0x00000001959a0aa8 JavaScriptCore`void std::__1::condition_variable_any::wait<std::__1::unique_lock<bmalloc::Mutex> >(std::__1::unique_lock<bmalloc::Mutex>&) + 108
	    frame #4: 0x00000001959a4a9c JavaScriptCore`bmalloc::Scavenger::threadRunLoop() + 176
	    frame #5: 0x00000001959a4214 JavaScriptCore`bmalloc::Scavenger::threadEntryPoint(bmalloc::Scavenger*) + 12
	    frame #6: 0x00000001959a5c54 JavaScriptCore`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (*)(bmalloc::Scavenger*), bmalloc::Scavenger*> >(void*) + 40
	    frame #7: 0x000000018e4282c0 libsystem_pthread.dylib`_pthread_body + 128
	    frame #8: 0x000000018e428220 libsystem_pthread.dylib`_pthread_start + 44
	    frame #9: 0x000000018e42bcdc libsystem_pthread.dylib`thread_start + 4
	  thread #5, name = 'WebThread'
	    frame #0: 0x000000018d9defc4 libobjc.A.dylib`-[NSObject release] + 64
	    frame #1: 0x000000018e786d68 CoreFoundation`__108-[_CFXPreferences(SearchListAdditions) withSearchListForIdentifier:container:cloudConfigurationURL:perform:]_block_invoke + 296
	    frame #2: 0x000000018e786794 CoreFoundation`normalizeQuintuplet + 340
	    frame #3: 0x000000018e6f4e74 CoreFoundation`-[_CFXPreferences(SearchListAdditions) withSearchListForIdentifier:container:cloudConfigurationURL:perform:] + 108
	    frame #4: 0x000000018e6f5700 CoreFoundation`-[_CFXPreferences copyAppValueForKey:identifier:container:configurationURL:] + 148
	    frame #5: 0x000000018e845030 CoreFoundation`_CFPreferencesCopyAppValueWithContainerAndConfiguration + 124
	    frame #6: 0x000000018f161f4c Foundation`-[NSUserDefaults(NSUserDefaults) objectForKey:] + 52
	    frame #7: 0x0000000198a1f6f0 WebKitLegacy`-[WebPreferences _valueForKey:] + 256
	    frame #8: 0x0000000198a2141c WebKitLegacy`-[WebPreferences _integerValueForKey:] + 24
	    frame #9: 0x0000000198a21830 WebKitLegacy`-[WebPreferences _boolValueForKey:] + 20
	    frame #10: 0x0000000198a1fbac WebKitLegacy`-[WebView(WebPrivate) _preferencesChanged:] + 1084
	    frame #11: 0x00000001983589ec WebCore`HandleRunSource(void*) + 716
	    frame #12: 0x000000018e79b018 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
	    frame #13: 0x000000018e79af98 CoreFoundation`__CFRunLoopDoSource0 + 88
	    frame #14: 0x000000018e79a880 CoreFoundation`__CFRunLoopDoSources0 + 176
	    frame #15: 0x000000018e7957bc CoreFoundation`__CFRunLoopRun + 1004
	    frame #16: 0x000000018e7950b0 CoreFoundation`CFRunLoopRunSpecific + 436
	    frame #17: 0x0000000197425bd8 WebCore`RunWebThread(void*) + 600
	    frame #18: 0x000000018e4282c0 libsystem_pthread.dylib`_pthread_body + 128
	    frame #19: 0x000000018e428220 libsystem_pthread.dylib`_pthread_start + 44
	    frame #20: 0x000000018e42bcdc libsystem_pthread.dylib`thread_start + 4
	  thread #7, name = 'com.apple.uikit.eventfetch-thread'
	    frame #0: 0x000000018e39b0f4 libsystem_kernel.dylib`mach_msg_trap + 8
	    frame #1: 0x000000018e39a5a0 libsystem_kernel.dylib`mach_msg + 72
	    frame #2: 0x000000018e79aa10 CoreFoundation`__CFRunLoopServiceMachPort + 236
	    frame #3: 0x000000018e795920 CoreFoundation`__CFRunLoopRun + 1360
	    frame #4: 0x000000018e7950b0 CoreFoundation`CFRunLoopRunSpecific + 436
	    frame #5: 0x000000018f162fac Foundation`-[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 300
	    frame #6: 0x000000018f162e3c Foundation`-[NSRunLoop(NSRunLoop) runUntilDate:] + 96
	    frame #7: 0x00000001bb0e7494 UIKitCore`-[UIEventFetcher threadMain] + 136
	    frame #8: 0x000000018f28f6a4 Foundation`__NSThread__start__ + 984
	    frame #9: 0x000000018e4282c0 libsystem_pthread.dylib`_pthread_body + 128
	    frame #10: 0x000000018e428220 libsystem_pthread.dylib`_pthread_start + 44
	    frame #11: 0x000000018e42bcdc libsystem_pthread.dylib`thread_start + 4
	  thread #11, name = 'AVAudioSession Notify Thread'
	    frame #0: 0x000000018e39b0f4 libsystem_kernel.dylib`mach_msg_trap + 8
	    frame #1: 0x000000018e39a5a0 libsystem_kernel.dylib`mach_msg + 72
	    frame #2: 0x000000018e79aa10 CoreFoundation`__CFRunLoopServiceMachPort + 236
	    frame #3: 0x000000018e795920 CoreFoundation`__CFRunLoopRun + 1360
	    frame #4: 0x000000018e7950b0 CoreFoundation`CFRunLoopRunSpecific + 436
	    frame #5: 0x000000019467d334 AVFAudio`GenericRunLoopThread::Entry(void*) + 156
	    frame #6: 0x00000001946a7c60 AVFAudio`CAPThread::Entry(CAPThread*) + 88
	    frame #7: 0x000000018e4282c0 libsystem_pthread.dylib`_pthread_body + 128
	    frame #8: 0x000000018e428220 libsystem_pthread.dylib`_pthread_start + 44
	    frame #9: 0x000000018e42bcdc libsystem_pthread.dylib`thread_start + 4
	  thread #16
	    frame #0: 0x000000018e42bcd0 libsystem_pthread.dylib`start_wqthread
	  thread #21
	    frame #0: 0x000000018e42bcd0 libsystem_pthread.dylib`start_wqthread
	  thread #24
	    frame #0: 0x000000018e3a6b74 libsystem_kernel.dylib`__workq_kernreturn + 8
	    frame #1: 0x000000018e429138 libsystem_pthread.dylib`_pthread_wqthread + 340
	    frame #2: 0x000000018e42bcd4 libsystem_pthread.dylib`start_wqthread + 4
	  thread #27
	    frame #0: 0x000000018e42bcd0 libsystem_pthread.dylib`start_wqthread
	  thread #60
	    frame #0: 0x000000018e3a6b74 libsystem_kernel.dylib`__workq_kernreturn + 8
	    frame #1: 0x000000018e4291f8 libsystem_pthread.dylib`_pthread_wqthread + 532
	    frame #2: 0x000000018e42bcd4 libsystem_pthread.dylib`start_wqthread + 4
	  thread #61, name = 'com.apple.NSURLConnectionLoader'
	    frame #0: 0x000000018e39b0f4 libsystem_kernel.dylib`mach_msg_trap + 8
	    frame #1: 0x000000018e39a5a0 libsystem_kernel.dylib`mach_msg + 72
	    frame #2: 0x000000018e79aa10 CoreFoundation`__CFRunLoopServiceMachPort + 236
	    frame #3: 0x000000018e795920 CoreFoundation`__CFRunLoopRun + 1360
	    frame #4: 0x000000018e7950b0 CoreFoundation`CFRunLoopRunSpecific + 436
	    frame #5: 0x000000018edae74c CFNetwork`-[__CoreSchedulingSetRunnable runForever] + 216
	    frame #6: 0x000000018f28f6a4 Foundation`__NSThread__start__ + 984
	    frame #7: 0x000000018e4282c0 libsystem_pthread.dylib`_pthread_body + 128
	    frame #8: 0x000000018e428220 libsystem_pthread.dylib`_pthread_start + 44
	    frame #9: 0x000000018e42bcdc libsystem_pthread.dylib`thread_start + 4
	  thread #62
	    frame #0: 0x000000018e42bcd0 libsystem_pthread.dylib`start_wqthread
	  thread #63
	    frame #0: 0x000000018e3a6b74 libsystem_kernel.dylib`__workq_kernreturn + 8
	    frame #1: 0x000000018e429138 libsystem_pthread.dylib`_pthread_wqthread + 340
	    frame #2: 0x000000018e42bcd4 libsystem_pthread.dylib`start_wqthread + 4
	  thread #64
	    frame #0: 0x000000018e39b148 libsystem_kernel.dylib`semaphore_timedwait_trap + 8
	    frame #1: 0x0000000101b4d528 libdispatch.dylib`_dispatch_sema4_timedwait + 64
	    frame #2: 0x0000000101b4de80 libdispatch.dylib`_dispatch_semaphore_wait_slow + 72
	    frame #3: 0x0000000101b5db90 libdispatch.dylib`_dispatch_worker_thread + 388
	    frame #4: 0x000000018e4282c0 libsystem_pthread.dylib`_pthread_body + 128
	    frame #5: 0x000000018e428220 libsystem_pthread.dylib`_pthread_start + 44
	    frame #6: 0x000000018e42bcdc libsystem_pthread.dylib`thread_start + 4
	  thread #65
	    frame #0: 0x000000018e39b148 libsystem_kernel.dylib`semaphore_timedwait_trap + 8
	    frame #1: 0x0000000101b4d528 libdispatch.dylib`_dispatch_sema4_timedwait + 64
	    frame #2: 0x0000000101b4de80 libdispatch.dylib`_dispatch_semaphore_wait_slow + 72
	    frame #3: 0x0000000101b5db90 libdispatch.dylib`_dispatch_worker_thread + 388
	    frame #4: 0x000000018e4282c0 libsystem_pthread.dylib`_pthread_body + 128
	    frame #5: 0x000000018e428220 libsystem_pthread.dylib`_pthread_start + 44
	    frame #6: 0x000000018e42bcdc libsystem_pthread.dylib`thread_start + 4
	(lldb) 

Smartphone (please complete the following information):

  • Device: iPhoneX
  • OS: iOS 12.3.1

Intune App SDK for iOS (please complete the following information):

  • What version of the Intune SDK are you using? Are you using the latest version? Yes. 11.0.13
  • What platform is your app based in (Java, Xamarin based, Cordova, etc)? 100% Swift
  • For errors during build, does the app build without Intune SDK integration? Yes
  • For errors post build, does the app launch without being Intune SDK integrated? Yes

Intune app wrapping tool (please complete the following information):

  • What version of the wrapper are you using? Are you using the latest version? Not using wrapper
  • What platform is your app based in (Java, Xamarin based, Cordova, etc)? 100% Swift
  • For pre-wrapping errors, does the app build without being wrapped? N/A
  • For post-wrapping errors, does the app launch without being wrapped? N/A
  • Who is the customer? Confidential
  • Do you see a trend with it only being reproduced on a specific device? N/A

Additional context:

Using Cocoapods to manage dependancies including ADAL.

App worked fine with MS Authenticator app + Company portal + ADAL 2.x + Swift 4.0 + Intune MAM 11.0.8

iOS 13 dyld: Symbol not found: OBJC_CLASS$__TtCs12_SwiftObject

name: Bug report
about: Create a report to help us improve
title: ''dyld: Symbol not found: OBJC_CLASS$__TtCs12_SwiftObject
labels: ''
assignees: ''


511b242
Describe the bug:
A clear and concise description of what the bug is.
dyld: Symbol not found: OBJC_CLASS$__TtCs12_SwiftObject
Referenced from: /Users//Library/Developer/CoreSimulator/Devices/18FE6DA6-C140-41AB-8B8F-E4CB9CB8A648/data/Containers/Bundle/Application/5C108836-4EF8-4EA7-8AC3-48C315D06069/chatr.app/Frameworks/IntuneMAMSwift.framework/IntuneMAMSwift
Expected in: /Users//Library/Developer/Toolchains/swift-5.0-RELEASE.xctoolchain/usr/lib/swift/iphonesimulator/libswiftCore.dylib

in /Users/_/Library/Developer/CoreSimulator/Devices/18FE6DA6-C140-41AB-8B8F-E4CB9CB8A648/data/Containers/Bundle/Application/5C108836-4EF8-4EA7-8AC3-48C315D06069/chatr.app/Frameworks/IntuneMAMSwift.framework/IntuneMAMSwift
I get a successful build of the project but as the simulator starts to run the app I get above error. iOS 13, Intune (11.2.0).

Expected behavior:
A clear and concise description of what you expected to happen.
Chatr App should run and connect to Intune services.

Screenshots and logs:

  • If applicable, add screenshots to help explain your problem.
    <<<<<<< HEAD
  • If your app is experiencing an issue during build, do you have app logs for the crash itself?
  • If your app is experiencing an issue post build, do you have app logs for the crash itself?
    =======
  • If your app is crashing post-wrapping, do you have app logs for the crash itself?
  • If your app is crashing pre-wrapping, do you have app logs for the wrapper errors?

511b242

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]

<<<<<<< HEAD
Intune App SDK for iOS (please complete the following information):

  • What version of the Intune SDK are you using? Are you using the latest version? 11.2.0
  • What platform is your app based in (Java, Xamarin based, Cordova, etc)? iOS native
  • For errors during build, does the app build without Intune SDK integration? does not fail at build
  • For errors post build, does the app launch without being Intune SDK integrated?
    =======
    Intune app wrapping tool (please complete the following information):
  • What version of the wrapper are you using? Are you using the latest version?
  • What platform is your app based in (Java, Xamarin based, Cordova, etc)?
  • For pre-wrapping errors, does the app build without being wrapped?
  • For post-wrapping errors, does the app launch without being wrapped?

511b242

  • Who is the customer?
  • Do you see a trend with it only being reproduced on a specific device?

Additional context:
Add any other context about the problem here.

crash in Intune framework when call loginAndEnrollAccount

Describe the bug:
A clear and concise description of what the bug is.
integrate with SDK, and crash when show login webview.
case1:
Set both AutoEnrollOnLaunch and MAMPolicyRequired be true, after app launch, when show webview, app crached. crash log show crash at IntuneMAM.Framework.

case2:
set MAMPolicyRequired False and AutoEnrollOnLaunch is true, in app, I call api loginAndEnrollAccount, same crash as case1.

To Reproduce
Steps to reproduce the behavior:
Both set AutoEnrollOnLaunch and MAMPolicyRequired true.

Expected behavior:
expect show login webview for sso after launch app

Screenshots and logs:

Smartphone (please complete the following information):

  • Device: ipad pro
  • OS: 12.1.4

Intune App SDK for iOS (please complete the following information):

  • What version of the Intune SDK are you using? Are you using the latest version?
    latest version. 11.0.3
  • What platform is your app based in (Java, Xamarin based, Cordova, etc)?
    iOS, XCode 10.1
  • For errors during build, does the app build without Intune SDK integration?
    NA
  • For errors post build, does the app launch without being Intune SDK integrated?
    YES
  • Who is the customer?
    Enterprise customer
  • Do you see a trend with it only being reproduced on a specific device?
    NO, iPhone X, iPad pro crash.
    Additional context:
    crash stack:

Date/Time: 2019-06-15 21:05:39.7556 +0800
Launch Time: 2019-06-15 21:05:38.7866 +0800
OS Version: iPhone OS 12.1.4 (16D57)
Baseband Version: 1.03.08
Report Version: 104

Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Triggered by Thread: 0

Application Specific Information:
abort() called

Last Exception Backtrace:
(0x1a52d1eb8 0x1a44cbf18 0x1a51e6f10 0x1d2cb722c 0x1a52d7924 0x1a52d96f0 0x119b0ab04 0x119b0a604 0x1a4cd3b9c 0x1a4cd5134 0x1a4ce0f50 0x1a52600fc 0x1a525ad78 0x1a525a2e8 0x1a750ebe8 0x1d2c88088 0x119fefc58 0x100a65bc4 0x1a4d0d050)

Thread 0 Crashed:
0 libsystem_kernel.dylib 0x00000001a4e5d0e4 0x1a4e39000 + 147684
1 libsystem_c.dylib 0x00000001a4db3fb0 0x1a4d5b000 + 364464
2 libc++abi.dylib 0x00000001a44b3818 0x1a44b2000 + 6168
3 libc++abi.dylib 0x00000001a44b39d8 0x1a44b2000 + 6616
4 libobjc.A.dylib 0x00000001a44cc35c 0x1a44c6000 + 25436
5 libc++abi.dylib 0x00000001a44c02d0 0x1a44b2000 + 58064
6 libc++abi.dylib 0x00000001a44c0344 0x1a44b2000 + 58180
7 libdispatch.dylib 0x00000001a4cd5148 0x1a4cd1000 + 16712
8 libdispatch.dylib 0x00000001a4ce0f50 0x1a4cd1000 + 65360
9 CoreFoundation 0x00000001a52600fc 0x1a51b0000 + 721148
10 CoreFoundation 0x00000001a525ad78 0x1a51b0000 + 699768
11 CoreFoundation 0x00000001a525a2e8 0x1a51b0000 + 697064
12 GraphicsServices 0x00000001a750ebe8 0x1a7504000 + 44008
13 UIKitCore 0x00000001d2c88088 0x1d2361000 + 9597064
14 IntuneMAM 0x0000000119fefc58 0x119e54000 + 1686616
15 Jabber 0x0000000100a65bc4 0x100a5c000 + 39876
16 libdyld.dylib 0x00000001a4d0d050 0x1a4d0c000 + 4176

IntuneMAMWalledGardenSwift module Issue with module import or Objective-C bridging header

Getting the error in iOS development

Cannot load module 'IntuneMAMWalledGardenSwift' as 'IntuneMAMSwift'

in two cases:

  • When compiling with an Objective-C bridging header with the single import statement #import <IntuneMAMSwift/IntuneMAM.h>

  • When using a module import statement in a file: import IntuneMAMSwift

Using:

  • Latest version of Intune SDK
  • XCode 10.3
  • Swift 5

I received this error a few weeks ago, earlier in app development, and it was solved by simply removing the IntuneMAMSwift and IntuneMAMSwiftStub frameworks from the Linked Frameworks and Libraries list, but keeping it in the Embedded Binaries. That's an odd fix, and it not working now.

I need to read the Intune-assigned Device Id provided in an App Configuration Policy, and suspect I will need the SDK to do so. Any solid guidance here is much appreciated. Thank you.

Trying to change the Intune PIN fails

@Kyle-Reis :

  • My app has the intune SDK integrated. We are sharing ADAL between exchange and Intune login. It works perfectly without the app double prompting for Intune.

  • I followed the documentation and setup the IntuneMAM Settings with the correct ADALAuthority, ADALClientId and ADALRedirectUri.

  • Issue I am facing

Screen Shot 2019-08-22 at 6 39 45 PM

  • In the screenshot above, when I try to reset the pin by tapping on Forgot your pin, or need to change it? , it prompts me for my work account credentials. As soon as I input my work credentials, it fails with the following:

  • AADSTS650057: Invalid resource.
    The client has requested access to a resource which is not listed in the requested permissions in the client's application registration.
    Client app ID: <client app id>
    Resource value from request: https://intunemam.microsoftonline.com
    Resource app id: b642c013-22f8-419d-af11-8f0e05b795e6
    List of valid resources from app registration: <list of resource app ids, that does not have the above resource id>
    Trace id: 73b08a1f-80da-4d1f-891a-86716a904a00
    Correlation ID: 00abea30-10ca-486b-85ef-8948038e59e1
    Timestamp: 2019-08-22 13:22:30Z

  • I understand that my app is trying to access a resource that it does not have permissions for. But, I wanted to understand which permissions am I missing here? Also, if I use default ADAL values for Intune SDK, it allows me to reset the PIN.

  • Could you please point me towards the right permissions set so that I can reset the pin properly? We are nearing a release and are blocked on this issue since the past 2 days.

  • Here are the permissions that my app currently has:

Screen Shot 2019-08-22 at 7 04 11 PM

  • Thanks once again, as I hope for a solution to this issue.

App Security findings in IntuneMAM SDK

Describe the bug:
When our app(linked with IntuneMAM SDK) is scanned by a security tool for app security findings, there are some issues that were from Intune MAM SDK.

To Reproduce
List of issues:
*1. MD5 usage
Issue details:

The following code locations used the deprecated the CC_MD functions to generate a message digest:

[CUTCategories md5] calls _CC_MD5()
[CMARCryptoUtils md5Hash:] calls _CC_MD5()

2. Switch from NSCoding to NSSecureCoding

NSCoding protocol used in binary <>.app/Frameworks/IntuneMAM.framework/IntuneMAM

Description:
NSSecureCoding should be used.

(FIXED FROM ADAL 4.0) 3. Switch from Deprecated UIWebView API to WKWebView --

-[ADAuthenticationViewController loadView:] calls -[_OBJC_CLASS_$_UIWebView initWithFrame:]

(ADAL Lib) **4. Null Initialization Vector Used ** --

The following code locations used the CommonCrypto APIs to perform AES encryption with a NULL Initialization Vector:

-[ADBrokerKeyHelper decryptBrokerResponse:key:size:error:] calls _CCCrypt(_, _, _, _, _, NULL, _)

5. Broken Cryptography API (SHA1) used

The following code locations used CC_SHA1 functions to generate a message digest:

-[ADPkeyAuthHelper computeThumbprint:isSha2:] calls _CC_SHA1() .      _(**ADAL Lib**)_
-[MSIDPkeyAuthHelper computeThumbprint:isSha2:] calls _CC_SHA1()
-[MSIDExtensions msidSHA1] calls _CC_SHA1()

Expected behavior:
IntuneMAM framework should not have app security issues

Intune App SDK for iOS (please complete the following information):

  • What version of the Intune SDK are you using? Are you using the latest version?[
    [DEV]: 11.0.2
  • What platform is your app based in (Java, Xamarin based, Cordova, etc)?
    [DEV]: Swift
  • Who is the customer?

Additional context:
Add any other context about the problem here.

Set PIN screen is broken in iOS 13.2

Describe the bug:
Set PIN screen is broken in iOS 13.2

To Reproduce
Steps to reproduce the behavior:

  1. Completed enrolment with app
  2. Now removed policy and update PIN policy(8 digit PIN) from Azure portal
  3. Launched app, app prompted to enter last PIN.
  4. Once we enter pin then it show alert saying PIN policy changed you must set new PIN with New Screen to Set PIN.
  5. This Set PIN screen is not responding(Unable to see anything on typing from keyboard. keyboard is not hiding) and once its gets there. User cannot go any further.

Expected behavior:
User should be able to set New PIN on PIN policy change and continue to app.

Screenshots and logs:
IMG-0869

Smartphone (please complete the following information):

  • Device: iPad / iPhone
  • OS: iOS (>= iOS 13.0)

<<<<<<< HEAD
Intune App SDK for iOS (please complete the following information):

  • What version of the Intune SDK are you using? Are you using the latest version? Latest 12.0.12

  • What platform is your app based in (Java, Xamarin based, Cordova, etc)? Xcode

  • For errors during build, does the app build without Intune SDK integration?

  • For errors post build, does the app launch without being Intune SDK integrated?

  • Who is the customer? Infor

  • Do you see a trend with it only being reproduced on a specific device? Not sure.

Additional context:
Add any other context about the problem here.

Unable to login to Intune MAM protected app

I'm not able to login to my app with the correct intune credentials.

This is the error shown on the device -
Resource '0a5f63c0-b750-4f38-a71c-4fc0d58b89e2' had no entitlements matching required permissions configured on the required resource access for client . Requested permission IDs: 'a42657d6-7f20-40e3-b6f0-cee03008a62a,5778995a-e1bf-45b8-affa-663a9f3f4d04,78c8a3c8-a07e-4b9e-af1b-b5ccab50a175,970d6fa6-214a-4a9b-8513-08fad511e2fd,6234d376-f627-4f0f-90e0-dff25c5211a3,c582532d-9d9e-43bd-a97c-2667a28ce295,cba73afc-7f69-4d86-8450-4978e04ecd1a,311a71cc-e848-46a1-bdf8-97ff7156d8e6,2d05a661-f651-4d57-a595-489c91eda336'. This is a problem with one or more invalid permission ids on the client RRA configuration or the resource entitlement configuration.

I'm using Intune 9.0.5 with ADAL 2.6.2. Past week I was able to access it.
Please help

Conditional Access with Intune

@Kyle-Reis @msintuneappsdk :

We deployed our iOS app with the Intune SDK recently. At this point, the user is blocked by Conditional Access when he/she tries to login.

We figured out the conditional access policy that is blocking us and it is the Require Approved Client App.

Screen Shot 2019-10-01 at 12 14 52 AM

We see the list of all the approved client apps and they are all Microsoft apps. How do we then, add our iOS app to the list of approved client apps? Please let us know.

We need a solution urgently as this is stopping our customers from using the app in a productive manner

Invalid Swift Support - The SwiftSupport folder is missing.

I got an invalid build after wrapping our app with the intune wrapping tool - Apple sent en email informing us the build is invalid: "We identified one or more issues with a recent delivery for your app, "Banky App". Please correct the following issues, then upload again.

Invalid Swift Support - The SwiftSupport folder is missing. Rebuild your app using the current public (GM) version of Xcode and resubmit it."

Explanation:
The ipa produced by the wrapping tool no longer contains the SwiftSupport folder - causing a rejection from Apple.
The ipa used as input does contain the SwiftSupport folder next to the payload folder.

What can we do to fix it?

Intune PIN Controller Presentation style in iOS 13

name: Bug report
about: Create a report to help us improve
title: Intune PIN View Controller Presentation style in iOS 13
labels: ''
assignees: ''

Describe the bug:
When App is built using Xcode 11 and running in iOS 13, all the model presentations should be in full screen.

Currently, When PIN view is presented, user is able to dismiss PIN screen by swiping down which we shouldn't allow.

To Reproduce
Steps to reproduce the behavior:

  1. Run app in iOS 13 which is built from Xcode 11.
  2. PIN view is dismissing on new iOS 11 swipe gesture.

Expected behavior:
User should not able to dismiss the PIN screen without providing PIN input.

Screenshots and logs:
Attached Screenshot.
PIN VC

Smartphone (please complete the following information):

  • Device: iPhone 11
  • OS: iOS 13.0

Intune App SDK for iOS (please complete the following information):

  • What version of the Intune SDK are you using? Are you using the latest version? - 11.2.0

  • What platform is your app based in (Java, Xamarin based, Cordova, etc)? Xcode native

  • For errors during build, does the app build without Intune SDK integration?

  • For errors post build, does the app launch without being Intune SDK integrated?

  • Who is the customer? Infor

  • Do you see a trend with it only being reproduced on a specific device?

Additional context:
Add any other context about the problem here.

Could not find or use auto-linked framework

<<<<<<< HEAD


name:Could not find or use auto-linked framework
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''


511b242
Describe the bug:
if building with the framework, everything is fine, if I'm using IntuneMAMEnrollmentManager.instance().enrolledAccount() I get the following error

ld: warning: Could not find or use auto-linked framework 'IntuneMAMSwift' ld: warning: Could not find or use auto-linked framework 'IntuneMAMSwiftStub' Undefined symbols for architecture arm64: "_OBJC_CLASS_$_IntuneMAMEnrollmentManager", referenced from: objc-class-ref in AppDelegate.o ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

To Reproduce
Steps to reproduce the behavior:
1 follow tutorial step until framework import
2 import IntuneMAMSwift in a file
3 try calling IntuneMAMEnrollmentManager.instance().enrolledAccount()

Expected behavior:
project should build

<<<<<<< HEAD

  • If your app is experiencing an issue during build, do you have app logs for the crash itself?
    `ld: warning: Could not find or use auto-linked framework 'IntuneMAMSwift'
    ld: warning: Could not find or use auto-linked framework 'IntuneMAMSwiftStub'
    Undefined symbols for architecture arm64:
    "OBJC_CLASS$_IntuneMAMEnrollmentManager", referenced from:
    objc-class-ref in AppDelegate.o
    ld: symbol(s) not found for architecture arm64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)

Could not find or use auto-linked framework 'IntuneMAMSwift'

Could not find or use auto-linked framework 'IntuneMAMSwiftStub'
`

  • If your app is experiencing an issue post build, do you have app logs for the crash itself?
    =======
  • If your app is crashing post-wrapping, do you have app logs for the crash itself?
  • If your app is crashing pre-wrapping, do you have app logs for the wrapper errors?

511b242

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]

<<<<<<< HEAD
Intune App SDK for iOS (please complete the following information):

  • What version of the Intune SDK are you using? Are you using the latest version?
  • What platform is your app based in (Java, Xamarin based, Cordova, etc)?
  • For errors during build, does the app build without Intune SDK integration?
  • For errors post build, does the app launch without being Intune SDK integrated?
    =======
    Intune app wrapping tool (please complete the following information):
  • What version of the wrapper are you using? Are you using the latest version?
  • What platform is your app based in (Java, Xamarin based, Cordova, etc)?
  • For pre-wrapping errors, does the app build without being wrapped?
  • For post-wrapping errors, does the app launch without being wrapped?

511b242

  • Who is the customer?
  • Do you see a trend with it only being reproduced on a specific device?

Additional context:
Add any other context about the problem here.

AADSTS50011: The reply url specified in the request does not match the reply urls configured for the application

I implemented ADAL (v 2.7.9) framework perfectly to get connection with Microsoft Authenticator (6.2.8) within my company ADFS. Now that I implemented Intune SDK, I am having this error message while trying to connect.
IMG_EC7A4E3FE37D-1
I have enabled the "DeviceManagementManagedApps.ReadWrite" permission on azure portal (native application).
I have checked everywhere and the reply urlscheme is the right one (same used with ADAL and working). It's specified in the Info.plist under IntuneMAMSettings -> ADALRedirectScheme. I also tried to override it with IntuneMAMPolicyManager().aadRedirectUriOverride = kRedirectString

How to use Authenticator instead of webview

I wonder if it is possible to use Authenticator to enroll device and retrieve policies like when we connect with ADAL and then use register&enroll.
There is no documentation about that possibility, it would be useful for SSO.

Swift project fail to login and enroll with code 201

Details:

  • Swift 3 project with bridge header for obj-c
  • xcode 10
  • Intune iOS SDK tested 10.0.1, 9.0.13, 8.1.1

Call to loginAndEnroll(any) would result in enrollment status of 201 (internal error). However, status error is nil thus contains no helpful information.
This is reproducible on a new empty Swift project, then add IntuneMAM sdk and call loginAndEnroll.

Intune SSO Login for iOS

Intune integrated app is downloaded from the Intune company portal. Intune Company Portal requires Microsoft account to login. After Intune integrated app is downloaded, on launch app asks the user to login using Microsoft account.

Expected behaviour: Application should use Intune Company Portal username and password, should not prompt for login again.

Actual behaviour: Application is asking for microsoft username and password again.
How to configure the native application to make it work with single -sign on using Intunes SDK And ADAL Library?
Below link is used for Integration of SSO https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-v1-enable-sso-ios

Intune ios SDK 9.0.5 - Intune MAM service Enrollment status Debug Message: An unknown status code 302 was received.

My app uses Intune and ADAL SDK's. I am ADAL sdk version 2.7.5 and recently updated the intune sdk to 9.0.5 from 8.1.1.
When i had 8.1.1 sdk in my code Enrollmemnt status of Intune MAM Service in logs was -
Debug Message: New MAM policies were received and applied to the application with status code 100.

After Upgrading Intune SDK to 9.0.5 Enrollmemnt status of Intune MAM Service in logs is -
Debug Message: An unknown status code was received with status code 302.

App works fine without any issues but i am curious to know why Enrollment status changed.

iOS 13 - Apps using intune is crashing while trying to open a file into other apps

Describe the bug:
Tested with word app 2.28
Device - iPhone X - iOS13 beta 7

  • Open word. Login with an intune enabled user.
  • Open a file and share a copy to another app via "Send with Another App" option
  • The app crashes

NOTE:

  • If the app is logged in with a non-intune user, the app doesn't crash and open in is successfully carried out
  • Similar issue is found with apps integrating with intune SDK in iOS 13

Expected behavior:
The app should not crash while trying to openIn a file to a different app.

Crash logs
Word 26-08-19, 2-25 PM.crash.zip

Non-UI Action extension - doesn't work

I have followed the instructions to add a non-UI Action extension for our app, "Open in iManage".

However, it doesn't work. The instructions are literally like 1 paragraph, which is not enough for something of this complexity. And there is no sample app??!

iOS requires our app extension to declare NSExtensionPrincipalClass in the Info.plist, and this requires a Swift class (or Obj-C). I can confirm that our code in this class does in fact get called when we tap the "Open In iManage" action extension from Word.

But the Intune SDK documentation offers no guidance on how to implement this. In fact it says that the Intune SDK will handle it. But clearly it isn't.

What am I doing wrong? Am I missing something?

Intune SDK hangs app on next start after first enrolment happens on iOS 10 devices

Describe the bug:
Intune SDK hangs app on next start after first enrolment happens on iOS 10 devices.

To Reproduce
Steps to reproduce the behavior:

  1. App is opened for the first time
  2. User logs into the app using an Azure SSO account (app is using ADAL library for authentication, so when enrolling the user into IntuneSDK there is no double authentication request)
  3. After successful login, user is automatically enrolled into IntuneSDK (enrolment returns 100 OK status code), and IntuneSDK present an alert to the user ... You need to restart the app
  4. User press OK button and restart the app
  5. App opens, but it hangs immediately after opening, showing a 98% CPU consumption on the main thread that never ends.

Expected behavior:
In step 5, app should open normally and don't hang.

Screenshots and logs:
intune-ios10-hang-issue-instruments

Smartphone (please complete the following information):

  • Device: Tested and reproduced on iPhone5S and Simulator
  • OS: iOS10.3.1 and iOS 10.3.2

Intune App SDK for iOS (please complete the following information):

  • What version of the Intune SDK are you using? 11.0.13 Are you using the latest version? Yes
  • What platform is your app based in (Java, Xamarin based, Cordova, etc)? Objective-C
  • For errors during build, does the app build without Intune SDK integration?
  • For errors post build, does the app launch without being Intune SDK integrated? Yes, if the user is not enrolled into IntuneSDK, app works fine
  • Who is the customer? CipherHealth
  • Do you see a trend with it only being reproduced on a specific device? On any iOS 10 device we could test

Additional context:
As shown in the instruments .gif file, it looks IntuneSDK is hanging the app when executing [NSOutputStream(CMARHookedOutputStream) load].

SDK fails on an app that already has ADAL

Hi Microsoft,

SDK fails when I try to run loginAndEnrollAccount and registerAndEnrollAccount with an App that already has the ADAL library.

Please see image attached, I'm using objective c and following the next documentation:

https://docs.microsoft.com/en-us/intune/app-sdk-ios

The problem seems to be when the SDK tries to set the delegate for the UIWebView.

I got the next errors:

enrollment result for identity [email protected] with status code 203
Debug Message: The operation failed because the SDK could not access the user's AAD token.

The application should prompt the user for credentials to refresh the user's AAD token.
Unbalanced calls to begin/end appearance transitions for <CMARPolicyViewController: 0x7fdf64050a00>

And then the crash:

[UIWebView setNavigationDelegate:]: unrecognized selector sent to instance 0x7fdf6350cac0

Thank you.

Screen Shot 2019-04-24 at 12 24 20 PM

Adding Microsoft.Intune.MAM.Xamarin.iOS nuget package to Xamarin Forms iOS app fails

Adding Microsoft.Intune.MAM.Xamarin.iOS nuget package to Xamarin Forms iOS project fails with the following error:
Package Microsoft.Intune.MAM.Xamarin.iOS 3.0.3989.3 is not compatible with xamarinios10 (Xamarin.iOS,Version=v1.0). Package Microsoft.Intune.MAM.Xamarin.iOS 3.0.3989.3 supports: net452xamarinios10 (net452+Xamarin.iOS10,Version=v0.0)

Looks very much similar to this issue - msintuneappsdk/intune-app-sdk-xamarin#8

Steps to reproduce:
Visual Studio 15.7.1

  1. New Project -> Cross Platform - Mobile App (Xamarin Forms).
  2. Add Microsoft.Intune.MAM.Xamarin.iOS nuget package to Xamarin Forms iOS - error occurs

I can not set IntuneMAM.framework using MSAL.framework as default authentication.

I want using MSAL.framework as default authentication. But it can not go to there. The offical demo app "Wagr" is using libADAL.a. I have test using libADAL.a, it can work. But when I want switch to using MSAL.framework, it never run to MSAL.framework. I have follow the offical document do : set ADALClientId, ADALRedirectUri; set NSUserDefaults. IntuneMAMUseMSALOnNextLaunch= yes. But it does not seems to run into MSAL.framework.
And more from the Wagr demo, IntuneMAM.framework can show logs. But using new IntuneMAM.framework replace, there is no log show, I can not debug or analysis. It's too difficult for me to using it. Anyone can help who knows about this logic, many thanks!!

App data (local storage) is cleared after killing the wrapped app

Hey,
We have Cordova app wrapped using Intune wrapper tool. Everything works fine except it wipes local storage of the app after you kill it for the first time. When you run it for the second time and then save some data, the data stays untouched event if you kill the app again. I noticed that wrapping tool set MAMPolicyRequired property to YES in Info.plist. It is written in the Intune SDK guides that in this case the app is not restarted after MAM policy is fetched. If we manually set that property to NO then it restarts the app after successful authentication and all app data stays in local storage even after the app is manually killed.

Is it designed like that to wipe the app data after killing the app? Why it's not triggering restart automatically?

Thanks!

ms-intune-app-sdk-ios-9.0.3 archives corrupt

Hi,

It seems that both ms-intune-app-sdk-ios-9.0.3 archives are are corrupt or something. They extract fine, but some header files are empty, others headers are bplists, libIntuneMAM.a is actually a header file etc. The download file is also around 700KB instead of around 20MB for version 8.1.1

Raymond

Intune SDK does not fetch the tokens saved after authenticating through ADAL

  • I am using the Intune SDK for app protection.

  • Our app uses ADAL 2.x for authentication. The authentication works properly and we have been working with it since some time now, no issues whatsoever.

  • Recently, I added the Intune SDK by following the guidelines mentioned here - https://docs.microsoft.com/en-us/intune/app-sdk-ios#configure-settings-for-the-intune-app-sdk

  • We are facing issues on iOS, where the intune SDK does not seem to be able to fetch the tokens saved by ADAL.

  • I have set up the IntuneMAMSettings dictionary in the Info.plist with the ADALClientId, ADALRedirectUri, ADALAuthority as mentioned in the document.

  • We have checked the keychain sharing capabilities and it all seems to be done properly.

  • The api registerAndEnrollAccount(..) fails with a The operation failed because the SDK could not access the user\'s AAD token. The application should prompt the user for credentials to refresh the user\'s AAD token.

  • When we use loginAndEnrollAccount, everything seems to work fine. (We would want to avoid this because of the double prompting)

  • We tried the same thing by cloning and modifying the sample intune app by adding capabilities to authenticate via ADAL before registering with intune - https://github.com/msintuneappsdk/Chatr-Sample-Intune-iOS-App
    and we see the same issue.

Any ideas on why we are seeing this behavior? Is there a workaround for this issue?

Any help would be much appreciated. Thanks!

XCode 10 swift project

When integrating InTune 8.1.1 SDK in a Swift based project (no objective-c except the bridging header) the following error is shown:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_LAContext", referenced from:
      objc-class-ref in libIntuneMAM.a(DeviceUtils.o)
      objc-class-ref in libIntuneMAM.a(PinViewController.o)
  "_OBJC_CLASS_$_MFMailComposeViewController", referenced from:
      l_OBJC_$_CATEGORY_MFMailComposeViewController_$_CMARMFMailComposeViewControllerHooks in libIntuneMAM.a(MessageUIHooks.o)
      objc-class-ref in libIntuneMAM.a(MessageUIHooks.o)
  "_LAErrorDomain", referenced from:
      +[CMARDeviceUtils getPasscodeStatus] in libIntuneMAM.a(DeviceUtils.o)
  "_OBJC_CLASS_$_WKWebView", referenced from:
      objc-class-ref in libIntuneMAM.a(SafariViewControllerWrapper.o)
  "_OBJC_CLASS_$_MFMessageComposeViewController", referenced from:
      l_OBJC_$_CATEGORY_MFMessageComposeViewController_$_CMARHookedMessageComposeViewController in libIntuneMAM.a(MessageComposeViewControllerHooks.o)
      objc-class-ref in libIntuneMAM.a(MessageComposeViewControllerHooks.o)
ld: symbol(s) not found for architecture x86_64

Unable to export .ipa file from Archive (Xcode 11)


name: Bug report
about: Unable to prepare .ipa file from Archive (Xcode 11 GM)
title: ''
labels: ''Intune MAM lib
assignees: ''

Describe the bug:
We are using Xcode 11 beta (7) to build our app and its archiving but failing while exporting it as .IPA. When we checked the log files found below:

Scanning IPA...
2019-09-10 04:55:20 +0000  Assertion failed: Expected 4 archs in otool output:
/var/folders/79/_qq790xn31v4dbky4x329k74x5_ywx/T/IDEDistributionOptionThinning.~~~1oUepV/Payload/<app>.app/Frameworks/IntuneMAM.framework/IntuneMAM:
Mach header
      magic cputype cpusubtype  caps    filetype ncmds sizeofcmds      flags
MH_MAGIC_64  X86_64        ALL  0x00       DYLIB    39       5272   NOUNDEFS DYLDLINK TWOLEVEL WEAK_DEFINES BINDS_TO_WEAK NO_REEXPORTED_DYLIBS 

To Reproduce
Build app including Intune MAM SDK and try to export from Xcode 11

Expected behavior:
There should be no export errors

Intune App SDK for iOS (please complete the following information):

  • What version of the Intune SDK are you using? Are you using the latest version? YES, Latest version 11.2.0

  • What platform is your app based in (Java, Xamarin based, Cordova, etc)?
    iOS native

  • For errors during build, does the app build without Intune SDK integration?

  • For errors post build, does the app launch without being Intune SDK integrated?

  • Who is the customer? Infor

  • Do you see a trend with it only being reproduced on a specific device?

Additional context:
Add any other context about the problem here.

Do we have any setting in Intune SDK to disable it?

Hi Team,
I am currently running 2 different codebase of my app, one with Intune SDK integrated and another without SDK. Want to check if their is any setting in the Intune SDK to disable it so that with single Codebase i just have to switch the setting?

12.0.12 + iOS 13 issue with blocking outgoing requests (Apple Maps)


name: Outgoing request is not blocked
title: 'Request is not blocked despite policy being set'
labels: ''
assignees: ''


Describe the bug:
When blocking transfer of the data to other apps, Intune still redirects to Apple Maps.
Alert "Action Not Allowed" is being presented but has no effect. Issue started happening with 12.0.12 SDK and iOS 13.
It used to work as expected in 11.2.0 release.

To Reproduce
Steps to reproduce the behavior:

  1. Set data transfer policy to block all send org data to other apps.
  2. Execute action on Intune enabled app to open Apple Maps (with MKMapItem.openMaps API)
  3. Apple Maps are being open, but when you navigate back to the original app, you see the alert "Action Not Allowed"

Expected behavior:
Expectation is not to open Apple Maps and block outgoing data with alert presented.

Screenshots and logs:
no screenshots needed

Smartphone (please complete the following information):

  • Device: [e.g. iPhone XS]
  • OS: [iOS 13.2.2]

Intune App SDK for iOS (please complete the following information):

  • Intune SDK used: 12.0.12
  • iOS 13

Additional context:

  • We do not use UISceneDelegate in our application.

Intune-protected app can't share with Word

Once the app is authenticated, we protect a file with IntuneMAMFileProtectionManager and then invoke the iOS UIActivityViewController.

With the Intune Data Protection Policy "Allow app to transfer data to other apps"

  1. Policy Managed Apps. We see Copy to Word. We do not see the action extension Open In Word.
  2. Policy Managed Apps with OS Sharing. We see no options at all. Not Copy to Word, not Open In Word.
  3. Policy Managed Apps with Open-In/Share Filtering. We see no options at all. Not Copy to Word, not Open In Word.

Am I doing something wrong in code? Or what am I missing?

Our customers will expect our Intune-enabled app to be able to share with Word with all 3 of these settings.

Debug version of `libIntuneMAM.a` not present in SDK, is debug version still supported?

In the documentation it states:

If you plan to release your app to the App Store, please use the version of libIntuneMAM.a that is built for release and not the debug version. The release version will be in the release folder. The debug version has verbose output that helps troubleshoot problems with the Intune App SDK.

7.0.1 does not contain a debug version of libIntuneMAM.a, do you plan on offering a debug version in future versions?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.