Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: I7 6700HQ + 8 гб оперативки, будет летать?

Покупаю ноут (100% нужен именно ноут) с такими характеристиками, как долго собирается проект? Удобно работать?
Ответ: ну я сужу по аватарке.
Сообщение от Паблито
Андроид - так правильнее
неужели вы могли подумать что не знаю как оська называется?
хотя таки да. вполне себе рабочая.
Вопрос: Может ли в папке jni быть несколько заголовочных файлов?

Может ли в папке jni быть несколько заголовочных файлов .h ?? И как если это надо прописать в Android.mk??
Ответ: заголовочные файлы содержат "декларации" - т.е. объявления типов, переменных, макросов и т.п., а в Android.mk указываются единицы компиляции - файлы .c , поэтому сколько будет в одном .c-файле разных include'ов ему (т.е. Android.mk) абсолютно безразлично
Вопрос: Ваш Lenovo аккумулятор был заражен вирусами

Всем привет! Когда я открываю Google Chrome, происходит перенаправление, и выскакивает окно:
Подтвердите действия на redirect.silotab.com:

Предупреждение
Ваш Lenovo аккумулятор был заражен вирусами!
Вы должны сканировать и удалять вирусы в настоящее время.
Если всплывающее окно закрыть, то начинается, якобы, сканирование, и пишет, что 18 вирусов, якобы, обнаружено. Потом написано:
Вы должны немедленно установить ремонтное батареи из Google Play и удаления вирусов или будет заблокирован ваш Lenovo телефон.
Если нажать "установить", то оно спрашивает, продолжить ли действие с помощью Google Play, и если нажать "Да", то выскакивает страница установки приложения "DU Battery Saver батареядоктор".

После открытия браузера второй раз, выскакивает другое окно:
Подтвердите действие на redirect.silotab.com:
Из-за недавнего доклада бэкдора в Lenovo телефона, Google выпустила обновление Bttery и требует для каждого телефона Android.
Если в этом случае нажать "ОК", то оно начинает много раз вибрировать, и снова пишет, что если это не сделать, то будет заблокировано.

При нажатии кнопки "Назад", оно опять перенаправляет на эту страницу. Если в адресной строке ввести другой адрес, то можно зайти на другой сайт, но потом оно может опять перенаправить на ту страницу. Только-что даже перенаправило из одной популярной игры, которая была установлена на моем смартфоне.

Конечно же, я не доверяю этому сообщению, и уверен, что это и есть вирус, так как не представляю, как аккумулятор может быть заражен вирусами. Как от него избавится? Заранее благодарен за ответ!

Добавлено через 44 минуты
Через настройки очистил данные Гугл Хрома. Посмотрим, будет ли вирус выскакивать.

Не по теме:

Думаю над тем, чтоб, может быть, пожаловатся на то приложение, которое постоянно рекламировал вирус.

Ответ: Спасибо за ответ! После того, как я очищал данные браузера, пока окно не появлялось. Так что, скорее всего, то была просто реклама. Хотя, конечно, обидно, что некоторые рекламируют свои приложения таким способом.
Вопрос: Есть ли сервис, который может проверить твою иконку на наличие АП?

Маленькая предыстория. Как-то я написал приложение и задумался про красивую иконку. Рисовать не умею, заказывать дорого. Нашел на одном сайте (вроде бы как с изображениями без авторских прав ). Чуть-чуть изменил и выложил это дело в google play. В результате получил выговор за не соблюдение АП(авторских прав).
Теперь к сути вопроса. Я опять нашел на этом сайте изображение и переделал. Но я не хочу наступать на одни и те же грабли. Может есть какой-то сервис, который может проверить твою иконку/изображение на наличие АП? Как в Youtube с музыкой.
Ответ: SteveJobs, я просто делал активити about на которую человек попадал нажав одноименную кнопку в главном меню. на этой активити была информация о разработчиках: отдельными строчками шли автор идеи, кодер, дизайнер и музыкальное оформление.
Вопрос: Retrofit + simpleXml может у кого есть примеры?

