Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[TIMOB-25887] Handle hasPlayServices() exceptions #9950

Merged
merged 3 commits into from Mar 21, 2018

Conversation

garymathews
Copy link
Contributor

  • Handle exceptions from FusedLocationProvider.hasPlayServices()
TEST CASE
  • Do NOT include ti.playservices
var win = Ti.UI.createWindow({ backgroundColor: 'gray' }),
    listView = Ti.UI.createListView(),
    count = 1;

Ti.Geolocation.accuracy = Ti.Geolocation.ACCURACY_HIGH;

function push (e) {
    var section = Ti.UI.createListSection({ headerTitle: '#' + count++ });
    if (e.success) {
        if (e.coords) {
            e = e.coords;
        }
        section.setItems([
            { properties: { title: 'LOCATION:\n' + e.latitude + ', ' + e.longitude, color: 'orange' } },
            { properties: { title: 'ALTITUDE:\n' + e.altitude, color: 'orange' } },
            { properties: { title: 'ACCURACY:\n' + e.accuracy, color: 'orange' } }
        ]);
    } else {
        section.setItems([
            { properties: { title: 'ERROR:\n' + e.error, color: 'red' } }
        ]);
    }
    listView.appendSection(section);
}

function getLocation () {
    Ti.Geolocation.addEventListener('location', push);
    Ti.Geolocation.getCurrentPosition(push);
}

win.addEventListener('open', function () {
    if (Ti.Geolocation.hasLocationPermissions()) {
        getLocation();
    } else {
        Ti.Geolocation.requestLocationPermissions(Ti.Geolocation.AUTHORIZATION_ALWAYS, function (e) {
            if (e.success) {
                getLocation();
            } else {
                alert('could not obtain location permissions');
            }
        });
    }
});

win.add(listView);
win.open();

JIRA Ticket

@build
Copy link
Contributor

build commented Mar 20, 2018

Messages
📖

💾 Here's the generated SDK zipfile.

Generated by 🚫 dangerJS

Copy link
Contributor

@ypbnv ypbnv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@lokeshchdhry
Copy link
Contributor

@garymathews , I still see the logs on a nexus 6P android 8.0.

@garymathews
Copy link
Contributor Author

@lokeshchdhry Could you paste a snippet of the logs?

@lokeshchdhry
Copy link
Contributor

FR Passed.

No unnecessary logs/exceptions seen in the console.

Studio Ver: 5.1.0
SDK Ver: 7.2.0 local build
OS Ver: 10.13.2
Xcode Ver: Xcode 9.2
Appc NPM: 4.2.12
Appc CLI: 7.0.2
Daemon Ver: 1.0.1
Ti CLI Ver: 5.0.14
Alloy Ver: 1.11.0
Node Ver: 8.9.1
NPM Ver: 5.5.1
Java Ver: 1.8.0_101
Devices: ⇨ google Nexus 6P --- Android 8.0.0
⇨ google Nexus 5 --- Android 6.0.1

@build build added the android label Mar 21, 2018
@lokeshchdhry lokeshchdhry merged commit a81b170 into tidev:master Mar 21, 2018
@sgtcoolguy sgtcoolguy modified the milestones: 7.2.0, 7.3.0 May 16, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants