How to call AWS Lambda functions in background within iOS
up vote
0
down vote
favorite
Within a native iOS app, what is the recommended way to call AWS lambda functions in the background when the app is not active? I have code that successfully calls lambda functions via the AWSLambdaInvoker object and I know how to use NSUrlSession to handle background requests to API endpoints that are not Lambda, but I'm not sure how to get the same behavior with AWSLambdaInvoker.
For example, the working code I have for calling Lambda functions follows this pattern:
let lambdaInvoker = AWSLambdaInvoker.default()
let params: [String: Any] = ["key1": "value1", "key2": 2, "key3": [1, 2]]
lambdaInvoker.invokeFunction("FUNCTION_NAME", jsonObject: params)
.continueWith(block: {(task:AWSTask<AnyObject>) -> Any? in
if( task.error != nil) {
print("Error: (task.error!)")
return nil
}
if let objects = task.result as? [[String:Any]] {
//process data...
}
return nil
})
What I'm unsure of is how to put this into a set of logic that can be run in the background like NSUrlSession.
ios aws-lambda aws-amplify
add a comment |
up vote
0
down vote
favorite
Within a native iOS app, what is the recommended way to call AWS lambda functions in the background when the app is not active? I have code that successfully calls lambda functions via the AWSLambdaInvoker object and I know how to use NSUrlSession to handle background requests to API endpoints that are not Lambda, but I'm not sure how to get the same behavior with AWSLambdaInvoker.
For example, the working code I have for calling Lambda functions follows this pattern:
let lambdaInvoker = AWSLambdaInvoker.default()
let params: [String: Any] = ["key1": "value1", "key2": 2, "key3": [1, 2]]
lambdaInvoker.invokeFunction("FUNCTION_NAME", jsonObject: params)
.continueWith(block: {(task:AWSTask<AnyObject>) -> Any? in
if( task.error != nil) {
print("Error: (task.error!)")
return nil
}
if let objects = task.result as? [[String:Any]] {
//process data...
}
return nil
})
What I'm unsure of is how to put this into a set of logic that can be run in the background like NSUrlSession.
ios aws-lambda aws-amplify
1
Please add your code that you have tried so far.
– Karthick Ramesh
Nov 19 at 21:09
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
Within a native iOS app, what is the recommended way to call AWS lambda functions in the background when the app is not active? I have code that successfully calls lambda functions via the AWSLambdaInvoker object and I know how to use NSUrlSession to handle background requests to API endpoints that are not Lambda, but I'm not sure how to get the same behavior with AWSLambdaInvoker.
For example, the working code I have for calling Lambda functions follows this pattern:
let lambdaInvoker = AWSLambdaInvoker.default()
let params: [String: Any] = ["key1": "value1", "key2": 2, "key3": [1, 2]]
lambdaInvoker.invokeFunction("FUNCTION_NAME", jsonObject: params)
.continueWith(block: {(task:AWSTask<AnyObject>) -> Any? in
if( task.error != nil) {
print("Error: (task.error!)")
return nil
}
if let objects = task.result as? [[String:Any]] {
//process data...
}
return nil
})
What I'm unsure of is how to put this into a set of logic that can be run in the background like NSUrlSession.
ios aws-lambda aws-amplify
Within a native iOS app, what is the recommended way to call AWS lambda functions in the background when the app is not active? I have code that successfully calls lambda functions via the AWSLambdaInvoker object and I know how to use NSUrlSession to handle background requests to API endpoints that are not Lambda, but I'm not sure how to get the same behavior with AWSLambdaInvoker.
For example, the working code I have for calling Lambda functions follows this pattern:
let lambdaInvoker = AWSLambdaInvoker.default()
let params: [String: Any] = ["key1": "value1", "key2": 2, "key3": [1, 2]]
lambdaInvoker.invokeFunction("FUNCTION_NAME", jsonObject: params)
.continueWith(block: {(task:AWSTask<AnyObject>) -> Any? in
if( task.error != nil) {
print("Error: (task.error!)")
return nil
}
if let objects = task.result as? [[String:Any]] {
//process data...
}
return nil
})
What I'm unsure of is how to put this into a set of logic that can be run in the background like NSUrlSession.
ios aws-lambda aws-amplify
ios aws-lambda aws-amplify
edited Nov 19 at 21:41
asked Nov 19 at 20:45
Chris Dellinger
736922
736922
1
Please add your code that you have tried so far.
– Karthick Ramesh
Nov 19 at 21:09
add a comment |
1
Please add your code that you have tried so far.
– Karthick Ramesh
Nov 19 at 21:09
1
1
Please add your code that you have tried so far.
– Karthick Ramesh
Nov 19 at 21:09
Please add your code that you have tried so far.
– Karthick Ramesh
Nov 19 at 21:09
add a comment |
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53382380%2fhow-to-call-aws-lambda-functions-in-background-within-ios%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
Please add your code that you have tried so far.
– Karthick Ramesh
Nov 19 at 21:09