Articles of андроида

Распределение памяти в Java – Android

Если бы у меня был: Bitmap bitmap = Bitmap.create(..); // instance a bitmap = Bitmap.create(…); // instance b bitmap = null; bitmap = Bitmap.create(…); // instance c bitmap.recycle(); bitmap = Bitmap.create(…); // instance d bitmap.recycle(); bitmap = null; Как только этот код будет выполнен, какой из четырех экземпляров все еще находится в памяти? Я знаю […]

Как эффективно использовать статические переменные?

Мне нравится знать некоторые основные вещи Я разрабатываю приложение для Android и, таким образом, это приводит меня к проблемам управления памятью. Недавно просмотрел видео, связанное с управлением памятью google. Я обнаружил, что использование статической переменной в активности вызывает утечку памяти даже при изменении ориентации активности, поскольку она поддерживает ссылки на другие объекты в активности. Человек […]

Множественные фрагменты в вертикальном Lingleayout

Я столкнулся со следующей проблемой в своем приложении. Я хочу добавить несколько фрагментов в вертикальный LinearLayout в определенном порядке. Вот мой макет <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/scrollview" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" > <LinearLayout android:id="@+id/content" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > </LinearLayout> </ScrollView> И вот код, который я использую для добавления фрагментов. Fragment fragment1 = MyFragment.newInstance(param1); Fragment fragment2 […]

Android Studio не удается создать

У меня очень странная проблема, у меня есть проект, который имеет другие зависимости. Проект строит отлично с градиентом в командной строке, однако, когда дело доходит до Android Studio, я не могу заставить его работать вообще. Я провожу около 6 часов, и я сдаюсь. Ошибка, которую я получаю от студии Android, – это Gradle 'sample-app-project' project […]

Начать операцию для результата IME

Я разрабатываю приложение, которое должно возвращать некоторый текст в приложение, которое запустило намерение. Но приложение, которое запускает намерение, является IME / soft Keyboard. Таким образом, StartActivityForResult недоступен, поскольку IME – это сервис. Как я могу это достичь? Что я получил до сих пор: Клавиатура: final Intent intent = new Intent("com.example.helloworld.GETTEXT"); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK); intent.putExtra("keyboard", true); startActivity(intent); […]

Многопоточная связь: насколько хороши использование атомных переменных, таких как AtomicInteger? Почему нет AtomicFloat?

Вступление: Я хочу создать многопоточное приложение для Android. Моя проблема – связь между потоками. Я читал о связи между потоками, и я наткнулся на такие вещи, как дизайн Looper / Handler, который казался довольно привлекательным и Atomic Variables, например AtomicInteger. На данный момент я использовал AtomicInteger в качестве сообщения, но, поскольку я не очень разбираюсь […]

Пользовательские кнопки Android

Я создаю пользовательские кнопки в android, но хочу избежать повторения. Я пытаюсь создать 2 кнопки, которые имеют один и тот же дизайн, но другой значок изображения вместо текста. В настоящее время у меня есть: И я использую этот xml в качестве ресурса: <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <item> <shape> <padding android:bottom="5dp" android:left="5dp" android:right="5dp" android:top="5dp" […]

Исключить BuildConfig.class из библиотеки Android jar в Gradle

Когда вы строите проект библиотеки Android с помощью Gradle, каков правильный способ исключить BuildConfig.class из полученного .jar?

Как я могу лучше, чем грубая сила в поиске ближайшего места?

У меня есть следующий код: public static Location findClosest(Location myPosition, ArrayList<Location> spots) { double min = Double.MAX_VALUE; Location closer = null; for(MyPosition aPosition:spots) { float dist = Math.abs(aPosition.distanceTo(myPosition)); if(dist < min) { min = dist; closer = aPosition; } } return closer; } Это подход грубой силы O (N ^ 2), потому что это вызвано […]

Android Studio Gradle Не удается разрешить символ 'applicationVariants'

Я пытаюсь обойти раздражающую проблему с Gradle, которая не позволяет библиотекам иметь разные min / target sdk. Решение было добавить следующее для build.gradle. android.applicationVariants.all{ variant -> // This is an annoying hack to get around the fact that the Gradle plugin does not support // having libraries with different minSdkVersions. Play Services has a min […]