Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
just_moment
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 38
#1

Как узнать, какой именно из установленных браузеров выбирает пользователь - Программирование Android

11.12.2013, 12:53. Просмотров 531. Ответов 2
Метки нет (Все метки)

Здравствуйте. Подскажите, пожалуйста, как программно узнать, какой браузер выбирает пользователь. Например, один из тех, что приведены на изображении. Спасибо.
Миниатюры
Как узнать, какой именно из установленных браузеров выбирает пользователь  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2013, 12:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как узнать, какой именно из установленных браузеров выбирает пользователь (Программирование Android):

Как узнать что выбрал пользователь в AutoCompleteTextView - Программирование Android
Доброго времени суток. Как узнать какую подсказку выбрал пользователь из AutoCompleteTextView ? И как сделать чтоб например если выбрал...

Как узнать когда пользователь перестает касаться экрана? - Программирование Android
Ребята, посоветуйте как узнать когда пользователь перестает касаться экрана?Есть приложение при нажатии на кнопку запускается таймер, а...

Как узнать курс валют страны в которой находиться пользователь в android - Программирование Android
Здравствуйте. Есть Android приложение. Подскажите пожалуйста как получать текущий курс валют нацбанка в зависимости от места положения(то...

Игра "кто хочет стать миллионером?". Как узнать, какой RadioButton выбирает пользователь - C#
Делая это приложение столкнулся м проблемой есть 3 списка(вопросы, ответы и верные ответы) вывод ответов и вопросов я сделал, но у меня...

Как отследить какой именно ComboBox выбрал пользователь? - C#
В лабораторной работе есть 7 comboBox-ов, пользователь может выбирать значение начиная с любого, как отследить какой именно comboBox выбрал...

Как узнать на какой именно машине в сети происходит блокировка юзера AD - Администрирование Windows
Добрый день. Столкнулся со следующей проблемой. В нашем домене куча серверов (около сотни), и я при работе на некоторых из них в...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
lavan
52 / 52 / 1
Регистрация: 21.03.2009
Сообщений: 371
13.12.2013, 15:30 #2
Есть такой класс ContentObserver http://developer.android.com/intl/ru...tObserver.html
как то я такое делал,возможно вам подойдёт
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
public class CurrentBrowser {
    
    private Context                      context;
    private final String                 chrome = "com.android.chrome";
    private final String                 browser = "com.android.browser";
    //private final String firefox = "org.mozilla.firefox";
    private String                        old_url = "*/-";
    private MObserver                     mob;
    private TreeMap<Integer,String> tm;
    
    public CurrentBrowser(Context context){
        this.context = context;
        tm = new TreeMap<Integer,String>();
        mob = new MObserver();
    }
    
    public String getLastUrl(){
        String url = "";
        
        return url;
    }
    
    private String getCurrentBrowser(){
        String br = "";
        ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
        List<RunningAppProcessInfo> rap = am.getRunningAppProcesses();
        //ArrayList<String> al = new ArrayList<String>();
        for(int i = 0; i < rap.size(); i++)
        {
            if(rap.get(i).processName.equalsIgnoreCase(browser) || 
                    rap.get(i).processName.equalsIgnoreCase(chrome))
                //al.add(rap.get(i).processName+" importance="+rap.get(i).lru);
                tm.put(rap.get(i).lru, rap.get(i).processName);
        }
        br = tm.get(0);
        return br;
    }
    
    public void registerContentObserver(){
        Uri uri = getUri(getCurrentBrowser());
        if(uri != null)
        {
            context.getContentResolver().registerContentObserver(uri, false/*?*/, mob);
        }
        else
        {
            //?????????
        }
    }
    
    public void unregisterContentObserver(){
        context.getContentResolver().unregisterContentObserver(mob);
    }
    
    private Uri getUri(String br){
        Uri uri = null;
        if(br.length() > 0)
        {
            if(br.equalsIgnoreCase(browser))
                uri = Browser.BOOKMARKS_URI;
            else
                uri = Uri.parse("content://com.android.chrome.browser/bookmarks");  
        }
        return uri;
    }
    
    public String getUrl(){
        if(old_url.equalsIgnoreCase("*/-"))
        {
            Uri uri = getUri(getCurrentBrowser());
            if(uri != null)
            {
                Cursor cr = context.getContentResolver().query(uri, Browser.HISTORY_PROJECTION, null, null, null);
                if(cr.moveToLast())
                {
                    old_url = cr.getString(Browser.HISTORY_PROJECTION_URL_INDEX);
                }
            }
            else
            {
                //?????????????
            }
        }
        return old_url;
    }
    
    class MObserver extends ContentObserver{
 
        public MObserver() {
            super(null);
            // TODO Auto-generated constructor stub
        }
        
        @Override
        public void onChange(boolean selfChange) {
            // TODO Auto-generated method stub
            Uri uri = getUri(getCurrentBrowser());
            if(uri != null)
            {
                Cursor cr = context.getContentResolver().query(uri, Browser.HISTORY_PROJECTION, null, null, null);
                if(cr.moveToLast())
                {
                    String str = cr.getString(Browser.HISTORY_PROJECTION_URL_INDEX);
                    if(!old_url.equalsIgnoreCase(str))
                        old_url = str;
                }
                else
                {
                    
                }
                
            }
            else
            {
                
            }
            super.onChange(selfChange);
        }
        
        @Override
        public boolean deliverSelfNotifications() {
            // TODO Auto-generated method stub
            return false;//super.deliverSelfNotifications();
        }
        
    }
}
just_moment
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 38
14.12.2013, 20:24  [ТС] #3
Спасибо Вам большое, очень помогло.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.12.2013, 20:24
Привет! Вот еще темы с ответами:

Как узнать с какой страны пришел пользователь - PHP
Вот есть у меня сайт site.ru. И есть у меня две версии en/ и ru/ Так вот как узнать с какой страны пользователь? Ну как я...

QTcpSocket узнать какой именно клиент отключился - C++ Qt
У меня есть 2 программы на клиент-серверной связке Мне важно на сервера знать IP клиентов и их состояния(подключены/отключены) С...

пользователь выбирает в селекте например врача Иванова в другом селекте время например 9:00.Как сделать так чтобы когда пользователь в следующий ра - PHP БД
Есть селекты (один-время приёма, другой- имя врача ) пользователь выбирает в селекте например врача Иванова в другом селекте время...

Есть ли какой-то способ узнать, что с консоли введен именно текст, а не цифры - C#
Добрий день! Есть ли какой-то способ узнать что с консоли введен именно текст, а не цифри не используя посимвольное сравнение? Тоесть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru