2015-08-02 6 views
0

Я использую iBetterCharge в течение некоторого времени, и мне это очень нравится. Кроме того, что иногда это раздражает громким предупреждающим звуком.Как работают приложения, такие как iBetterCharge и coconutBattery?

В любом случае, мне интересно, как работают такие приложения, как iBetterCharge и coconutBattery? Я имею в виду, как они читают уровень бита iPhone по беспроводным сетям?

Мое личное исследование не показало много о том, как читать программный уровень заряда устройства. Однако, по данным iBetterCharge, они вообще не разговаривают с iPhone. Говорят, что приложение общается с устройством, используя данные, которые сама собирается iTunes.

Но как?

ответ

2

Он использует протоколы, которые iTunes сам использует для синхронизации с устройствами iOS. FAQ говорит все, что вам нужно знать. Отъезд libimobiledevice Эта библиотека реализует эти протоколы и может использоваться для извлечения информации о батарее. Я знаю, что он работает через USB, но не знает, в каком состоянии происходит сетевое внедрение (это говорит WIP).

Вы можете попробовать пример here. Вам необходимо передать com.apple.mobile.battery в качестве домена для извлечения информации о батарее.

+0

Благодарим вас за ответ. Да, я читал страницу часто задаваемых вопросов. Что смутило мой разум, так это то, что они говорят, что они «используют данные, которые сама собирается iTunes». [FAQs Страница для iBetterCharge] (http://softorino.com/ibettercharge/faq). iTunes необходимо синхронизировать с iPhone часто через Wi-Fi, чтобы отображать информацию об тестовом продукте в iTunes. Я не могу понять, как получить эти данные из iTunes. Я ничего не мог найти по этому поводу. Не на libimobiledevice. –

+0

Я не думаю, что они имели в виду это. Что они означают, так это то, что они используют те же данные, что и iTunes для отображения информации о батарее. Они оба используют те же протоколы, которые iOS-устройства предоставляют по умолчанию для получения этих данных. Они не делают ничего особенного. libimobiledevice - это обычная реализация этих протоколов. Я посмотрел приложение - они связаны с iTunesMobileDevice.dll на ПК, поэтому это означает, что они напрямую общаются с устройствами iOS без помощи iTunes – creker

+0

, что объясняет многое. Я не знаю, как проверить эти отношения для приложений. Единственное, что их страница часто задаваемых вопросов показывает, что iBetterCharge не может получить данные об уровне заряда батареи, iPhone не настроен для синхронизации с iTunes через Wi-Fi. Они должны использовать iTunes-код, чтобы обойти какой-то процесс авторизации. Хотелось бы, чтобы я знал способы придумать такие процедуры кодирования. Во всяком случае, спасибо, что просветил меня. –