Вверх ↑
Этот топик читают: Гость
Ответов: 3
Рейтинг: 0
#1546: 2017-10-30 20:31:24 ЛС | профиль | цитата
GreM, спасибо.
карма: 0

0
Ответов: 1328
Рейтинг: 69
#1547: 2017-11-02 17:15:29 ЛС | профиль | цитата
GreM, выложи куда нибудь свои компоненты, если не трудно
карма: 2

0
Ответов: 163
Рейтинг: 33
#1548: 2017-11-03 09:02:23 ЛС | профиль | цитата
Мои элементы.
Доступ к облаку SpiderOak не особо стабилен, если не открывается с первого раза - пробуйте еще.
Все выложено в одной папке здесь.

Audio Control. Регулировка громкости, режимы звонка, управление спикерфоном, информация о наличии/отсутствии подключенной проводной и bluetooth гарнитуры.
AccelerometerSensor. От стандартного элемента пакета отличается возможностью задать частоту опроса сенсора и узнать доступность сенсора на конкретном устройстве.
ProximitySensor1. Отличия те же что и у предыдущего элемента.
ComponentControl. Запрещение/разрешение одного из компонентов, указанных в манифесте. Можно отключать/включать статические BroadcastReceiver`ы.
File2project. Позволяет добавить произвольный файл в проект.
Function. Все подключенные к выходу элементы будут вынесены в отдельный метод в java-коде. Рекомендую ставить после объединяющего хаба в случае большого количества компонентов после него, а так же в случае большого количества объединяемых линий схемы. Улучшает читаемость java-кода на выходе и уменьшает его размер за счет удаления дубликатов кода. Другое назначение - вызов методов текущего класса из элементов IC,Method и File2project.
Method. Авторство принадлежит sаmakacd, я лишь немного доработал. Идеальная замена IC, когда надо вставить в проект лишь несколько строчек кода.
Вообще можно придумать ему разные способы применения.
Например, нам нужен обработчик кнопки "назад", но его нет в стандартном элементе Activity. Берем
Method, в св-ве MethodName пишем onBackPressed, открываем св-во MethodCode и пишем:
@Override
public void onBackPressed() {
super.onBackPressed();
...
//ваш код
...
//если нужен выход в схему, то:
onBackPressed_event();
}
Или допустим нужно какщй-то метод вызвать многократно в разных частях схемы. Можно конечно тянуть к нему связи из этих частей схемы, а можно сделать проще (хотя и менее информативно). Надо полностью оформить этот метод 1 раз (заполнив все необходимые св-ва), а потом сделать копию, в которой очистить св-во MethodCode и вот эту копию уже растиражировать по проекту, вставляя в нужные части схемы.
Loger. Элемент для вывода информации в системный лог.
IntLog. Еще один способ логирования, который облегчит вам поиск багов. На этот раз ведется "внутренний" лог. Внутри реализован в виде повторно используемого массива StringBuilder`ов. Лог живет в памяти процесса, а соответственно не переживает его перезапуск. Правда есть методы startLogToFile и stopLogToFile, но работают они несколько специфично: в файле сохраняются куски лога непосредственно перед остановкой процесса и сразу после его запуска. В качестве файла используется SharedPreferences. Считывание придется реализовывать самостоятельно. Элемент позволяет отправить лог на email (через сторонний почтовик). Также элемент содержит вспомогательные методы, которые можно вызывать из IC и прочих элементов, позволяющих добавлять в проект свой код. Эти методы призваны сократить объем текста при логировании стектрейсов ошибок (Exception`ов). Кстати, добавление строк в лог можно также вызывать из IC, вот так: IntLog.add("привет");.
Manifest. Нужен для добавления в манифест приложения информации о компонентах приложения, которые вы возможно добавили в проект с помощью элемента File2project.
MTimer. В отличии от стандартного таймера работает в основном потоке приложения, а значит его напрямую можно подсоединять ко входам визуальных элементов.
Permission. Позволяет добавлять в манифест разрешения, которые нужны вашему коду в IC.
SleepWake. Сон и пробуждение устройства (вкл/выкл экрана), WakeLock`и процессора, добавление программы в администраторы устройства.
SystemBrightness. Изменение яркости экрана, информация о его состоянии (включен/выключен).
SystemScreenRotation. Вращение экрана.
Trigger. Элемент, позволяющий отфильтровать повторы событий. Имеет настраиваемое количество входов-выходов. При подряд следующих событиях на одном и том же входе, событие на том же по счету выходе генерируется лишь первый раз. В дальнейшем прохождение события через этот вход-выход возможно только при появлении хотя бы одного события на другом входе. Как ни странно, мне такая возможность оказалась нужна довольно часто и раньше я для этого использовал мультиэлемент с несколькими компонентами внутри. Потом мне это надоело и я написал этот компонент.
UncaughtException. Элемент, который поможет вам выяснить причину "падения" программы. Перехватывает непойманное исключение в вашем приложении, пишет стектрейс в SharedPreferences, после чего вызывает стандартный обработчик непойманных исключений фреймвока. Имя SharedPreferences - "uncaught_exeption", имя ключа, в который пишется стектрейс - "lastExeption". Что с этим делать дальше - ваше дело. Я, например, при запуске приложения (в onCreate MainActivity) первым делом проверяю наличие данного ключа в этом SharedPreferences, если есть - отображаю его содержимое в диалоге, а сам ключ удаляю.
GPS. Для определения местоположения по GPS. Элемент сырой, делался по просьбе форумчанина, но в итоге оказался ненужен.

Редактировалось 5 раз(а), последний 2017-11-03 11:46:29
карма: 3

1
Голосовали:sla8a
Ответов: 632
Рейтинг: 4
#1549: 2017-12-29 23:40:34 ЛС | профиль | цитата
StrReplace не работает. Надо заменить букву а на о . Программа место этого он выдаёт .replace(a, o)
карма: 0

0
Ответов: 632
Рейтинг: 4
#1550: 2017-12-30 13:59:09 ЛС | профиль | цитата
Vadimluk1 писал(а):
StrReplace не работает. Надо заменить букву а на о . Программа место этого он выдаёт .replace(a, o)

С StrReplace нашёл подход, посылаю теперь с точек верхних, но осталось проблема, как сделать независимую замену. Если нужно поменять в потоке, а на о и о на а.

Add(StrReplace,53224,350,161)
{
link(onReplace,2600721:doReplace,[(394,167)(394,191)(338,191)(338,216)])
link(String,10607536:Var3,[(356,153)])
link(SubStr,12979248:Var2,[])
link(DestStr,10260548:Var2,[])
}
Add(StrReplace,2600721,350,210)
{
link(onReplace,15022545:doSetText,[(618,216)(618,475)])
link(String,10607536:Var2,[(356,184)(328,184)])
link(SubStr,10260548:Var1,[(363,138)])
link(DestStr,12979248:Var3,[(370,131)])
}
Add(EditText,9714181,196,98)
{
Left=10
Top=10
Width=470
link(onTextChanged,53224:doReplace,[(268,104)(268,174)(336,174)(336,167)])
}
Add(Memory,7759913,364,91)
{
Default=String(о)
}
Add(Memory,14567824,357,91)
{
Default=String(а)
}
Add(GetDataEx,10260548,364,133)
{
link(Data,7759913:Value,[])
}
Add(GetDataEx,12979248,357,126)
{
link(Data,14567824:Value,[])
}
Add(GetDataEx,10607536,322,148)
{
Angle=3
link(Data,9714181:Value,[(202,153)])
}
Add(TextView,15022545,854,469)
{
Left=75
Top=55
Width=295
Caption=""
}


Редактировалось 1 раз(а), последний 2017-12-30 14:00:05
карма: 0

0
Ответов: 1328
Рейтинг: 69
#1551: 2018-01-10 11:00:07 ЛС | профиль | цитата
GreM, огромное спасибо Подскажи еще как работать с камерой не нашел ни одного примера?

Редактировалось 1 раз(а), последний 2018-01-15 13:37:34
карма: 2

0
Ответов: 163
Рейтинг: 33
#1552: 2018-01-10 13:24:17 ЛС | профиль | цитата
Konst, вообще-то я не спец по камере, но как-то на форуме кто-то задавал вопрос в связи с "падением" приложения, использующего камеру. Я тогда элемент камера немного доработал, обернув все опасные вызовы в try/catch. Взять можно здесь. Ну и для проверки набросал схему для тестов.

Add(MainActivity,2953706,56,203)
{
Left=0
Top=0
Width=500
Height=400
BorderStyle=3
AppName="test_camera"
Package="hiasm.test_camera"
VersionCode=1
Version="1.0"
Compatibility=0
Caption="test_camera"
AppIcon=[]
SysName=""
DefaultLayout="(empty)"
IntentFilter=#
Theme=0
CustomTheme=""
BackgroundImage="(empty)"
ProcName=""
Point(onPause)
Point(onResume)
link(onPause,16681065:In,[])
}
Add(Camera,14857860,651,210)
{
Index=0
Orientation=0
Point(doSetPreviewDisplay)
Point(doStopPreview)
Point(doRelease)
link(onTakePhoto,6950238:doDecodeFile,[(695,216)(695,286)(639,286)(639,356)])
link(onError,14828735:doShow,[])
link(SurfaceView,495367:SurfaceView,[])
}
Add(SurfaceView,495367,651,133)
{
Left=25
Top=15
Width=140
Height=172
Align=0
Color=-16777201
LayoutManager="(empty)"
Weight=1
OffsetX=0
OffsetY=0
UnitsX=0
UnitsY=0
gVertical=0
gHorizontal=0
gFill=0
HeightMode=0
WidthMode=1
FixedHeight="40px"
FixedWidth="100px"
MinHeight=""
MinWidth=""
mLeft=""
mTop=""
mRight=""
mBottom=""
pLeft=""
pTop=""
pRight=""
pBottom=""
Alpha=1
Visibility=0
Clickable=1
Focusable=1
Enabled=1
ContextMenu="(empty)"
BackgroundImage="(empty)"
Background=""
Animation="(empty)"
Point(doVisibility)
}
Add(Button,11105323,427,224)
{
Left=30
Top=290
Width=120
Height=22
Align=0
Color=-16777201
LayoutManager="(empty)"
Weight=0
OffsetX=0
OffsetY=0
UnitsX=0
UnitsY=0
gVertical=0
gHorizontal=0
gFill=0
HeightMode=0
WidthMode=1
FixedHeight="40px"
FixedWidth="100px"
MinHeight=""
MinWidth=""
mLeft=""
mTop=""
mRight=""
mBottom=""
pLeft=""
pTop=""
pRight=""
pBottom=""
Alpha=1
Visibility=2
Clickable=1
Focusable=1
Enabled=1
ContextMenu="(empty)"
BackgroundImage="(empty)"
Background=""
Animation="(empty)"
TypeFace=0
TextColor=536870912
TextStyle=0
TextSize=""
TextScaleX=1
Caption="2. снимок"
StrResName=""
Point(onClick)
Point(doVisibility)
link(onClick,14857860:doTakePhoto,[])
AddHint(-17,40,65,13,Caption)
}
Add(Hub,6408835,546,210)
{
InCount=1
OutCount=2
link(onEvent1,14857860:doOpen,[])
link(onEvent2,14857860:doStartPreview,[])
}
Add(BitmapFactory,6950238,651,343)
{
Path=""
Format=0
Quality=100
Point(doDecodeFile)
Point(ByteArray)
link(onDecode,2290773:doEvent1,[(695,349)(695,387)(394,387)(394,426)])
link(ByteArray,14857860:Picture,[])
}
Add(ImageView,2010164,651,420)
{
Left=35
Top=205
Width=120
Height=22
Align=0
Color=-16777201
LayoutManager="(empty)"
Weight=1
OffsetX=0
OffsetY=0
UnitsX=0
UnitsY=0
gVertical=0
gHorizontal=0
gFill=0
HeightMode=0
WidthMode=1
FixedHeight="40px"
FixedWidth="100px"
MinHeight=""
MinWidth=""
mLeft=""
mTop=""
mRight=""
mBottom=""
pLeft=""
pTop=""
pRight=""
pBottom=""
Alpha=1
Visibility=2
Clickable=1
Focusable=1
Enabled=1
ContextMenu="(empty)"
BackgroundImage="(empty)"
Background=""
Animation="(empty)"
DefaultPicture="(empty)"
ScaleType=0
MaxWidth=0
MaxHeight=0
Point(doVisibility)
link(Bitmap,6950238:Bitmap,[])
}
Add(Hub,2290773,406,420)
{
InCount=1
OutCount=6
link(onEvent1,2010164:doBitmap,[])
link(onEvent2,15026089:In,[(441,433)(441,447)])
link(onEvent3,7476065:In,[(438,440)(438,461)])
link(onEvent4,2960512:In,[(434,447)(434,475)])
link(onEvent5,8467543:In,[(430,454)(430,489)])
link(onEvent6,5301396:In,[(427,461)(427,503)])
}
Add(ChanelToIndex,16519872,602,140)
{
Count=3
link(onIndex,495367:doVisibility,[])
}
Add(LineBreak,13983063,546,154)
{
Caption="hide"
Type=0
Color=-16777201
link(Out,16519872:doWork3,[])
Primary=[15026089,-84,287]
}
Add(LineBreak,5873952,546,441)
{
Caption="show"
Type=0
Color=-16777201
link(Out,8253367:doWork1,[])
Primary=[2960512,-98,28]
}
Add(ChanelToIndex,8253367,602,441)
{
Count=3
link(onIndex,2010164:doVisibility,[(642,447)(642,433)])
}
Add(LineBreak,9565760,546,455)
{
Caption="hide"
Type=0
Color=-16777201
link(Out,8253367:doWork3,[])
Primary=[8285730,-91,-329]
}
Add(LineBreak,10320615,546,140)
{
Caption="show"
Type=0
Color=-16777201
link(Out,16519872:doWork1,[])
Primary=[7723285,-98,0]
}
Add(Hub,11451664,399,126)
{
InCount=1
OutCount=5
link(onEvent1,8285730:In,[])
link(onEvent2,7723285:In,[(431,139)(431,146)])
link(onEvent3,1583150:In,[(427,146)(427,160)])
link(onEvent4,11697313:In,[(423,153)(423,174)])
link(onEvent5,11658968:In,[(420,160)(420,188)])
}
Add(LineBreak,10381631,490,210)
{
Caption="start"
Type=0
Color=65280
link(Out,6408835:doEvent1,[])
Primary=[11658968,-63,-28]
}
Add(LineBreak,922714,490,238)
{
Caption="stop"
Type=0
Color=255
link(Out,15225362:doWork2,[])
Primary=[16681065,-322,-7]
}
Add(Hub,3662804,560,238)
{
InCount=1
OutCount=2
link(onEvent1,14857860:doStopPreview,[])
link(onEvent2,14857860:doRelease,[])
}
Add(ToastNotification,14828735,728,217)
{
Text=""
Duration=1
}
Add(LineBreak,3345619,322,238)
{
Caption="hide"
Type=0
Color=-16777201
link(Out,13716067:doWork3,[])
Primary=[7476065,133,217]
}
Add(ChanelToIndex,13716067,378,224)
{
Count=3
link(onIndex,11105323:doVisibility,[])
}
Add(LineBreak,5954548,322,224)
{
Caption="show"
Type=0
Color=-16777201
link(Out,13716067:doWork1,[])
Primary=[1583150,119,-70]
}
Add(Button,7124984,336,126)
{
Left=25
Top=240
Width=120
Height=22
Align=0
Color=-16777201
LayoutManager="(empty)"
Weight=0
OffsetX=0
OffsetY=0
UnitsX=0
UnitsY=0
gVertical=0
gHorizontal=0
gFill=0
HeightMode=0
WidthMode=1
FixedHeight="40px"
FixedWidth="100px"
MinHeight=""
MinWidth=""
mLeft=""
mTop=""
mRight=""
mBottom=""
pLeft=""
pTop=""
pRight=""
pBottom=""
Alpha=1
Visibility=0
Clickable=1
Focusable=1
Enabled=1
ContextMenu="(empty)"
BackgroundImage="(empty)"
Background=""
Animation="(empty)"
TypeFace=0
TextColor=536870912
TextStyle=0
TextSize=""
TextScaleX=1
Caption="1. открыть камеру"
StrResName=""
Point(onClick)
Point(doVisibility)
link(onClick,11451664:doEvent1,[])
AddHint(-33,-28,109,13,Caption)
}
Add(ChanelToIndex,3982939,273,126)
{
Count=3
link(onIndex,7124984:doVisibility,[])
}
Add(LineBreak,1413522,203,126)
{
Caption="show"
Type=0
Color=-16777201
link(Out,3982939:doWork1,[])
Primary=[8467543,238,357]
}
Add(LineBreak,12999272,490,252)
{
Caption="stop"
Type=0
Color=255
link(Out,15225362:doWork3,[(536,258)])
Primary=[5301396,-56,245]
}
Add(HubEx,15225362,532,238)
{
Angle=0
link(onEvent,3662804:doEvent1,[])
}
Add(LineBreak,6701064,203,140)
{
Caption="hide"
Type=0
Color=-16777201
link(Out,3982939:doWork3,[])
Primary=[11697313,231,28]
}

карма: 3

0
Ответов: 497
Рейтинг: 16
#1553: 2018-01-11 01:01:33 ЛС | профиль | цитата
Help

-dex:
[dex] input: D:\HiAsm_AltBuild\Elements\android\code\result\bin\classes
[dex] Converting compiled files and external libraries into D:\HiAsm_AltBuild\Elements\android\code\result\bin\classes.dex...
[dx] Error: Could not create the Java Virtual Machine.
[dx] -Djava.ext.dirs=D:\HiAsm_AltBuild\compiler\Android\build-tools\19.0.3\lib is not supported. Use -classpath instead.
[dx] Error: A fatal exception has occurred. Program will exit.

BUILD FAILED
D:\HiAsm_AltBuild\compiler\android\tools\ant\build.xml:892: The following error occurred while executing this line:
D:\HiAsm_AltBuild\compiler\android\tools\ant\build.xml:894: The following error occurred while executing this line:
D:\HiAsm_AltBuild\compiler\android\tools\ant\build.xml:906: The following error occurred while executing this line:
D:\HiAsm_AltBuild\compiler\android\tools\ant\build.xml:284: null returned: 1

Total time: 10 seconds
Сборка завершена.

карма: 1
        ]  
