You can use the NumberEight SDK, which can do a lot more than Google's Awareness API today (although no regioning is available at the time of writing).
It performs a wide variety of context recognition tasks on both iOS and Android including:
- Real-time physical activity detection
- Current place categories
- Motion detection
- Reachability
- Local weather
It can also record user context for reports and analysis via the online portal.
For example, to record user activity in iOS, you would do:
let ne = NumberEight()
ne.activityUpdated { (glimpse: Glimpse<NEXActivity>) in
let activity = glimpse.mostProbable.value
if activity.major == .running {
print("User is running!")
}
}
Here are some iOS and Android example projects, and you can sign up for free via the online portal.
Disclosure: I'm one of the developers.