Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flash Приложения: AIR, Zinc и тд. (http://www.flasher.ru/forum/forumdisplay.php?f=94)
-   -   Пауза от IOS (http://www.flasher.ru/forum/showthread.php?t=213887)

in4core 13.02.2017 17:05

Пауза от IOS
 
Добрый день! Подскажите решение проблем связанных и с IOS

1) Приложение по умолчанию при сворачивании ( кнопка HOME ) - сворачивается, но при возвращении в него - запускается заново, то есть не работает в трее, как это было с Android. Чем это решается?

2) При запуске приложения мы видим логотип ЭИР. Все иконки стоят кастомные, почему именно при запуске появляется логотип ЭИР, и где его заменить на свое?

Спасибо за ответы!

Nnget 13.02.2017 18:55

1) Приложение по умолчанию при сворачивании ( кнопка HOME ) - сворачивается, но при возвращении в него - запускается заново, то есть не работает в трее, как это было с Android. Чем это решается?

Насколько знаю не решается в обоих слуаях(иос/андройд). ОС Может в любой момент выкинуть приложение из памяти.Один из способов-уменьшить количество занимаемой памяти, увеличит вероятность что приложение не будет закрыто.

2) А тут загадка. какая ide? В иос есть набор картинок для запуска для разных устройств, может их надо поменять.

in4core 13.02.2017 19:12

Nnget - по поводу первого точно уверены?

Nnget 13.02.2017 23:36

По иос уверен, там с работой в фоне все строго. По андройд есть какое-то свойство, которое не дает закрытся, но тоже не гарантия успеха. Я бы не стал надеется что приложение не закроется. Вопрос какая задача. Для каждой задачи свои решения.

Насчет меньшего количества занимаемой памяти, работал с заказчиком, который игру вдоль и поперек вылизывал. Пришлось освобождать ресурсы, чтобы андройд не закрывал приложение. Помогло.

in4core 14.02.2017 00:03

Nnget - любое приложение в ИОС - работает в фоне вполне нормально, ни одно из них не умирает по ХОМ кнопке. Откуда вы это взяли вообще? Наше умирает - но я думаю на то есть причины, и память тут не причем.

Добавлено через 1 минуту
Да - конечно добавлю, все приложения что не умирают - не AIR. А JAVA и т.п. - но черт побери, а чем ЭИР хуже? Наверняка есть какие то ключи для этого

Добавлено через 20 минут
Решение найдено :

Opt out of Background Execution

AIR on iOS provides support for opting out of background execution. Opting out of background execution is required for designing applications that saves its state periodically and hence does not want to be suspended when it enters background. If an application developer wishes to opt out of background execution, “UIApplicationExitsOnSuspend” key with value “true” needs to be set in the application descriptor.

Код:

<iPhone>
    <InfoAdditions>
        <![CDATA[
            <key>UIApplicationExitsOnSuspend</key>
            <true/>
        ]]>
    </InfoAdditions>
</iPhone>


When UIApplicationExitsOnSuspend key is set to true, application is terminated and purged from memory instead of suspending when application moves to background. If UIApplicationExitsOnSuspend key is not present, or is set to false, the application moves to the background as usual.

Курите мануалы )))

Nnget 14.02.2017 08:55

Вот тут не понял. Т.е. этот ключ был кем-то установлен в true?
Т.е. По идее надо его стереть или поставить false

Код AS3:

<iPhone>
    <InfoAdditions>
        <![CDATA[
            <key>UIApplicationExitsOnSuspend</key>
            <true/>
        ]]>
    </InfoAdditions>
</iPhone>

И каким образом изменение значения ключа на false, поможет избежать закрытия приложения в фоне?

in4core 14.02.2017 11:26

Nnget - данный ключ в app.xml - ставится автоматом. Только пользователь может его поменять на false. Если меняешь - приложение в фоне никогда не будет закрыто, даже когда памяти не хватает, хотя наверное только в этом случае и сможет быть закрыто, когда не сможет фукнционировать сам телефон. А в любом другом случае - никогда не будет закрыто. Андроид ваще никогда не закрывается, кто вам сказал, что закрывается - непонятно.

Nnget 14.02.2017 11:54

Цитата:

Сообщение от in4core (Сообщение 1199228)
Nnget - данный ключ в app.xml - ставится автоматом. Только пользователь может его поменять на false. Если меняешь - приложение в фоне никогда не будет закрыто, даже когда памяти не хватает, хотя наверное только в этом случае и сможет быть закрыто, когда не сможет фукнционировать сам телефон. А в любом другом случае - никогда не будет закрыто. Андроид ваще никогда не закрывается, кто вам сказал, что закрывается - непонятно.

1)Не правда. Я уже спрашивал выше про ide. Вот xml (его часть) содаваемый по умолчанию в FB air 24. Нету этого ключа.

Код:

android>
        <manifestAdditions><![CDATA[
                        <manifest android:installLocation="auto">
                            <!--See the Adobe AIR documentation for more information about setting Google Android permissions-->
                            <!--Removing the permission android.permission.INTERNET will have the side effect
                of preventing you from debugging your application on your device-->
                            <uses-permission android:name="android.permission.INTERNET"/>
                            <!--<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>-->
                            <!--<uses-permission android:name="android.permission.READ_PHONE_STATE"/>-->
                            <!--<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>-->
                            <!--The DISABLE_KEYGUARD and WAKE_LOCK permissions should be toggled together
                in order to access AIR's SystemIdleMode APIs-->
                            <!--<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>-->
                            <!--<uses-permission android:name="android.permission.WAKE_LOCK"/>-->
                            <!--<uses-permission android:name="android.permission.CAMERA"/>-->
                            <!--<uses-permission android:name="android.permission.RECORD_AUDIO"/>-->
                            <!--The ACCESS_NETWORK_STATE and ACCESS_WIFI_STATE permissions should be toggled
                together in order to use AIR's NetworkInfo APIs-->
                            <!--<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>-->
                            <!--<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>-->
                        </manifest>
                       
                ]]></manifestAdditions>
    </android>
    <iPhone>
        <InfoAdditions><![CDATA[
                        <key>UIDeviceFamily</key>
                        <array>
                                <string>1</string>
                                <string>2</string>
                        </array>
                ]]></InfoAdditions>
        <requestedDisplayResolution>high</requestedDisplayResolution>
    </iPhone>
</application>

2) Про работу с памятью не буду спорить. По андройду вам сюда дорога https://developer.android.com/guide/...lifecycle.html.
По Иос на сайте разработчиков эпла есть подобная статья.

Как видим, чистим все и вся, если нужны ресурсы.

in4core 15.02.2017 01:39

Какие ресусры, что чистим? Вопрос был почему приложение не запускается в фоне, а не то, что перегрузка памяти.

IDE FD. Как оказалось более продуктивное в плане настроек по умолчанию )

undefined 15.02.2017 01:53

в андройде чтоб приложение дохло в фоне, надо его самому грохать в onPause.Подефолту оно просто спать отправляется


Часовой пояс GMT +4, время: 16:34.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.