Можем ли мы выпустить одно и то же приложение с 1 или 2 различными функциями для 2 разных стран? - PullRequest
0 голосов
/ 11 октября 2019

Я хочу выпустить свое приложение только в 2-х странах, и я хочу сделать 2 разные функции для обеих стран.

Например.

ViewController1 функциональность отличается на Ямайке. ViewController1 функции в Кении различны.

Различные функции означают, что содержимое различно или формы ввода различны.

Возможно ли это? если да, то, пожалуйста, обратитесь к какому-либо документу.

Заранее спасибо

Ответы [ 3 ]

0 голосов
/ 11 октября 2019

некоторые заметки о App Store:

1) язык должен / должен выбираться пользователем в настройках, а не в приложениях. Скорее всего, Apple откажется от приложений, не следуя приведенной выше логике.

2) Вы можете протестировать текущий язык / зону, используя код (см. Язык ниже), НО я думаю, что Apple может отказаться, поскольку вы используете другое поведение

3) если вам это действительно нужно, вы можете загрузить другой контроллер с помощью раскадровок (я предлагаю использовать разные раскадровки и размещать их во время выполнения, используя сегменты и "* .soryboard", как в:

func ViewControllerFromStoryboardWith( name: String ) -> UIViewController {

    // we use an identifier equal to filename for now.
    let storyboard = UIStoryboard(name: name, bundle: nil)

    let vc = storyboard.instantiateViewController(withIdentifier: name) as UIViewController
    return vc
}

// test lang:

func currHWLanguage()->String{

    let defs : UserDefaults = UserDefaults.standard
    let languages : NSArray = defs.object(forKey: "AppleLanguages") as! NSArray
    let current = languages[0] as! String

    // since 9.0 we get en-US etc.. so cut to 2:
    let result = (current as NSString).substring(to: 2)

    #if DEBUG
    // force to IT as a bug in simulator
    // return "IT"
    #endif

    return result.uppercased()
    //NSLog("%@", current)
}
0 голосов
/ 11 октября 2019

Это проблема, которую пытаются решить многие приложения. По сути, у вас есть следующие опции:

  1. Позволяет пользователю выбирать. Это самый безопасный вариант, если одно приложение содержит две разные конфигурации.
  2. Попробуйте определить местоположение пользователя. Язык / язык небезопасен, потому что у многих людей настроен английский (или другой) язык. Очень небезопасно. Вы не должны спрашивать местоположение GPS для этого. Самый безопасный вариант - создать запрос к серверу и проверить местоположение с помощью IP-адреса. Немного сложно и не будет работать, если используется VPN (например, антивирусные приложения создают VPN).
  3. Создайте два разных приложения. В конце концов, это лучший вариант. Добавьте в ваш проект вторую цель приложения и выпустите два отдельных приложения с отдельной конфигурацией.
0 голосов
/ 11 октября 2019

У вас должен появиться экран, позволяющий пользователю выбрать свою страну, после чего сохранить выбранную страну в нашем приложении (с помощью UserDefault или Keychain и т. Д.).

В зависимости от выбранной страны вы можете переключать логику / макет, чтобы адаптировать вышеуказанное требование

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...