Страница 2 из 5

Re: Урок 26. Intent Filter - практика

Добавлено: 08 окт 2012, 23:35
Quver
у меня опять ошибка с R.java

создал time.xml
он прописался в R.java
а date.xml хоть тресни, не хочет создаваться в R.java

подскажите пожалуйста, как это поправить, что сделал не так ((

Re: Урок 26. Intent Filter - практика

Добавлено: 08 окт 2012, 23:39
rezak90
1) сделать clean (но догадываюсь что это уже сделали);
2) внимательно посмотреть на импорт либ, возможно импортнули "чужой" R.java

Re: Урок 26. Intent Filter - практика

Добавлено: 09 окт 2012, 00:13
Quver
да, Clean делал.

проблема не в импорте а в том что в R.java
нет переменной для date.xml :((
такая как для
public static final int main = 0x7f030000;

в одних случаях генерируются переменные в R.java в других нет.
могу удалить этот date.xml и заново сделеть.
В R.java могут прописаться строки а могут и нет.
Для меня это загадка (((

http://stackoverflow.com/questions/5824 ... not-update

тут у людей такая же проблема.
пробовал что пишут
но тоже не помогло ((

Re: Урок 26. Intent Filter - практика

Добавлено: 09 окт 2012, 00:31
rezak90
скорее всего ошибка в самом date.xml, если хотите то можете скинуть проект и посмотрим сбилдиться ли он у меня и тогда будет ясна проблема в IDE или же в коде.

Re: Урок 26. Intent Filter - практика

Добавлено: 09 окт 2012, 00:58
Quver
спасибо за отзывчивость.
удалил вообще весь проект и сделал заново.

может была ошибка при вставки с браузера в эклипс.
сейчас старался уже писать так, что бы все методы эклипс создавал сам
а я только копировал тело метода.

Но если опять будет эта беда. то выложу сюда проект.
так как утомил меня этот глюк изрядно (((

Re: Урок 26. Intent Filter - практика

Добавлено: 09 окт 2012, 01:04
rezak90
это всё Eclipse. Google не поленился создать свою ОСь но для разрабов поленились создать хотя бы нормальную IDE.

Re: Урок 26. Intent Filter - практика

Добавлено: 18 окт 2012, 12:03
Rasengan1987
sulo писал(а):Добавляю в IntentFileter Action, указываю name, выдает ошибку:
"[2012-09-17 15:07:15 - com.android.ide.eclipse.adt.internal.project.AndroidManifestHelper] Parser exception for E:\workspace\ucheb3\AndroidManifest.xml: Content is not allowed in prolog.
[2012-09-17 15:07:15 - ucheb3] Error in an XML file: aborting build.
"
подскажите в чем проблема.
sulo писал(а):
rezak90 писал(а):XML Manifesta проверьте, если даже сами руками ничего не меняли то возможно Eclpipse накосячил.
Спасибо, со 2ого раза нашел косяк..
Когда прописывал в IntentFilter>Action>name
то name писался где угодно в манифесте
Была та же самая проблема. При вводе name в AndroidManifest пытался вставить через комбинацию CTRL+V. В итоге в поле name не вставлялось значение, а помещалось в самое начало XML Manifesta. При нажатии правой кнопкой мыши и выборе вставить, без проблем скопированное значение вставляется.

Re: Урок 26. Intent Filter - практика

Добавлено: 29 окт 2012, 17:57
vortex
Блин, у меня такая же ботва.
[2012-10-29 17:52:41 - P0261_IntentFilter] Parser exception for /P0261_IntentFilter/AndroidManifest.xml: Content is not allowed in prolog.

Пялюсь в манифест уже минут 15 :( Что там не так-то? Тоже с Ctrl + V не вставлялось, но я вовремя заметил и райт кликом вставлял

Re: Урок 26. Intent Filter - практика

Добавлено: 29 окт 2012, 18:10
vortex
Ошибка: time cannot be resolved or is not a field

Если я правильно понимаю, то у меня не создалось в R.Java соответствие time.xml

Код: Выделить всё

/* AUTO-GENERATED FILE.  DO NOT MODIFY.
 *
 * This class was automatically generated by the
 * aapt tool from the resource data it found.  It
 * should not be modified by hand.
 */

package com.example.p0261_intentfilter;

public final class R {
    public static final class attr {
    }
    public static final class drawable {
        public static final int ic_action_search=0x7f020000;
        public static final int ic_launcher=0x7f020001;
    }
    public static final class id {
        public static final int btnDate=0x7f070001;
        public static final int btnTime=0x7f070000;
        public static final int menu_settings=0x7f070002;
    }
    public static final class layout {
        public static final int main=0x7f030000;
    }
    public static final class menu {
        public static final int main=0x7f060000;
    }
    public static final class string {
        public static final int app_name=0x7f040000;
        public static final int hello_world=0x7f040001;
        public static final int menu_settings=0x7f040002;
        public static final int title_activity_main=0x7f040003;
    }
    public static final class style {
        public static final int AppTheme=0x7f050000;
    }
}
Удалял time.xml и заного создавал, не помогает :(

Re: Урок 26. Intent Filter - практика

Добавлено: 30 окт 2012, 13:33
damager82
vortex писал(а):Ошибка: time cannot be resolved or is not a field
Если я правильно понимаю, то у меня не создалось в R.Java соответствие time.xml
Удалял time.xml и заного создавал, не помогает :(
В меню Project - Clean попробуйте.

R.java может не генериться, если есть ошибки. Попробуйте исправить все или закаментить то, что не исправляется из-за R.java и потом все сохранить.

Если ничего не помогает, закрывайте все окна в Eclipse (CTRL+SHIFT+W), удалите проект и создайте заново.

Re: Урок 26. Intent Filter - практика

Добавлено: 16 ноя 2012, 10:40
Vic
sulo писал(а):Добавляю в IntentFileter Action, указываю name, выдает ошибку:
"[2012-09-17 15:07:15 - com.android.ide.eclipse.adt.internal.project.AndroidManifestHelper] Parser exception for E:\workspace\ucheb3\AndroidManifest.xml: Content is not allowed in prolog.
[2012-09-17 15:07:15 - ucheb3] Error in an XML file: aborting build.
"
подскажите в чем проблема.
У меня такое было, когда пытался клавишами Ctrl+V (Shift+Insert) втавить в поля редактирования манифеста текст. Он вместо поля вставляется в сам манифест ( вкладочка xml), долго бился, пока понял из-за чего. Там его надо удалить и жизнь сразу становится легче.

Re: Урок 26. Intent Filter - практика

Добавлено: 18 ноя 2012, 07:02
chuikoff
Оказывается нельзя создавать класс Date.java, долго тупил чего ему не нравится.)

Re: Урок 26. Intent Filter - практика

Добавлено: 14 дек 2012, 12:35
eternal_ego
Наткнулся на забавную фичу редактора манифеста: сначала промазал строчкой и задал label для интента вместо активити. Стёр, записал в нужную строчку. Запустил - и получил пустую строчку при выборе действий. Заглянул в манифест в текстовом виде - оказалось, что при очистке label в визуальном редакторе он не убрал label у интента, а присвоил ему "". И, видимо, при выборе, какую строчку показать юзеру, приоритет оказывается у интента, а не у активити :)

Re: Урок 26. Intent Filter - практика

Добавлено: 14 дек 2012, 19:57
rezak90
eternal_ego писал(а):Наткнулся на забавную фичу редактора манифеста: сначала промазал строчкой и задал label для интента вместо активити. Стёр, записал в нужную строчку. Запустил - и получил пустую строчку при выборе действий. Заглянул в манифест в текстовом виде - оказалось, что при очистке label в визуальном редакторе он не убрал label у интента, а присвоил ему "". И, видимо, при выборе, какую строчку показать юзеру, приоритет оказывается у интента, а не у активити :)
это всё приколы эклипса

Re: Урок 26. Intent Filter - практика

Добавлено: 20 фев 2013, 14:38
frostegater
А что делать если не найден подходящий IntentFilter? Если не находит, то приложение падает. Как избежать?

Re: Урок 26. Intent Filter - практика

Добавлено: 14 окт 2013, 13:12
Isaev
frostegater писал(а):А что делать если не найден подходящий IntentFilter? Если не находит, то приложение падает. Как избежать?
так наверное:

Код: Выделить всё

case R.id.btnDate:
        intent = new Intent("ru.example.intent.action.showdate1");
        try {
          startActivity(intent);
        } catch (Exception e) {
          Toast.makeText(this,"Suitable intent isn't found!",Toast.LENGTH_SHORT).show();
        }
        break;
или использовать не startActivity а startActivityForResult и проверять resultCode

Re: Урок 26. Intent Filter - практика

Добавлено: 17 окт 2013, 23:40
damager82
frostegater писал(а):А что делать если не найден подходящий IntentFilter? Если не находит, то приложение падает. Как избежать?
В PackageManager есть метод queryIntentActivities, возможно он вам подойдет.

Код метода проверки будет примерно такой:
[syntax=java]public static boolean isIntentAvailable(Context context, String action) {
final PackageManager packageManager = context.getPackageManager();
final Intent intent = new Intent(action);
List<ResolveInfo> list =
packageManager.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
return list.size() > 0;
}
[/syntax]

Re: Урок 26. Intent Filter - практика

Добавлено: 25 июн 2014, 22:29
drak
ситуация следующая...программа работает но при выборе basic Date или Date extended время получается одинакового формата
25.06.2014 в манифесте всьло правильно проверял 3 раза и в AndroidManifest.xml тоже код норм.

Re: Урок 26. Intent Filter - практика

Добавлено: 16 июл 2014, 20:18
Don77
Насколько я понял, все манипуляции с графическим интерфейсом IntentFilter сохраняются в файле манифеста -
<intent-filter></intent-filter>.Собственно, кроме action и category, есть еще какие-то важные элементы, которым стоит уделить внимание?

Re: Урок 26. Intent Filter - практика

Добавлено: 29 июл 2014, 21:03
oduvanio
Всем привет!!! Такой вопрос: сделал 26 урок, но у меня что-то не работало и я удалил проект и создал заново, но теперь при нажатии кнопок showtime и showdate показывается несколько интент фильтров, а как мне удалить те фильтры, которые должны были удалится с проектом? Спасибо за ответ.