Там какой-либо путь состоит в том, чтобы определить, бродит ли iPhone?

Когда мы выбираем Spring Boot, мы не хотим производить WAR. Из корневой страницы :

Spring Boot makes it easy to create stand-alone [...] 
Applications that can you can "just run".
Embed Tomcat or Jetty directly (no need to deploy WAR files)

РЕДАКТИРОВАНИЕ: Итак, если целью является «попробовать Spring Boot», я предлагаю не создавать файл WAR.

Если вам действительно нужно создать WAR-файл (сохраняйте код, созданный для SpringBoot и создавайте файл, который вы можете запускать в любом стандартном контейнере сервлетов ...), тогда вам следует прочитать документацию Преобразование JAR-файла Spring Boot Применение к войне .

Вы включили spring-boot-maven-plugin в процесс сборки? Вы не описали этот шаг ...

21
задан JOM 7 October 2011 в 23:13
поделиться

1 ответ

Есть! Это вообще не задокументировано, и я очень сомневаюсь, что это сработает на телефоне без джейлбрейка (поскольку это требует использования файлов не в песочнице). Однако вот как это делается.

Файловая система iPhone хранит две программные ссылки:

static NSString *carrierPListSymLinkPath = @"/var/mobile/Library/Preferences/com.apple.carrier.plist";
static NSString *operatorPListSymLinkPath = @"/var/mobile/Library/Preferences/com.apple.operator.plist";

когда эти ссылки указывают на один и тот же файл, телефон не находится в роуминге. При указании на разные файлы телефон романирует.

Упрощенный код (без проверки ошибок и т. Д.):

- (BOOL)isRoaming
{
    NSFileManager *fm = [NSFileManager defaultManager];
    NSError *error;
    NSString *carrierPListPath = [fm destinationOfSymbolicLinkAtPath:carrierPListSymLinkPath error:&error];
    NSString *operatorPListPath = [fm destinationOfSymbolicLinkAtPath:operatorPListSymLinkPath error:&error];
    return (![operatorPListPath isEqualToString:carrierPListPath]);
}
23
ответ дан 29 November 2019 в 21:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: