Как создать приложение как для планшета, так и для мобильного - PullRequest
5 голосов
/ 30 апреля 2011

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

это будет работать следующим образом.

  1. Для мобильных устройств это приложение будет работать с небольшим пользовательским интерфейсом
  2. Для планшета, кроме использования медовой соты, работайте с другим пользовательским интерфейсом, который использует его более большой экран
  3. Планшет на базе Honeycomb будет иметь другой интерфейс, поддерживающий его специальные функции

Как я могу это сделать. Исправьте меня, если я ошибаюсь.

С уважением, Кариячан

Ответы [ 2 ]

1 голос
/ 27 марта 2015

Это можно сделать несколькими способами.

Сначала вы можете создавать папки с различными значениями.Каждая папка может иметь размеры, которые используются для нескольких размеров.

Вторая попытка - создание разных макетов.Существует хорошая таблица для разных названий:

http://petrnohejl.github.io/Android-Cheatsheet-For-Graphic-Designers/

Затем вы можете добавить несколько файлов для рисования для разных размеров экрана.

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

Вы можете просмотреть все возможные папки на http://developer.android.com/guide/practices/screens_support.html

Другой способ - создать несколько определений, какие устройства (разрешение) могут использовать ваше приложение.

Вы можете определить его вманифест:

<compatible-screens>
    <!-- all small size screens -->
    <screen android:screenSize="small" android:screenDensity="ldpi" />
    <screen android:screenSize="small" android:screenDensity="mdpi" />
    <screen android:screenSize="small" android:screenDensity="hdpi" />
    <screen android:screenSize="small" android:screenDensity="xhdpi" />
    <!-- all normal size screens -->
    <screen android:screenSize="normal" android:screenDensity="ldpi" />
    <screen android:screenSize="normal" android:screenDensity="mdpi" />
    <screen android:screenSize="normal" android:screenDensity="hdpi" />
    <screen android:screenSize="normal" android:screenDensity="xhdpi" />
</compatible-screens>

или

<supports-screens android:smallScreens="false"
                  android:normalScreens="false"
                  android:largeScreens="true"
                  android:xlargeScreens="true"
                  android:requiresSmallestWidthDp="600" />

Вот хороший пример использования фрагментов:

http://developer.android.com/guide/components/fragments.html

Все возможные определения папок перечислены нижев

http://developer.android.com/guide/topics/resources/providing-resources.html

, например:

 layout-sw320p
 values-h720dp (screen must be higher then 720dp)

, а затем создайте файл измерений с разными разрешениями, цветами и т. д.

0 голосов
/ 27 марта 2015

Есть несколько способов сделать это.По сути, есть два основных способа запуска приложения:

  1. Создание собственного приложения на языке ОС (iOS = цель C, Android = Java и т. Д.) (Или)
  2. Создайте веб-приложение, которое использует отзывчивый интерфейс, который может соответствовать любому размеру устройства, и отправьте его в магазин приложений в виде веб-просмотра (используя технологию, например PhoneGap)

IПредложите вариант №2 для выполнения вашей задачи.

Единственная проблема - если вы не являетесь веб-разработчиком, выбор может быть не таким простым.Мой опыт - это пользовательский интерфейс / дизайн при создании приложений, большая часть моего опыта связана с веб-приложениями.Вот почему я предлагаю вариант № 2:

  • Создание адаптивного веб-приложения first означает, что вы можете запускать на всех платформах с помощью одной программы (DesktopИнтернет, планшет, iOS (веб-браузер), Android (веб-браузер) и т. д.
  • У вас есть только одна платформа для поддержки (по сравнению с каждой собственной платформой)
  • Вы можете использовать аналитические программыузнать, какая платформа набирает наибольшую популярность в приложении, а затем решить, какую платформу создать для нативного приложения (например, Google Analytics (бесплатно) http://google.com/analytics, Kiss Metrics (Paid) http://kissmetrics.com, и т.1029 * Вы даже можете использовать встроенные функции телефона в приложениях Webview с помощью такой программы, как PhoneGap (http://phonegap.com/)

Если вы не знакомы с адаптивным дизайном, вот несколько ресурсов: http://johnpolacek.github.io/scrolldeck.js/decks/responsive/ http://www.smashingmagazine.com/2011/01/12/guidelines-for-responsive-web-design/

Вот некоторая информация о приложениях Webview для Android:

Webview Android:

Веб-приложения: http://developer.android.com/guide/webapps/index.html Создание веб-приложений в Webview: http://developer.android.com/guide/webapps/webview.html

iOS Webview:

Apple. Позволяет приложениям Webview, но должен иметь возможность автономного использования: https://forum.jquery.com/topic/apple-store-reject-webview-based-jquery-mobile-aplication

Теперь приложение Webview не всегда является жизнеспособным / лучшим вариантом для приложений любого типа.Например, если вы хотите создать одноранговое приложение для обмена сообщениями, это может сработать, потому что это (часто) довольно легкие программы, которые не требуют слишком большой полосы пропускания между устройством и серверами.Но для чего-то вроде приложения для обмена фотографиями было бы практически невозможно передать файлы размером с изображение (и тысячи из них) через Интернет для отображения на устройстве.В этом случае лучшим вариантом может быть нативное приложение, использующее локальное хранилище.

Надеюсь, это поможет.

...