Я не уверен, препятствует ли это тому, чтобы устройство блокировало, но можно препятствовать тому, чтобы экран потускнел с UIApplication
idleTimerDisabled
свойство:
[UIApplication sharedApplication].idleTimerDisabled = YES;
Из документации:
Важный : необходимо установить это свойство, только если необходимый и, несомненно, должно будет сбросить его к НЕ, когда потребность больше не существует. Большинство приложений должно позволить системе выключить экран, когда неактивный таймер протекает. Это включает аудиоприложения. С соответствующим использованием Аудио Сеансовых служб воспроизведение и запись продолжаются непрерывные, когда экран выключает. Единственные приложения, которые должны отключить неактивный таймер, отображают приложения, игры или подобные программы со спорадическим взаимодействием с пользователем.
Адаптируйте этот пример: Как извлечь ресурсы Java из JAR и zip-архива
Или попробуйте этот код:
Извлеките содержимое файлов ZIP / JAR программно
Предположим, что
jarFile
- это файл jar / zip, который нужно распаковать.destDir
- это путь, по которому он будет извлечен:java.util.jar.JarFile jar = new java.util.jar.JarFile (jarFile); java.util.Enumeration enumEntries = jar.entries (); while (enumEntries.hasMoreElements ()) { java.util.jar.JarEntry file = (java.util.jar.JarEntry) enumEntries.nextElement (); java.io.File f = новый java.io.File (destDir + java.io.File.separator + file.getName ()); if (file.isDirectory ()) {// если это каталог, создайте его f.mkdir (); Продолжать; } java.io.InputStream is = jar.getInputStream (файл); // получаем входной поток java.io.FileOutputStream fos = новый java.io.FileOutputStream (f); while (is.available ()> 0) {// записываем содержимое 'is' в 'fos' fos.write (is.read ()); } fos.close (); близко(); } jar.close ();
Источник : http://www.devx.com/tips/Tip/22124
JarFile класс.
JarFile file = new JarFile("file.jar");
for (Enumeration<JarEntry> enum = file.entries(); enum.hasMoreElements();) {
JarEntry entry = enum.next();
System.out.println(entry.getName());
}
Ваш заголовок, похоже, не очень хорошо соответствует вопросу, но если вы действительно хотите «написать [a] java-программу, извлекающую файл jar», вам просто понадобится Class JarFile .