Разработка с Blackberry JDE4.7?
RIM выпустила новый Blackberry JDE4.7 после выпуска Blackberry Storm. Поддерживает ли Blackberry Storm программы, созданные с использованием предыдущих версий? Я слышал, что в этой версии было много изменений по сравнению со старой. И были жалобы на то, что у Storm много ошибок.
Должен ли я использовать 4.7 или продолжать использовать более старый JDE?
Благодарю.
3 ответа
Зависит от того, что вы хотите сделать. На самом деле вы получите бесплатное вращение, если вы разработали макет своего приложения, который будет достаточно независимым от разрешения. Когда устройство поворачивается, ваши методы макета и подслоя будут вызываться снова (или, если вы только что использовали встроенные поля и менеджеры, все это происходит автоматически).
В 4.7 JDE вам понадобятся следующие важные вещи:
- Реакция на конкретные сенсорные события (события, которые приводят, например, к фокусу, переходу к полю или прокрутке, автоматически отображаются на более старые API)
- Определение ориентации устройства (хотя, опять же, об устройстве уже позаботились - это больше, если вы хотите использовать акселерометр на низком уровне, например, для управления игрой или чем-то еще)
Итог: обратная совместимость в целом очень хорошая, RIM разумным образом сопоставил новый сенсорный интерфейс со старыми API, и, поскольку Storm не совсем взлетел, как iPhone (большинство людей считают, что Bold и Curve все еще лучшие устройства), придерживайтесь более старого SDK, если вы не используете приложение, ориентированное исключительно на Storm.
Blackberry Storm должен поддерживать программы, созданные с использованием предыдущих версий. Тем не менее, иногда программы ломаются, либо из-за ошибки в новой версии, либо из-за исправленной ошибки в старой версии.
В API версии 4.7 должно было быть много изменений, чтобы поддерживать новые функции Storm.
Однако на самом деле вы должны разрабатывать с самым низким JDE, с которым вы можете справиться, чтобы не заставлять людей, которые иначе могли бы попробовать обновить вашу программу в первую очередь. С другой стороны, конечно, если вы хотите создать вращающийся интерфейс, вам понадобится 4.7 JDE и Storm.
У разработки с 4.7 есть некоторые проблемы, если вы внесли какие-либо изменения в способ обработки ввода. Если вы создали какие-либо настраиваемые поля, вам нужно обновить их и получить другую сборку для 4.7 против < 4.7. Есть больше методов на полях, например moveFocus(int x, int y)
,
Если в любом месте есть текстовый ввод, вам нужно будет убедиться, что виртуальная клавиатура не закрывает и не удаляет из вида все, что вам нужно, чтобы быть видимым.
Автоповорот представлений также иногда является проблемой, если вы сделали что-то вручную на экране, и вы не хотите, чтобы это изменилось во время выполнения, и в этом случае есть способ заставить приложение ориентироваться в определенной ориентации.
Я также заметил некоторые проблемы с симулятором, по крайней мере, при использовании объектов GaugeField, то есть, если вы сфокусировались на GaugeField, фокус не может быть удален. Не уверен, что с тех пор эта проблема была исправлена или что-то еще, но, по крайней мере, так происходит с моим симулятором.