Retrofit + simpleXml может у кого есть примеры рабочего кода? Что-то с JSON чего хочешь. А с XML почти ничего нету в инете.
Ответ: 2 дня работы и я собрал по частям рабочий пример использования Retrofit2 + SimpleXmlConverterFactory + занесение результата в RecyclerView. И если я не ошибаюсь с использованием архитектурного паттерна MVP

В целом всё также как и с JSON, только модель будет другая.

Но пришлось изрядно попотеть. Теперь буду применять к своему проекту, где более сложная структура XML.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
public class MainActivity extends AppCompatActivity {
    private RecyclerView recyclerView;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        recyclerView = (RecyclerView) findViewById(R.id.foods_recycler_view);
        recyclerView.setLayoutManager(new LinearLayoutManager(this));
        initRestXML();
    }
 
    private void initRestXML() {
        ApiService service = ApiClient.getClient().create(ApiService.class);
        Call<FoodResponse> call = service.getFoods();
        call.enqueue(new Callback<FoodResponse>() {
            @Override
            public void onResponse(Call<FoodResponse> call, Response<FoodResponse> response) {
                ArrayList<Food> foodList = response.body().getFoodList();
                recyclerView.setAdapter(new FoodsAdapter(foodList, R.layout.food_item, getApplicationContext()));
            }
 
            @Override
            public void onFailure(Call<FoodResponse> call, Throwable t) {
                Log.d("TAG", "onFailure: ");
            }
        });
    }
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
@Root(name = "food")
public class Food {
    @Element(name = "name")
    String name;
 
    @Element(name = "price")
    String price;
 
    @Element(name = "description")
    String description;
 
    @Element(name = "calories")
    String calories;
 
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    public String getPrice() {
        return price;
    }
 
    public void setPrice(String price) {
        this.price = price;
    }
 
    public String getDescription() {
        return description;
    }
 
    public void setDescription(String description) {
        this.description = description;
    }
 
    public String getCalories() {
        return calories;
    }
 
    public void setCalories(String calories) {
        this.calories = calories;
    }
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class ApiClient {
    private static Retrofit retrofit = null;
 
    public static Retrofit getClient() {
        if (retrofit == null) {
            retrofit = new Retrofit.Builder()
                    .baseUrl(NetworkConstants.BASE_URL)
                    .addConverterFactory(SimpleXmlConverterFactory.create())
                    .build();
        }
        return retrofit;
    }
 
}
Java
1
2
3
4
public interface ApiService {
    @GET(NetworkConstants.GET_FOODS)
    Call<FoodResponse>getFoods();
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
public class FoodsAdapter extends RecyclerView.Adapter<FoodsAdapter.FoodViewHolder> {
    private ArrayList<Food> foodList;
    private int rowLayout;
    private Context context;
 
    public static class FoodViewHolder extends RecyclerView.ViewHolder {
        LinearLayout contactsLayout;
        TextView name, price, description, calories;
 
        public FoodViewHolder(View v) {
            super(v);
            contactsLayout = (LinearLayout) v.findViewById(R.id.foods_layout);
            name = (TextView) v.findViewById(R.id.food_name);
            price = (TextView) v.findViewById(R.id.food_price);
            description = (TextView) v.findViewById(R.id.food_description);
            calories = (TextView) v.findViewById(R.id.food_calories);
        }
    }
 
    public FoodsAdapter(ArrayList<Food> foods, int rowLayout, Context context) {
        this.foodList = foods;
        this.rowLayout = rowLayout;
        this.context = context;
    }
 
    @Override
    public FoodsAdapter.FoodViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(rowLayout, parent, false);
        return new FoodViewHolder(view);
    }
 
    @Override
    public void onBindViewHolder(FoodViewHolder holder, int position) {
        holder.name.setText(foodList.get(position).getName());
        holder.price.setText(foodList.get(position).getPrice());
        holder.description.setText(foodList.get(position).getDescription());
        holder.calories.setText(foodList.get(position).getCalories());
    }
 
    @Override
    public int getItemCount() {
        return foodList.size();
    }
}
Java
1
2
3
4
5
6
7
8
9
@Root(name = "breakfast_menu")
public class FoodResponse {
    @ElementList(inline = true)
    private ArrayList<Food> foodList;
 