0
Ответов: 4628
Рейтинг: 749
#1554: 2018-01-11 11:46:35 ЛС | профиль | цитата
32-битная JRE установлена?
карма: 26

0
Ответов: 1328
Рейтинг: 69
#1555: 2018-01-12 11:58:57 ЛС | профиль | цитата
GreM, нет файла - 404 Not Found Not found.
карма: 2

0
Ответов: 497
Рейтинг: 16
#1556: 2018-01-13 03:54:52 ЛС | профиль | цитата
Netspirit, спасибо да проблема в JRE а точнее в его отсутствии каждый раз как берусь за андроид забываю его поставить. память уже не та
старая доработка emulauncher 2.0 может кому пригодится. немного прокомментировал для удобного чтения. тот самый лаунчер но с adb. все просто подключить "готовое" устройство и нажимать последовательно 3 кнопки.
из проблем не все не хиасимовские приложения запускаются и иногда некорректная работа adb в результате чего иногда нужно нажимать по 2-3 раза одну и туже кнопку.
установка заменить старый в папке хиасм\compiler\Android
доделал бы если мне кто сможет объяснить как работать с устройством по вафле если подключено больше 1 устройства

--- Добавлено в 2018-01-13 04:00:47

да и вот вопрос почему у меня в камере такое маленькое расширение? качество просто убогое. наверное около 64 на 64? и это только на ксаоми и самсунге а вот на престижио и леново качество раз в 5 лучше хотя камеры максимум HD а первые 2 FullHD

