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

Установка ресурсов от строки - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Скачивание приложения - в какой раздел? http://www.cyberforum.ru/android-dev/thread1632361.html
где не читаю - везде упоминают об огромном рынке в гугл андроид и что для бесплатных приложений скачивания идут на десятки тысяч. сделал приложение - инетрактивную книгу. Разместил в разделы игры - казуальные игры. за вечер - ни одного скачивания. переместил в раздел книги и справочники. хм. а в чем проблема там может быть? или может не те разделы?
Android Изменить формат даты Добра друзья. Не могу разобраться как поменять показ месяца сокращено. Что бы только три буквы месяца. Ссылка на github: https://github.com/KosyanMedia/Aviasales-Android-SDK/wiki/%D0%AD%D0%BA%D1%80%D0%B0%D0%BD%D1%8B-%D0%B2-%D1%81%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%B5-%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE-%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B0 http://www.cyberforum.ru/android-dev/thread1632359.html
Переход к Activity по выбранному пункту из спиннера Android
Есть два спиннера со списками, нужно что б каждый элемент различных спиннеров пересылал в свои зарезервированные классы package com.example.user.algebra; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemSelectedListener; import...
Android Ошибка при создании проекта "invalid LOC header (bad signature)"
Здравствуйте! При создании нового проекта в Android Studio возникает ошибка Gradle 'MyApplication16' project refresh failed Error:Cause: invalid LOC header (bad signature) Что это и что с этим делать?
Android Можно ли адаптировать dimensions, исходя из фактического разрешения? http://www.cyberforum.ru/android-dev/thread1632291.html
у меня сейчас папки values-hdpi values-xhdpi и так далее. а в них файлы с установленными размерами dimension.xml но иногда попадаются телефоны в которых вот эта обобщенная плотность не определяется вообще можно ли как то эти папки привязать не к такой плотности а к фактическому разрешению скажем - больше 800 пикселей больше 1200 пикселей и так далее?
Android Правильный URL для Автокомплита Я делаю запрос через HttpURLConnection по ссылке https://maps.googleapis.com/maps/api/place/autocomplete/json?input=tokx&types=geocode&sensor=false&key=AIzaSyArj0c_mzPfwsqoSA0U-TSEvMHx4BdQKSw, чтобы получить информацию о местах при вводе пользователем. А в итоге мне возвращается ответ с ошибкой {"error_message" : "This API project is not authorized to use this API.Please ensure that this API is... подробнее

Показать сообщение отдельно
Molyakos
0 / 0 / 0
Регистрация: 08.09.2015
Сообщений: 31

Установка ресурсов от строки - Android

06.01.2016, 11:12. Просмотров 182. Ответов 2
Метки (Все метки)

Есть у меня главное активити:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class MainActivity extends AppCompatActivity {
 
    private static ImageView actionBarWifi;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
 
        StatusBarControl sbc = new StatusBarControl();
        sbc.updateWifiDrawable(this);
        actionBarWifi = (ImageView)findViewById(R.id.wifiIcon);
 
    }
 
    public static void setWifiDrawable(Drawable drawable) {
        actionBarWifi.setVisibility(View.VISIBLE);
        actionBarWifi.setImageDrawable(drawable);
    }
}
Также есть второе активити, которое работает с установкой ресурсов:
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
public class StatusBarControl extends BroadcastReceiver {
    private static int wifiStrength;
    private ConnectivityManager connectivityManager;
    private WifiManager wifiManager;
 
