Bluemix IOS version crashes on XCODE - ibm-cloud

I installed the demo app (Hellotodo) according to instructions on Github. The client app, run on IOS 9 XCODE 7.2, crashes due to InvalidRoute.
I copied the route from the Mobile Options link on the Bluemix Dashboard of my backend app.
IMFClient *imfClient = [IMFClient sharedInstance];
[imfClient initializeWithBackendRoute:#"<https://MobileHost.mybluemix.net>" backendGUID:#"<1b9ec584-1d9f-48bd-a8bb-d31eccb971f9>"];
2016-09-25 11:26:09.278 helloTodo[1912:2789776] * Terminating app
due to uncaught exception 'InvalidURLException', reason: 'Invalid
applicationRoute: https://MobileHost.mybluemix.net'
* First throw call stack:

You left the greater/less than signs ( < and > ) in the Backend route and GUID, so they are invalid.
You should replace them like this:
IMFClient *imfClient = [IMFClient sharedInstance];
[imfClient initializeWithBackendRoute:#"https://MobileHost.mybluemix.net" backendGUID:#"1b9ec584-1d9f-48bd-a8bb-d31eccb971f9"];

Related

Terminating app due to uncaught exception, -[FIRInstanceIDTokenInfo isFresh]

When I run my app for the first time, it works perfectly fine. The second time I try to open the app It gives me this Error: "Terminating app due to uncaught exception 'NSInvalidArgumentException'
I have macOS Mojave (10.14.3).I am running my iOS application on Xcode 10.3. My swift version is 4.
This is the Complete error Error Message:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[FIRInstanceIDTokenInfo isFresh]: unrecognized selector sent to instance 0x172c6cb40
I am guessing the second time I run the app, it cannot connects to the Database. But it's just my guess, I cannot really test it.

How to invoke lambda function using AWS Mobile Hub Helper?

I can't currently invoke a lambda in Swift using AWS Mobile Helper.
I've succeed to configure my project to identify user using Cognito User Pools and Cognito Federated Identities.
But now invoking lambda function lead to a crash:
terminating with uncaught exception of type NSException
Before crash there are the following log:
AWSiOSSDK v2.4.11 [Debug] AWSInfo.m line:122 | -[AWSServiceInfo initWithInfoDictionary:checkRegion:] | Couldn't read the region configuration from Info.plist for the client. Please check your `Info.plist` if you are providing the SDK configuration values through `Info.plist`.
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'The service configuration is `nil`. You need to configure `Info.plist` or set `defaultServiceConfiguration` before using this method.'
And here is the code:
let lambda = AWSLambda.defaultLambda()
lambda.invoke(myRequest, completionHandler: {
(myAnswer: AWSLambdaInvocationResponse?, error: NSError?) in
print("ERROR HERE: \(error)")
let payload = myAnswer?.payload
print("PAYLOAD HERE: \(payload)")
})
If you are using the Mobile Hub or Mobile Hub Helper you should use the classes that it provides. When you instantiate the CloudLogic singleton it sets the service configuration up.
So rather than AWSLambda.defaultLambda you should use AWSCloudLogic.defaultCloudLogic it's methods will manage the permissions issues as soon as it is instantiated.
You can get an example by using the mobile hub to download a sample app that uses cloud logic.
I put together a brief diagram of the mobile hub
mobile hub diagram

Android mobile first app stopped working after Bluemix moved to cflinuxfs2 stack

I have an android app based on the bluelist app for bluemix BMS service. it stopped working yesterday when the stack is moved to cflinuxfs2.
Today I checked my ios app on the same bluemix service, it is working. so I looked into the exception on Android, it is from MFPush, looks like a context is null. see the attached image for the line of code where the NPE is thrown.
The stacktrace is: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.Intent android.content.Context.registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter)' on a null object reference
12-10 16:00:31.240 14482-14482/com.ibm.bluelist E/AndroidRuntime: at com.ibm.mobilefirstplatform.clientsdk.android.push.api.MFPPush.listen(MFPPush.java:232)
12-10 16:00:31.240 14482-14482/com.ibm.bluelist E/AndroidRuntime: at com.ibm.bluelist.GroupsActivity.onResume(GroupsActivity.java:250)
12-10 16:00:31.240 14482-14482/com.ibm.bluelist E/AndroidRuntime: at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1257)
12-10 16:00:31.240 14482-14482/com.ibm.bluelist E/AndroidRuntime: at android.app.Activity.performResume(Activity.java:6119)
Chances are the MFPPush SDK has not been initialized when you are attempting to call:
push.listen(notificationListener)
I suggest saving the push value:
push = MFPPush.getInstance()
Immediately after initialization or registration (whatever you feel is more appropriate) in the class.
That way you will have the appropriate initialized push instance when attempting to listen to a notification listener.

Gettng Error WLClient onInvokeProcedureFailure:userInfo in WLClient.m

We are getting below error while calling a simple HTTP Adaptor through iOS Apple Watch OS1. We have mobilefirst 6.3 with WorklightAPI iOS deployed on server.
[WL_CLIENT] -[WLClient onInvokeProcedureFailure:userInfo:] in WLClient.m
Status: 0
InvocationResult: (null)
InvocationContext: (null)
Error code: 3
Error message: Procedure invocation error.
It runs fine when we run it on development server. Only difference we see is on Test server TLSv1.2 is enabled while on development it is not.
We defined ATS --> Allow Arbitrary Loads = YES in info.plist
but we are still getting an error.
Any Advice ?
As mentioned multiple times, Apple Watch is not supported. And in any case, since this is Watch OS 1 it means you invoke the code from the "parent" iOS app, no? In which case this was answered in your other question: https://stackoverflow.com/questions/34206002/there-is-no-registered-challenge-handler

trying to use [pffacebookUtils logininbackgrounwithreadpermission], but get error about fbinternalutility validatescheme

I'm using
[PFFacebookUtils loginInbackgroundWithReadPermission ...
to log in my user.
However, I received this error:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[FBSDKInternalUtility validateURLSchemes]: unrecognized selector sent to class 0x10b695e40'
I have looked through all the header files; but I just cannot find a class named as FBSDKInternalUtility. Before the upgrade of Parse 1.7.2 and Facebook SDK v4, my log in system works perfectly.
Please help.
It seems like you haven't added FBSDKCoreKit.framework to your project. Add the framework and make sure that you add #import <FBSDKCoreKit/FBSDKCoreKit.h> to your file.