WebdriverIO + Appium -> React Native app

Hello everyone, we use the Appium for testing our React Native application. We had a problem with testing on the iOS device. The given code works on Android, on ios - an error that can not find an element on such locator, how such it is possible?

Code:
describe(‘Some positive test’, function () {
it(‘CASE #1: User can sign in’, function () {
let signInBtn = ~sign_in;
let emailField = ~login_email;
let passwordField = ~login_password;
let loginBtn = ~login_submit;

    browser.waitForVisible(signInBtn, 20000);
    browser
        .element(signInBtn)
        .click();

    browser.waitForVisible(emailField, 20000);
    browser
        .element(emailField)
        .click()
        .keys('paul_qamailinator.com');

    browser.waitForVisible(passwordField, 20000);
    browser
        .element(passwordField)
        .click()
        .keys('goodgoodgood');

    browser.waitForVisible(loginBtn, 20000);
    browser
        .element(loginBtn)
        .click();

    browser.pause(5000);
});

});

element (" ~sign_in") still not visible after 20000ms
running
Error: element (" ~sign_in") still not visible after 20000ms
at elements(" ~sign_in") - isVisible.js:54:17
at isVisible(" ~sign_in") - waitForVisible.js:73:22

you can’t use same locater for both Android & iOS ( this is from my recent experience with automating React Native application )

I recommend to interact with app to find out correct locater in below way