    private void initManagers(Context context) {
        if (wifiManager == null) {
            wifiManager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE);
        }
        if (connectivityManager == null) {
            connectivityManager = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
        }
    }
 
    void updateWifiDrawable(Context context) {
        boolean flag = true;
        Object obj = null;
        initManagers(context);
        NetworkInfo networkinfo = connectivityManager.getActiveNetworkInfo();
        if (networkinfo == null || !networkinfo.isConnected()) {
            flag = false;
        }
        if (flag) {
            WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
            int rssi = wifiManager.getConnectionInfo().getRssi();
            int wifiStrength = WifiManager.calculateSignalLevel(rssi, 5);
 
            obj = (new StringBuilder()).append("ic_signal_wifi_").append(wifiStrength).append("_bar_white_24dp").toString();
            obj = context.getResources().getDrawable(getResId(((String) (obj)), Drawable.class));
        }
        MainActivity.setWifiDrawable(((android.graphics.drawable.Drawable) (obj)));
    }
 
    public static int getResId(String resName, Class<?> c) {
 
        try {
            Field idField = c.getDeclaredField(resName);
            return idField.getInt(idField);
        } catch (Exception e) {
            e.printStackTrace();
            return -1;
        }
    }
 
    public void onReceive(Context context, Intent intent) {
        initManagers(context);
                Iterator iterator = wifiManager.getScanResults().iterator();
                do {
                    if (!iterator.hasNext()) {
                        break;
                    }
                    ScanResult scanresult = (ScanResult)iterator.next();
                        int i = WifiManager.calculateSignalLevel(wifiManager.getConnectionInfo().getRssi(), scanresult.level);
                        if (scanresult.level > 0) {
                            i = (i * 100) / scanresult.level;
                        } else {
                            i = 100;
                        } if (i >= 100) {
                            wifiStrength = 4;
                        } else if (i >= 80) {
                            wifiStrength = 3;
                        } else if (i >= 60) {
                            wifiStrength = 2;
                        } else if (i >= 40) {
                            wifiStrength = 1;
                        } else if (i >= 20) {
                            wifiStrength = 0;
                        }
                } while (true);
            updateWifiDrawable(context);
        }
    }
Но вылезает ошибка NoSuchFieldException, а в последствии и NotFoundException, хотя файл существует, лежит в папке Drawable. Логи:
Кликните здесь для просмотра всего текста

01-06 14:01:41.916 3709-3709/? W/System.err: java.lang.NoSuchFieldException: ic_signal_wifi_4_bar_white_24dp
01-06 14:01:41.916 3709-3709/? W/System.err: at java.lang.Class.getDeclaredField(Class.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at com.example.sergey.mywifi.StatusBarControl.getResId(StatusBarControl.java:51)
01-06 14:01:41.916 3709-3709/? W/System.err: at com.example.sergey.mywifi.StatusBarControl.updateWifiDrawable(StatusBarControl.java:43)
01-06 14:01:41.916 3709-3709/? W/System.err: at com.example.sergey.mywifi.MainActivity.onCreate(MainActivity.java:18)
01-06 14:01:41.916 3709-3709/? W/System.err: at android.app.Activity.performCreate(Activity.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at android.app.ActivityThread.access$600(ActivityThread.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at android.os.Handler.dispatchMessage(Handler.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at android.os.Looper.loop(Looper.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at android.app.ActivityThread.main(ActivityThread.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at java.lang.reflect.Method.invokeNative(Native Method)
01-06 14:01:41.916 3709-3709/? W/System.err: at java.lang.reflect.Method.invoke(Method.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java)
01-06 14:01:41.916 3709-3709/? W/System.err: at dalvik.system.NativeStart.main(Native Method)
01-06 14:01:41.916 3709-3709/? W/ResourceType: No known package when getting value for resource number 0xffffffff
01-06 14:01:41.916 3709-3709/? W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x4104bba0)
01-06 14:01:41.916 710-787/? E/EmbeddedLogger: App crashed! Process: com.example.sergey.mywifi
01-06 14:01:41.916 710-787/? E/EmbeddedLogger: App crashed! Package: com.example.sergey.mywifi v1 (1.0)
01-06 14:01:41.916 710-787/? E/EmbeddedLogger: Application Label: mywifi


01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: FATAL EXCEPTION: main
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.sergey.mywifi/com.example.sergey.mywifi.MainActivity}: android.content.res.Resources$NotFoundException: Resource ID #0xffffffff
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.ActivityThread.access$600(ActivityThread.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.os.Looper.loop(Looper.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at java.lang.reflect.Method.invoke(Method.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at dalvik.system.NativeStart.main(Native Method)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: Caused by: android.content.res.Resources$NotFoundException: Resource ID #0xffffffff
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.content.res.Resources.getValue(Resources.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.content.res.Resources.getDrawable(Resources.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at com.example.sergey.mywifi.StatusBarControl.updateWifiDrawable(StatusBarControl.java:43)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at com.example.sergey.mywifi.MainActivity.onCreate(MainActivity.java:18)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.Activity.performCreate(Activity.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java)
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java)*
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java)*
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.ActivityThread.access$600(ActivityThread.java)*
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java)*
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java)*
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.os.Looper.loop(Looper.java)*
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java)*
01-06 14:01:41.916 3709-3709/? E/AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method)*

Вроде все по инструкции. Укажите, пожалуйста, на ошибки. Что не так?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru