|
Всего материалов в каталоге: 76 Показано материалов: 1-10 |
Страницы: 1 2 3 ... 7 8 » |
Вот решил написать статью, про модуль Pathinfo, который выводит пути к стандартным папкам в виде строки в юникоде вида "С:\\Data\\Sounds\\Diggital"
pathinfo.digitalsounds_path() - путь к цифровым звукам, результат: u'С:\\Data\\Sounds\\Diggital' pathinfo.games_path() - путь к папке игры, результат: u'С:\\Data\\Games' pathinfo.gmspictures_path() - путь к папке pictures, результат: u'C:\\Data\\Images\\Pictures\\' pathinfo.images_path() - путь к папке images, резудьтат: u'C:\\Data\\Images\\' pathinfo.installs_path() - путь к папке installs, результат: u'C:\\Data\\Installs\\' pathinfo.memorycard_path() - путь к карте памяти, результат u'E:\\' pathinfo.mmsbackgroundimages_path() - путь к папке с картинками для ММС сообщений, результат: u'C:\\Data\\Images\\Backgrounds\\' pathinfo.others_path() - путь к папке прочее, результат: u'C:\\Data\\Others\\' pathinfo.phone_path() - путь к папке data, результат u'C:\\Data\\' pathinfo.presencelogos_path() - путь к папке presence, результат: u'C:\\Data\\Images\\Presence\\' pathinfo.rom_path() - путь к оперативной памяти, результат: u'Z:\\Data\\' pathinfo.simplesounds_path() - путь к папке simple, результат u'C:\\Data\\Sounds\\Simple\\' pathinfo.videos_path() - путь к папке видео, результат: u'C:\\Data\\Videos\\'
Не знаю для чего этот модуль нужен фактически, может кому пригодится)) Если будет не лень, напишу статью по более интересным модулям.
|
В этой статье я хочу рассказать про модули питона telephone и message Модуль telephone создан для использования услуг телефона и имеет следующие функции:
dial(number) # набирает номер телефона, где number - срока вида u' 3809312345678'
hang up() # эта функция удерживает набранный вызов на линии. Если вызов был завершен интерпретатор известит вас об ошибке: SymbianError: KErrNotReady is raised
модуль messaging создан для работы с смс и имеет следующие функции:
sms send(получатель, сообщение, [encoding='7bit' , callback=None ]) # посылает смс сообщение с текстом набраном в юникоде на номер получателя (строка вида '12345678') параметр encoding определяет кодировку сообщения, и может иметь значения: '7bit' , '8bit' , или 'UCS2'''.
Параметр callback, как я понял, можно заменить функцией, которая будет выполняться после попытки отправки смс. Например:
import messaging
def cb(state): if state==messaging.ESent: #.ESent - данные, которые подтверждают, что смс было отправлено print 'message sent' if state==messaging.ESendFailed: # ESendFailed - данные, которые подтверждают, что смс отправить не получилось print 'error' messaging.sms_send('123456789', 'privet', '7bit', cb )
в модуле messaging доступны следующие данные:
ECreated # Сообщение было создано
EMovedToOutBox # сообщение было перемещено в исходящие EScheduledForSend # планируется посылка сообщения ESent # сообщение было отослано EDeleted # сообщение было удалено EScheduleFailed # ошибка при попытке отправки сообщения ESendFailed # ошибка при отправлении сообщения. Время ожидания отправки вышло. ENoServiceCentre # EFatalServerError # в случае, если сообщение отправить не удалось, интерпретатор известит пользователя об этом сообщением 'sms send failed!' , а не обычным исключением
|
{listtext} Модуль messaging
Внастоящий момент модуль имеет 1 функцию:
sms_send(recipient, message) Служит для отправки сообщения. Текст которого содержится в message в формате Unicode. Параметр recipient содержит телефонный номер получателя. (string).
Модуль location
Служит для получения информации касающейся GSM. Содержит 1 функцию: gsm_location() Возвращает значения:
- mcc (Mobile Country Code) - mnc (Mobile Network Code) - lac (Location Area Code) - cellid (Cell ID)
|
Думаю, что каждый обладатель смартфона мечтал бы иногда о какой-то нужной для него программе, но которую он не находил. В таком случае одни идут в стол заказов, а другие думают научится программировать, чтобы самим создавать свой софт. Я отношусь ко второй категории:) В первую очередь надо выбрать язык, в котором сможеш разобраться. Мне посоветовали питон, и я его теперь советую. Почему? Он легко воспринимается, не требует опыта в программировании, дружелюбный синтаксис и, как вы уже заметили, большие возможности. И самое главное- создавать программы можно на телефоне!!! Коротко основные вопросы, которые меня как новичка волновали. |
На иконках "старого" типа заострять внимание не стану, поскольку для их перепаковки с сохранением ассоциаций инструмент существует - AIF Repack. Хочу рассмотреть работу с aif-иконками второго типа. Для начала рассмотрим структуру aif-файлов "нового" типа (те, которые нельзя открыть с помощью AIF Tool и AIF Repack). Итак, файл aif рассматриваемого типа состоит из двух частей - собственно графики (mbm-файл в "чистом" виде) и заголовка, содержащего служебную информацию (UID'ы приложения, ассоциации с файлами). Если рассматривать структуру aif-файла такого типа, то сначала идет заголовок, а за ним до конца файла идет графика в виде "чистого" mbm. Задача сводится к тому, чтобы перенести заголовок "родной" иконки в новую создаваемую. При этом важно соблюсти структуру файла mbm, чтоб не получить в итоге так называемых "битых" иконок. Для работы с иконками нам понадобится следующее: "родная" иконка программы, mbm-файл с "новой" графикой (создается позже), HEX-редактор. На компьютере в hex работать удобнее, но если его нет под рукой, можно использовать редактор, встроенный в X-plore. Встает вопрос: как отделить заголовок от графики? Эта граница хорошо различима. В hex начало mbm выглядит как 37 00 00 10 42, в символах - 7 . . . B. Код до семерки представляет собой заголовок, который сразу выделяем и сохраняем отдельным файлом. С семерки и дальше имеем mbm, который также сохраняем для изучения его структуры. Изучив структуру (количество и размеры картинок) создаем новый mbm-файл с желаемым графическим наполнением по подобию "родного" mbm. Имеем заголовок и новый mbm-файл. Теперь приписываем к графике заголовок или цепляем mbm к заголовку, сохраняем - ГОТОВО.
P.S. Надеюсь, ничего не упустил. Удачного иконотворчества ;-)
Специально для участников сайта DimonVideo.ru. Алексей aka axy
|
Для создания aif.mif-иконок требуется Series 60 2nd Edition SDK for Symbian OS, supporting Feature Pack 3. Сие творение можно скачать на forum.nokia.com.
Итaк, полный пpoцecc coздaния mif-икoнoк включaeт в ceбя cлeдyющиe ocнoвныe этaпы: 1. Пoдбop или coздaниe svg-фaйлa. 2. Пpeoбpaзoвaниe svg-фaйлa в svg-tiny (svgt). 3. Cжaтиe svg-t (пpeoбpaзoвaниe в svgb). 4. Coбcтвeннo кoнвepтaция в mif.
По пункту 1: Moжнo иcпoльзoвaть готовые клипapты или coздaть вeктopнyю svg-кapтинкy c пoмoщью Adobe Illustrator CS2. По пункту 2: Для преобразования в svgt используется инструмент svg2svgtconverter, находящийся в папке Series60Tools пакета SDK. Вопросов по его применению возникать не должно. По пункту 3: Для сжатия svg используется инструмент svgtbinencode. Работаем с ним через сомандную строку (Пуск > Выполнить > cmd). Перед началом работы копируем предназначенный для сжатия файл, например myapp.svg, в папку C:Symbian8.1aS60_2nd_FP3Epoc32winscwctemp. Запускаем утилиту сжатия svgtbinencode. Набираем в командной строке: C:Symbian8.1aS60_2nd_FP3Epoc32releasewinscwudeb svgtbinencode -dnogui --c:tempmyapp.svg В папке с исходным файлом находим файл myapp.svgb. Переименовываем .svgb в .svg для дальнейшей с ним работы. По пункту 4: Полученный по пункту 3 файл преобразовываем в mif утилитой mifconv. Синтаксис следующий: C:Symbian8.1aS60_2nd_FP3Epoc32tools>mifconv myapp.mif /c32 C:gfxmyapp.svg Соответственно мы должны иметь исходный svg-файл с именем myapp.svg в папке C:gfx. Новый mif-файл myapp.mif ищем по адресу C:Symbian8.1aS60_2nd_FP3Epoc32tools. Заменяем имя файла на имя конечной aif.mif-иконки и проверяем ее работоспособность.
Примечание: Иногда для корректного отображения иконки в svg-t файле (открываем с помощью блокнота) необходимо заменить размеры картинки на абсолютные, т.е. в полях height и width записать в кавычках вместо 100% размеры картинки в пикселах, например 174px, 120px.
Специально для участников сайта DimonVideo.ru. Алексей aka axy
|
Модуль для вывода всякой информации о смарте =) import sysinfo #импортируем(подключаем) модуль. Функции модуля:
sysinfo.active_profile() #Выводит активный в данный момент профиль. sysinfo.battery() #Выводит уровень заряда батареи. sysinfo.display_pixels() #Выводит разрешение дисплея. sysinfo.free_drivespace() #Выводит размер свободного места на всех дисках. sysinfo.free_ram() #Выводит размер свободной оперативной памяти. sysinfo.imei() #Выводит IMEI устройства. sysinfo.os_version() #Выводит версию ОС. sysinfo.ring_type() #Выводит тип вашего звонка. sysinfo.signal() #Выводит уровень сигнала сети. sysinfo.sw_version() #Выводит версию прошивки. sysinfo.total_ram() #Выводит размер всей оперативной памяти. sysinfo.total_rom() #Выводит размер памяти.
Все, пользуемся =)
|
Для начала нужно задать переменной, файл для воспроизведения или записи.Можно сделать это как обычно - задать путь к файлу, так и с помощью lite_fm by Shrim.lite_fm понадобится только для открытия файла, для последующего воспроизведения, для записи он не нужен. Пример: import audio x=audio.Sound.open("e:sound.mp3") #это обычный пример.Вместо e:sound.mp3 нужно писать настоящий путь к аудио-файлу.
import audio,lite_fm x=lite_fm.manager() #этим задаем запуск файлмена lite_fm.После запуска необходимо выбрать звуковой файл.
x=audio.Sound.open(x) #это то же самое, что было двумя пунктами выше, но только файл задается в "открытие" после выбора его с помощью lite_fm.
В итоге вся функция открытия файла при помощи файлмена будет выглядеть так: import audio,lite_fm x=lite_fm.manager() x=audio.Sound.open(x)
Выбираем, что нужно делать дальше - воспроизвести или начать запись(запись можно производить только в amr или wav формате) Пример: x.play() #Воспроизводим выбранный файл(просто или при помощи lite_fm)
x.record() #начинаем запись в выбранный файл.
Выбираем далее - остановить запись или воспроизведение Пример: x.stop() #останавливаем этой функцией воспроизведение
x.stop() x.close() #этой функцией останавливаем запись и закрываем файл.
Так же, во время воспроизведения файла можно задать громкость Пример: x.set_volume() #В скобках () пишем уровень громкости от 0, до 10
Вот собственно и все основные функции этого модуля.Конечно для простых опытов нужно уметь работать с функциями.Так же примеры можно посмотреть здесь.
|
Оооочень долго ждал когда напишут подобную статью... но вот, не дождался:) - написал сам. Целевая аудитория моей статейки – люди, которые по тем или иным причинам не научились делать сертификат под свой смарт, не совсем понимают что такое Python - но жутко хотят узнать об этом по больше, новички - которым вообще жутко повезло набрести на эту стататейку, и бывалые ветераны пользователи, которые (возможно) откроют для себя, в этой статье пару-тройку интересных фишек. |
В этой статье я расскажу все что я знаю про модуль е32. Сразу скажу что в статье разобраны не все операторы модуля. Это моя первая статья так что строго не судите. Да и Питон я изучаю не долго если будут ошибки то поправьте. Начнем с оператора ao_sleep(). Этот оператор применяется для задержки в выполнении скрипта. Ну например у вас в программе выполняется два действия и нужно чтобы после выполнения первого прошло, скажем 5 секунд и началось выполнение второго действия. Вот в этом случае между ними нужно вставить этот оператор. Это будет выглядеть так: e32.ao_sleep(5) Как бы уже наверное догадались в скобках сказывается время, в секундах, на которое нужно остановить выполнение скрипта. Следующий оператор drive_list(). Из названия я думаю ясно чем занимается данный оператор. Но все же поясню. Он выводит имена всех ваших дисков. Если в интерактиве вы введете e32.drive_list() то питон вам выдаст список с именами всех ваших дисков [u'C:', u'D:', u'E:', u'Z:']. Дальше разберемся с оператором file_copy. Он предназначен для копирования файлов. Это делается так: e32.file_copy('e:folder1','e:folder21.txt'). Выполнив это действие питон скопирует файл 1.txt из папки 2 в папку 1. Едем далее.Следующий оператор start_exe(). Он применяется когда нужно запустить какую нибудь прогу из скрипта. Работает он так: e32.start_exe('z:systemprogramsapprun.exe','e:systemappssticqsticq.app'). Если это ввести в интерактиве то запустится стася. Первый аргумент это экзешник в прошивке, а второй это сама программа которую нужно запустить.Тут вроде все понятно пойдем дальше. Оператор pys60_version. Он выводит версию питона. s60_version_info выводит версию симбы. e32.s60_version_info (1,2) s60 1st edition, (2,0) s60 2nd edition, (2,6) s60 2nd edition 2FP. Оператор in_emulator как я понял определяет где запущено приложение.Если питон выдал 1 то на эмуляторе, 0 на девайсе. Пока все скоро попробую что нибудь еще написать про этот же и другие модули. Продолжение следует.
|
|
Поиск |
| Онлайн всего: 1 Гостей: 1 Пользователей: 0 |
|