    public ArrayList<Food> getFoodList() {
        return foodList;
    }
}
Java
1
2
3
4
public class NetworkConstants {
    public static final String BASE_URL = "http://www.w3schools.com/xml/";
    public static final String GET_FOODS = "simple.xml";
}
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.pavel.lesson8.MainActivity">
 
    <android.support.v7.widget.RecyclerView
        android:id="@+id/foods_recycler_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
 
    </android.support.v7.widget.RecyclerView>
</RelativeLayout>
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/foods_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_vertical"
    android:orientation="horizontal"
    android:padding="16dp">
 
    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:orientation="vertical">
 
        <TextView
            android:id="@+id/food_name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
 
 
        <TextView
            android:id="@+id/food_price"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
 
        <TextView
            android:id="@+id/food_description"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
 
        <TextView
            android:id="@+id/food_calories"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
 
    </LinearLayout>
</LinearLayout>
Добавлено через 12 часов 30 минут
Не забудьте про Permission INTERNET и

Java
1
2
3
4
5
6
7
  compile 'com.squareup.retrofit2:retrofit:2.1.0'
    compile 'com.android.support:recyclerview-v7:23.3.0'
    compile ('com.squareup.retrofit2:converter-simplexml:2.1.0'){
        exclude group: 'xpp3', module: 'xpp3'
        exclude group: 'stax', module: 'stax-api'
        exclude group: 'stax', module: 'stax'
    }
Вопрос: Что можно остановить или удалить в андроиде, чтобы освободить оперативку?

Подскажите что можно остановить или удалить в андроиде чтобы оперативку освободить. Последнее время телефон подтормаживает иза нехватки мощности.
Ответ: nikos1981, Link2SD, Storage Partitions, SD Maid, "Диски, Хранилища и SD карты", CCLeaner, Memory Booster Lite и некоторые другие программы из Play Market помогут тебе разобраться в бардаке в памяти смартфона. Для большинства операций необходим root. Дальше сам.
Вопрос: Есть у кого рабочий пример Анимационного скроллинга ListView?

Есть у кого рабочий пример Анимационного скроллинга ListView?

Есть у кого рабочий пример Анимационного скроллинга ListView?
Ответ: Нашел один рабочий пример https://github.com/cuub/sugared-list-animations-sample
Вопрос: Eclipse: есть ли возможность группировать проекты?

При открытии проектов с примерами (из SDK, книг, и др. источников) все они добавляются в каталог Workspace
И в окошке "Navigator" накопился приличный список, копаться в котором становится не удобно. Никакой сортировки нет. Есть ли какой-нибудь способ упорядочить все это безобразие? Например временно скрыть не используемые проекты (не удаляя их) ?
Ответ: можно сделать новый Workspace
Вопрос: В планшете был удален файловый менеджер, как вернуть?

Добрый день, мой 4-ёх летний ребёнок), каким-то образом удалили из android v4.0.4 планшета родной файловый мэнэджер, вот теперь ломаю голову как установить новое приложение, т.к. он почти новый, чистый. Интернет есть только на компе, других вариантов нет, чтобы подключиться к пк нужны рут права, их как я погуглил, без мэнэджера мне тоже не получить, надеюсь на вашу помощь.

Добавлено через 25 минут
... или возможно запустить файл .apk без файлового менеджера?
Ответ: всем спасибо, нашел WI-FI
Вопрос: Есть идея но не знаю с чего начать

Описываю идею и только не надо говорить, что такое уже есть и тд. Она возникла в моей голове (я никуда не смотрел не слушал) и все точка.
Пользователь смарфона открывает приложение и создает или добавляет новую коллекцию, коллекция содержит текстовые (пока только текстовые) СМС. Пользователь добавил в коллекцию (массив) энное количество смс и нужно чтобы в установленное время случайная СМСка из набора уходила адресату одному или нескольким.

Идея пришла после каждодневной отправки смс своей девушке (мб девушкам). СМС типа "Доброе утро любимая" "доброе утро кисуля" и тд. Так вот хочется, чтобы делала это программа и СМСки не повторялись, а чередовались в случайном порядке.

Буду признателен за помощь. С чего начать товарищи?
Ответ:
Сообщение от Rube
Фу как пошло Сама пусть пишет
САМИ