Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
ladzio
0 / 0 / 0
Регистрация: 20.08.2016
Сообщений: 5
#1

Прочитать meta-data при API level 9 - Программирование Android

23.08.2016, 23:34. Просмотров 259. Ответов 8
Метки нет (Все метки)

Пробовал читать через Bundle.getString, сначала вылетала ошибка в коде, потом как-то прошло без ошибки, но когда открываю apk на телефоне c Android 2.3 в значении параметра meta-data записывает null.
Как можно решить проблему?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.08.2016, 23:34
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Прочитать meta-data при API level 9 (Программирование Android):

API level 19 downgrade to 17
Приветствую. Решил опустить лвл апи до 17. Выдает ошибку В поиске...

Requires API level XX (current min is XX)
Всем привет! После переноса кода из класса Fragment в класс AppCompatActivity,...

Как изменить level api приложения
Всем привет! Создал apk, установил, но приложение выкидывает. Поискал в инете,...

Реализация меню требует API level 9, а actionbar-11. Что выбрать?
Реализация меню требует API level 9, а actionbar - 11. Разрываюсь на части...

Открыть файл из папки /data/data/com.myapp/files/appdata/
я закачиваю файлы в папку приложения и файлы попадают сюда:...

Просмотреть файл моего приложения /data/data/com.example.my.app/files/samplefile.txt
Добрый день! Не ожидал, что все так сложно окажется. Моя программа создает...

8
ILNAR_93
Android
236 / 236 / 49
Регистрация: 19.01.2013
Сообщений: 1,855
Записей в блоге: 3
24.08.2016, 09:00 #2
Цитата Сообщение от ladzio Посмотреть сообщение
Android 2.3
Зачем?
0
ladzio
0 / 0 / 0
Регистрация: 20.08.2016
Сообщений: 5
24.08.2016, 12:22  [ТС] #3
Нужен максимальный охват аудитории.
0
Pablito
2652 / 2134 / 726
Регистрация: 12.05.2014
Сообщений: 7,450
Завершенные тесты: 1
24.08.2016, 12:29 #4
https://developer.android.com/about/dashboards/index.html?hl=ru
1.7% бичей с 2.3 версией - о дааа, они полюбому будут благодарны за то, что о них не забыли
0
vxg
Модератор
3231 / 2034 / 319
Регистрация: 13.01.2012
Сообщений: 7,885
24.08.2016, 13:24 #5
Паблито, поверхностно подходим. может приложение ориентировано преимущественно на эти самые 1.7% и потеря их будет равносильна потере 99% скачек
0
ladzio
0 / 0 / 0
Регистрация: 20.08.2016
Сообщений: 5
24.08.2016, 19:07  [ТС] #6
В общем сделал на SDK 21 и протестил на Android 5, опять значение полученное из метадаты оказалось пустым.
Вот код
Java
1
2
                int myAPIKey = bundle1.getInt("clickid");
                String query = String.valueOf(myAPIKey);
В Манифесте:
XML
1
        <meta-data android:name="clickid" android:value="1234567890" />
Подскажите что не правильно.
0
Pablito
2652 / 2134 / 726
Регистрация: 12.05.2014
Сообщений: 7,450
Завершенные тесты: 1
24.08.2016, 19:35 #7
весь код бы видеть, где кладется, где достается
0
ladzio
0 / 0 / 0
Регистрация: 20.08.2016
Сообщений: 5
24.08.2016, 19:51  [ТС] #8
Манифест
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
38
39
40
41
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.myapp.test1">
 
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
 
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
 
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name="com.startapp.android.publish.list3d.List3DActivity"
            android:theme="@android:style/Theme" />
 
        <activity android:name="com.startapp.android.publish.OverlayActivity"
            android:theme="@android:style/Theme.Translucent"
            android:configChanges="orientation|keyboardHidden|screenSize" />
 
        <activity android:name="com.startapp.android.publish.FullScreenActivity"
            android:theme="@android:style/Theme"
            android:configChanges="orientation|keyboardHidden|screenSize" />
 
        <meta-data android:name="clickid" android:value="1234567890" />
 
    </application>
 
</manifest>
Вот трид который получает и передает значение
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
        Runnable UrlThread = new Runnable()
        {
            public void run()
            {
                Bundle bundle1 = new Bundle();
 
                int myAPIKey = bundle1.getInt("clickid");
                String query = String.valueOf(myAPIKey);
 
                UrlZapros.GetTemper("http://domen.ru/rc/rc.php?rc="+getimsi(getApplicationContext())+"&clickid="+query);
            };
        };
        Thread uthread = new Thread(UrlThread);
        uthread.start();
imsi передает без проблем, а в query 0 или null
0
ILNAR_93
Android
236 / 236 / 49
Регистрация: 19.01.2013
Сообщений: 1,855
Записей в блоге: 3
24.08.2016, 20:49 #9
Лучший ответ Сообщение было отмечено ladzio как решение

Решение

Вот как я делаю:

манифест
XML
1
2
3
4
5
6
7
8
9
10
<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/NoActionBarIlnar"
        android:name=".MyApplication"
        >
        <meta-data
            android:name="place"
            android:value="блабла"/>
Java
1
2
ApplicationInfo ai = ctx.getPackageManager().getApplicationInfo(ctx.getPackageName(), PackageManager.GET_META_DATA);
Object value = (Object)ai.metaData.get("place"); // value = "блабла"
ctx = Context

p.s. на счет Android 2.3 не знаю (работает или нет).
1
24.08.2016, 20:49
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.08.2016, 20:49
Привет! Вот еще темы с решениями:

Доступ к файлам в data/data/appname/databases
Всем привет. Вопрос в следующем Программа использует функцию отправки файла...

Доступ к файлам data/data на нерутованом устройстве
я пытаюсь прочитать файл db который лежит в data/data/com.app и не могу выдает...

Data Base ошибка при записи
Запись в БД: ContentValues HS = new ContentValues(); ...

Внутреннее хранение данных data/data
Здравствуйте. Пробую писать приложения под Андроид на С++, используя NDK. Для...


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

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

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