Программируем на смартфоне

-

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



Репутация: 0

67 ответов

1758 # 1671 | на сайте с 2018 года | последнее посещение: 03:00 1 янв 1970

посмотрел генерируемый код, можно использовать переменные из модулей в блоках кода, просто генератор добавляет к имени один символ,например на графической схеме имя переменной "myValue", а в коде оно "_myValue".
Это значит что возможности программы безграничны, но,тем не менее, я думаю еще доделают и дополнят графические блоки в будущем.


Репутация: 510

2403 ответов

1758 # 1672 | на сайте с 2006 года | последнее посещение: 03:00 1 янв 1970

Цитата: Zaterehniy
 Приветствую господа. Недавно поставил Sketchware , интереса ради . Занятная вещь . Накатал простенький клиент для сайта за полчаса.Дополнительный скрин #1 (308.89 Kb)


Всем привет). Я пришел к выводу, что писать нужно сразу на нативе, и не вестись на якобы ускоренную скорость разработки и низкий порог вхождения. Как оказалось, когда освоишься скорость разработки примерно та-же, а возможности неограничены, в отличие от всяких DS итп.


Репутация: 661

2378 ответов

1758 # 1673 | на сайте с 2006 года | последнее посещение: 03:00 1 янв 1970

dimy44,
это да. С более-мение крупными проектами всё так. А если мелочь накидать то и что то подобное вполне может сойти. Или же использовать в целях прототипирования. Да на той же ява я бы не стал работать без пк, чисто на смартфоне. Только если уж совсем прижмёт. Ну или использовать в связке пк основа - смартфон для мелочей, тестирования.


Репутация: 510

2403 ответов

1758 # 1674 | на сайте с 2006 года | последнее посещение: 03:00 1 янв 1970

Жень, sketchware я юзал не помню, вроде полгода назад, я вроде даже сюда писал об этом. Сложилось впечатление, что это конструктор для школьников. Да и на ниже sdk 5 она не пойдет.
пс. А я так и пишу исключительно на смарте, щас в аиде. Та я и никуда не тороплюсь, для удовольствия пишу)


Репутация: 661

2378 ответов

1758 # 1675 | на сайте с 2006 года | последнее посещение: 03:00 1 янв 1970

dimy44
Ну конструктор простой конечно. Мне уже лень в аиде на смарте работать. Да и комп под рукой всегда. Нужды прям такой нет. А в скетч так , ради удовольствия.


Репутация: 510

2403 ответов

1758 # 1676 | на сайте с 2006 года | последнее посещение: 03:00 1 янв 1970

Не могу найти пример кода, чтоб через намерение открыть Контакты, НО ТОЛЬКО email адреса, ну а дальше в OnActivityResult обработать данные как полагается. У Дэйва в дс есть такое, а как он это сделал - не глянешь. Щас у меня показывает все контакты что есть, независимо от наличия там email адреса, что вводит в заблуждение пользователя. Фигня вобщем, надо переделать. Скажу честно - разбираться с бд Contacts.Contract я пока не решаюсь - вижу, что уйдет много времени, пока лучше готовый пример заюзать


Репутация: 661

2378 ответов

1758 # 1677 | на сайте с 2006 года | последнее посещение: 03:00 1 янв 1970

Cсылка можно тут почитать. Может что-то полезное найдётся.


Репутация: 510

2403 ответов

1758 # 1678 | на сайте с 2006 года | последнее посещение: 03:00 1 янв 1970

Решил я не юзать намерение, а вывести информацию в своем списке. Вот метод, возвращающий Map<String, ArrayList<String>> вида {name=[email1, ...], ...}

	
private HashMap<String, ArrayList<String>> emailsMap = new HashMap<String, ArrayList<String>>();
public HashMap<String, ArrayList<String>> getNameEmailDetails() {
ContentResolver cr = getContentResolver();
Cursor cur = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
if (cur.getCount() > 0) {
while (cur.moveToNext()) {
ArrayList<String> item = new ArrayList<String>();
String id = cur.getString(cur.getColumnIndex(ContactsContract.Contacts._ID));
Cursor cur1 = cr.query(ContactsContract.CommonDataKinds.Email.CONTENT_URI, null, ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = ?", new String[]{id}, null);
String name = null;
while (cur1.moveToNext()) {
name = cur1.getString(
cur1.getColumnIndex(
ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
String email = cur1.getString(
cur1.getColumnIndex(
ContactsContract.CommonDataKinds.Email.DATA));
if (email != null) {
item.add(email);
}
} cur1.close();
if (item.size() > 0) {
emailsMap.put(name, item);
}
}
cur.close();
}
return emailsMap;
}


Репутация: 0

67 ответов

1758 # 1679 | на сайте с 2018 года | последнее посещение: 03:00 1 янв 1970

как то жёстко, 30 строк кода всего лишь для запроса email адресов контактов)))


Репутация: 661

2378 ответов

1758 # 1680 | на сайте с 2006 года | последнее посещение: 03:00 1 янв 1970

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



Напомнить пароль

Яндекс.Метрика