Редактировалось 2 раз(а), последний 2018-01-14 06:03:55
карма: 1
        ]  
0
Ответов: 1821
Рейтинг: 168
#1557: 2018-01-14 13:59:00 ЛС | профиль | цитата
RAWY_EX, сам стыкался с таким, тоже на Xiaomi и Samsung. Нормального решения, кроме того, чтобы юзать Camera2 API, не нашёл

--- Добавлено в 2018-01-14 14:02:07

Есть еще такой метод https://developer.android.com/reference/android/hardware/Camera.Parameters.html#setPreviewSize(int, int). Не помню уже, пробовал ли его, но "может поможет".

Редактировалось 6 раз(а), последний 2018-01-14 14:05:08
карма: 5

0
Ответов: 1328
Рейтинг: 69
#1558: 2018-01-15 13:42:08 ЛС | профиль | цитата
Дайте рабочий пример работы с камерой плс, у меня только фонарик работает
карма: 2

0
Ответов: 1821
Рейтинг: 168
#1559: 2018-01-15 13:56:03 ЛС | профиль | цитата
RAWY_EX писал(а):
доделал бы если мне кто сможет объяснить как работать с устройством по вафле если подключено больше 1 устройства

adb connect айпидевайса
И после этого adb install, не?

Редактировалось 3 раз(а), последний 2018-01-15 13:56:53
карма: 5

0
Ответов: 497
Рейтинг: 16
#1560: 2018-01-15 16:09:11 ЛС | профиль | цитата
sаmakacd, это да но это если только одно устройство а если у меня два устройства по wi-fi или одно по wi-fi и одно usb как тогда указать устройство?

IMG_20180115_144047.jpg
в чем может быть проблема?

Редактировалось 2 раз(а), последний 2018-01-15 16:15:42
карма: 1
        ]  
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)