как правильно собрать проект
как правильно собрать проект
У меня сейчас задача собрать проект так, чтобы он запускался на андроиде 2.1 - 4.3 (api level 7-18). Проект до настоящего момента писал и отлаживал на андроиде 4.1 прямо на железке. Как мне проверить запустится он или нет на 2.1? В манифесте я попробовал поставить минимальный апи левел 7 но в процессе сборки ничего не поменялось, хотя я точно знаю что в паре мест использовал финкции не поддерживаемые на этой версии. Что мне нужно прописать в AndroidStudio чтобы сборка прошла для этой версии.
Второе - как мне нужно собрать-проект чтобы один APKзапустился без проблем на всех версиях?
Второе - как мне нужно собрать-проект чтобы один APKзапустился без проблем на всех версиях?
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: как правильно собрать проект
Самое простое - это кликнуть правой кнопкой на проекте, выбрать "Properties" в настройках перейти на вкладку "Android" и выбрать там версию с нужным API. Если нужной не будет, нужно будет скачать через SDK Manager. Ошибки которые появятся- это и есть те места которые на API 7 работать не будут. Их нужно будет аккуратно обойти.
Как-то так:
Ну, и не забыть вернуть настройки на место.
Как-то так:
Код: Выделить всё
if(android.os.Build.VERSION.SDK_INT >= 14) {
// Код для 4 Андроида
else {
// Код для более старых версий
}
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.
Re: как правильно собрать проект
И теперь я просто всегда использую лвл 7 чтобы проект запускался на всех устррйствах нужных а на более старших версиях его просто тестирую. Я все правильно понял?
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: как правильно собрать проект
Если вы будете всегда использовать 7 лвл, приложение даже не скомпилируется, так как код для более высокой версии будет помечаться как ошибка. В идеале нужно сразу смотреть какое API использует тот или иной метод и применять меры для совместимости на всех платформах. То, что я описал выше, это всего лишь быстрый способ посмотреть что не так.
PS: Если при выборе более низкого API ошибок не выдает, можно использовать его, совместимость с более высокими версиями есть почти всегда.
PS: Если при выборе более низкого API ошибок не выдает, можно использовать его, совместимость с более высокими версиями есть почти всегда.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.
Re: как правильно собрать проект
Я наверное продолжу вопрос в этой ветке.
Все сделал, все собрал, все понял - спасибо.
Когда я загружаю это приложение в альфа версию на google-play
во первых сразу после загрузки пишет в информации о пакете API 10+, хотя в манифесте прописано 7-е
во вторых когда я попытался загрузить из альфы на телефон знакомого HTC gratia (андроид 2.2) было написано приложение не поддерживается на вашем устройстве.
вот манифест
почему определяется уровень апи 10+? Может какие-то разрешения или что-то еще появилось только с 10-го апи?
Все сделал, все собрал, все понял - спасибо.
Когда я загружаю это приложение в альфа версию на google-play
во первых сразу после загрузки пишет в информации о пакете API 10+, хотя в манифесте прописано 7-е
во вторых когда я попытался загрузить из альфы на телефон знакомого HTC gratia (андроид 2.2) было написано приложение не поддерживается на вашем устройстве.
вот манифест
Код: Выделить всё
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="ru.mcsar.seowatcher"
android:versionCode="2"
android:versionName="1.0"
android:installLocation="preferExternal">
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-sdk
android:minSdkVersion="7"
android:targetSdkVersion="14" />
<application
android:description="@string/descr"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:logo="@drawable/ic_launcher"
android:label="@string/Myapp_name_short"
android:theme="@style/AppTheme" >
<activity
android:name="ru.mcsar.seowatcher.MainActivity"
android:label="@string/Bigapp_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".ActivityListDomain"
android:label="@string/app_name_graph">
</activity>
</application>
</manifest>
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: как правильно собрать проект
Попробуйте установить приложение на телефон знакомого не через маркет, а напрямую при помощи APK и проверить его работоспособность.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.
Re: как правильно собрать проект
Это первое что я пробовал. При попытке установки ошибка - При анализе пакета возникла синтаксическая ошибка. Передавал по почте в архиве и без архиваKamiSempai писал(а):Попробуйте установить приложение на телефон знакомого не через маркет, а напрямую при помощи APK и проверить его работоспособность.
- KamiSempai
- Сообщения: 1339
- Зарегистрирован: 17 фев 2012, 21:23
- Откуда: Мордор
Re: как правильно собрать проект
Значит нужно брать телефон и производить на нем отладку приложения.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.
Хватит таскать макулатуру на тренировку! Используй T Note.