Hirdetés

2024. április 26., péntek

Gyorskeresés

Hozzászólások

(#751) pittbaba


pittbaba
aktív tag

És még egy kérdés: Meg lehet e oldani valahogy, hogy mikor hívják a telefont, a hívás maradjon a háttérben, és az alkalmazás az előtérben?
Sajnos onDestroy-t okoz az alkalmazásban, ha hívják a telefont, ami nekem nagyon kellemetlen, mert az IOIO board is leszakad a programtól, és nullázódnak az állapotok.

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#752) thon73 válasza pittbaba (#751) üzenetére


thon73
tag

A problémával csak felhasználóként találkoztam. [link] Ez a program olyat tud, hogy az előtérbe került hívást (még a hallgató felvétele előtt!!) háttérbe nyomhatod, ahonnét később (amíg a hívás tart) előtérbe lehet venni, és felvenni. Tehát elvileg megoldható.
((Mielőtt valaki megkérdezné, hogy ez mire jó: hosszú úton SVOX-szal szoktam könyvet felolvastatni. De ha hívás érkezik, akkor a felolvasás megszakad, majd a telefon felvétele után beleolvassa a könyvet a telefonba. Na ezt szoktam befejezni egy mozdulattal, mielőtt fogadom a hívást.))

(#753) pittbaba válasza thon73 (#752) üzenetére


pittbaba
aktív tag

Köszönöm!

Úgy néz ki megoldódott a probléma, nem kezeltem le az onpause,onstop,onresume állapotokat egyáltalán, üres függvényeket beraktam most már nem szakad le a board, és csinálja amit kell.
:DD

Viszont a hívás visszautasítást még mindig nem találom sehol jól. :W

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#754) fatal` válasza pittbaba (#750) üzenetére


fatal`
titán

Nem lehet, root kell hozzá. Beba*na, ha mindenféle kókány program elutasítgathatná a hívásokat. Nem véletlen kell root az összes call blockernek.

(#755) Sianis


Sianis
addikt

Sziasztok!

Elméleti kérdés következik:

Adott két Fragment, az egyik egy ListView, a másik egy egyedi nézet, amiben más activity-k létrehozhatnak, módosíthatnak, törölhetnek elemeket. Hogyan oldanátok meg, hogyha az adathalmaz változik, akkor ezek a nézetek értesüljenek arról, hogy mi történt?

Én két megoldást látok:
- BroadcastReceiver. A Fragmentek definiálják, hogy milyen eseményekre érzékenyek, aztán amikor kell akkor reagálnak szépen. Nem tudom, hogy itt megoldható-e, hogy a ListView módosításai animálódjanak, tehát ne a háttérben történjen meg az adapter módosítása.
- onActivityResult. Ezzel az a baj, hogyha egy ViewPager-ben vannak a fragmentek és mondjuk két egymás mellett lévő fragmentnek is frissülnie kell, akkor itt már problémás az események elosztása. Vicces, de néha egy isAdded() hívásra igazat adó fragment is elszáll olyan hibával, hogy ő már nincs is a FragmentManagerben.

Én a BroadcastReceivert érzem most jobbnak, de cáfoljatok rám.

Köszi a válaszokat előre is!

Sianis

(#756) WonderCSabo válasza Sianis (#755) üzenetére


WonderCSabo
félisten

BroadcastReceiver-re szavazok én is, azt kb. pont erre találták ki, mint az Observer pattern egy nagyon szépen különválasztott implementációja.

(#757) pittbaba válasza fatal` (#754) üzenetére


pittbaba
aktív tag

Szia!

Megint csak nem baj, ha root kell. Ajtónyitót csinálok, a telefon meg az ioio egy dobozban fog csücsülni, így a root-al nincs gond. A módszer érdekelne, mert csak azt találom mindenhol hogy impossible. Van egy megoldás, de az már a permission-ök miatt nem működik elavult megoldás, nekem nem is sikerült.

Engem pont ez mozgat, hogy van egy csomó call blocker program, én meg nem tudom megoldani... :)

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#758) RexpecT


RexpecT
addikt

Üdv!

Egy appot akarok írni, ami folyamatosan kapcsolatban van egy külső bluetooth eszközzel, ha arról adat érkezik akkor elmenti egy lokális adatbázisba.
Azt már megoldottam, hogy alkalmazáson belül elkérjem a cél eszköz MAC címét, viszont nem vagyok teljesen biztos benne, hogy milyen irányba is menjek.
Elvileg ha írok egy saját Service-t amibe lesz egy Thread ami folyamatosan kapja és nyugtázza az adatokat az ugye jó megoldásnak tűnik?

:R

(#759) sztanozs válasza RexpecT (#758) üzenetére


sztanozs
veterán

Gondolom BT/Com-interfészen keresztül jön a cucc. Erre kell írni receivert (ja és érdemes folymatosan követni a BT állapotát, nehogy a lecsatlakozás miatt FC-ve elszálljon a program). Gondolom a gyári példa megvan: [link]
Ja igen, szervízben érdemes megoldani az adatfogadást.

[ Szerkesztve ]

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

(#760) pittbaba


pittbaba
aktív tag

Sziasztok!

Éppen én is a bluetooth részt csinálom az appomhoz, nekem annyi kellene, hogy ha közelben elsétál egy látható bluetooth eszköz, akkor annak megkapjam a paramétereit. Sikerül az app elindításával startDiscovery();-vel egy alkalommal kinyerni a közelben levő eszközök listáját, de hogy tudom ezt megoldani úgy, hogy állandóan scanneljen? (A telefon örökkön örökké tápon csücsül, nem para az aksi)

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#761) fatal` válasza pittbaba (#760) üzenetére


fatal`
titán

Külön szálon egy timerrel, x időközönként scannelsz.

(#762) pittbaba válasza fatal` (#761) üzenetére


pittbaba
aktív tag

Na ilyet még nem csináltam, de a keresőszavak legalább megvannak :))

[ Szerkesztve ]

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#763) shinodas


shinodas
tag

Van egy ilyen kódom:
package com.example.bluetooth_linugz;

import java.util.Iterator;
import java.util.Set;
import java.util.UUID;

import android.os.Bundle;
import android.app.Activity;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothSocket;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends Activity {

Set<BluetoothDevice> pairedDevices;
BluetoothAdapter btInterface;
BluetoothSocket socket;
String ROBOTNAME = "peter-VPCEH1M1E-0";
UUID MY_UUID;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}

public void findRobot (View v){
try{
btInterface = BluetoothAdapter.getDefaultAdapter();
pairedDevices = btInterface.getBondedDevices();
Iterator<BluetoothDevice> it = pairedDevices.iterator();
while(it.hasNext()){
BluetoothDevice bd = it.next();
if(bd.getName().equalsIgnoreCase(ROBOTNAME)){ //ha a listában van a megadott eszköz, akkor csatlakozni próbál
MY_UUID = bd.getUuids()[0].getUuid();
connectToRobot(bd);
return;
}
}
}catch(Exception e){
String tag = "Első";
Log.e(tag, "Failed in findRobot() " + e.getMessage());
}
}

private void connectToRobot(BluetoothDevice bd) {
try{
//socket = bd.createRfcommSocketToServiceRecord(UUID.fromString("00001101-0000-1000-8000-00805F9B34FB"));
socket = bd.createRfcommSocketToServiceRecord(MY_UUID);
socket.connect();
}catch(Exception e){
String tag = "Második";
Log.e(tag, "Error interacing with remote device [" + e.getMessage() + "]");
}
}
}

Egy ubuntut futtató laptophoz szeretnék még csak simán csatlakozni, viszont a csatlakozásnál "Connection reset by peer" üzenetet kapok logcatban. Mi lehet a gond?

[ Szerkesztve ]

(#764) pittbaba


pittbaba
aktív tag

Érdekes, mert kipróbáltam azt, hogy feliratkozok a ACTION_DISCOVERY_FINISHED eseményre, és ott újra indítom a Discovery-t, de valamiért a ACTION_DISCOVERY_FINISHED esemény soha nem következik be, pedig megjönnek szépen az eredmények a talált eszközökről.

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#765) pittbaba válasza fatal` (#761) üzenetére


pittbaba
aktív tag

Sikerült, tök jól megy, köszönöm!! :R

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#766) pittbaba


pittbaba
aktív tag

Újabb kérdés:
Még nem értem pontosan, de úgy tűnik, valamiért elszáll az app miközben a háttérben fut egy async task(egy json lekérés), a Timer indít egy startDiscovery(); metódust.
Mi okozhatja?

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#767) fatal` válasza pittbaba (#766) üzenetére


fatal`
titán

Logcat mit mond?

(#768) RexpecT válasza sztanozs (#759) üzenetére


RexpecT
addikt

Köszönöm megnézem :R

(#769) pittbaba válasza fatal` (#767) üzenetére


pittbaba
aktív tag

Logcat mondja:

06-04 10:22:42.079: E/AndroidRuntime(24879): FATAL EXCEPTION: main
06-04 10:22:42.079: E/AndroidRuntime(24879): java.lang.NullPointerException
06-04 10:22:42.079: E/AndroidRuntime(24879): at org.json.JSONTokener.nextCleanInternal(JSONTokener.java:116)
06-04 10:22:42.079: E/AndroidRuntime(24879): at org.json.JSONTokener.nextValue(JSONTokener.java:94)
06-04 10:22:42.079: E/AndroidRuntime(24879): at org.json.JSONObject.<init>(JSONObject.java:154)
06-04 10:22:42.079: E/AndroidRuntime(24879): at org.json.JSONObject.<init>(JSONObject.java:171)
06-04 10:22:42.079: E/AndroidRuntime(24879): at com.example.thedoor.MainActivity$1GetTask.onPostExecute(MainActivity.java:133)
06-04 10:22:42.079: E/AndroidRuntime(24879): at com.example.thedoor.MainActivity$1GetTask.onPostExecute(MainActivity.java:1)
06-04 10:22:42.079: E/AndroidRuntime(24879): at android.os.AsyncTask.finish(AsyncTask.java:631)
06-04 10:22:42.079: E/AndroidRuntime(24879): at android.os.AsyncTask.access$600(AsyncTask.java:177)
06-04 10:22:42.079: E/AndroidRuntime(24879): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
06-04 10:22:42.079: E/AndroidRuntime(24879): at android.os.Handler.dispatchMessage(Handler.java:99)
06-04 10:22:42.079: E/AndroidRuntime(24879): at android.os.Looper.loop(Looper.java:137)
06-04 10:22:42.079: E/AndroidRuntime(24879): at android.app.ActivityThread.main(ActivityThread.java:4931)
06-04 10:22:42.079: E/AndroidRuntime(24879): at java.lang.reflect.Method.invokeNative(Native Method)
06-04 10:22:42.079: E/AndroidRuntime(24879): at java.lang.reflect.Method.invoke(Method.java:511)
06-04 10:22:42.079: E/AndroidRuntime(24879): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
06-04 10:22:42.079: E/AndroidRuntime(24879): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:558)
06-04 10:22:42.079: E/AndroidRuntime(24879): at dalvik.system.NativeStart.main(Native Method)

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#770) pittbaba válasza fatal` (#767) üzenetére


pittbaba
aktív tag

Na soronkénti Log.v segítségével kiderítettem, hogy itt száll el:

inputStream = new BufferedReader(new InputStreamReader(dc.getInputStream()));

Kérdés, hogy miért csak akkor amikor a Timer elindítja a bluetooth pásztázást (sikeresen elindul). Ha viszont kikommentelem a startDiscovery()-t akkor megjön az eredmény szépen, ahogy kell.

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#771) pittbaba válasza pittbaba (#770) üzenetére


pittbaba
aktív tag

Úgy néz ki az async json lekérés indítása előtt kellett egy cancelDiscovery, így már nincs hiba. Azért a magyarázatára kíváncsi lennék miért zavarodik be a háttérfolyamat. Elvileg a startDiscovery is aszinkron fut, de ennek nem kellene a másikat zavarnia nem?

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#772) shinodas válasza shinodas (#763) üzenetére


shinodas
tag

ötlet? :B

(#773) holczhauser


holczhauser
csendes tag

Sziasztok !

Android játékfejlesztéshez tudok adni
- jó szakmai irodalmat
- jó keretrendszert ?
2Ds game-eket kellene fejleszteni..
Android tapasztalat: 3 év
Játékfejlesztés: 0 perc

Köszi , K

(#774) raggg válasza Yany (#36) üzenetére


raggg
senior tag

(#773) holczhauser

Én a LibGDX-et ajánlanám, a weboldalukon elég sok információt találsz róla. Ingyenes!

libgdx.badlogicgames.com

(sry véletlenül rosszra válaszoltam)

[ Szerkesztve ]

ragklaatPS

(#775) fatal` válasza holczhauser (#773) üzenetére


fatal`
titán

AndEngine vagy libgdx. Előbbinek nem nincs doksija, de vannak példaprogramok, meg segítőkész community a fórumon, utóbbit nem nagyon ismerem, de elvileg jó a dokumentációja, viszont nehezebb használni.

Én AndEnginet használok/használtam.

[ Szerkesztve ]

(#776) raggg válasza fatal` (#775) üzenetére


raggg
senior tag

Én sem tudom sajnos összehasonlítani, mert az AndEngine-t meg én nem használtam, de a libGDX-hez elég sok anyag van (példák, tutorialok, videók..). A weboldalukon a documents résznél elég sok be van téve, de még azon kívül is lehet találni.

ragklaatPS

(#777) pittbaba


pittbaba
aktív tag

Szerintetek JSON-t weblapról lekérni hogy a legérdemesebb?
Van ez a kód, tök jól működik, amikor működik, de néha IOExceptiont okoz, nem értem miért.

Jó megoldás ez, vagy inkább httpClient?

public static String getJsonFromServer(String url) throws IOException {

BufferedReader inputStream = null;

URL jsonUrl = new URL(url);
URLConnection dc = jsonUrl.openConnection();

dc.setConnectTimeout(5000);

dc.setReadTimeout(5000);

inputStream = new BufferedReader(new InputStreamReader(
dc.getInputStream()));

// read the JSON results into a string
String jsonResult = inputStream.readLine();

return jsonResult;
}

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#778) WonderCSabo válasza pittbaba (#777) üzenetére


WonderCSabo
félisten

Teljesen jó ez a kód. Sztem a kivételt akkor kapod, amikor lejár a timeout idő.

(#779) pittbaba válasza WonderCSabo (#778) üzenetére


pittbaba
aktív tag

Köszönöm!
A httpclient végül jobb megoldásnak bizonyult, mert jobban tudom kezelni a különböző hibákat. Egyébként igen timeout, illetve wifiről való leszakadozás okozta a kivételeket.
Most feltettem egy webservert a telefonra, így biztos nincs wifiről szakadozás :)

Újabb kérdésem:
Async taskban szeretnék egy boolean-t ha feltételek rendben vannak átbillenteni igaz-ra, majd 6mp múlva visszatenni false-ra. Async taskban ha megjön a JSON eredmény rendben, akkor kell, hogy a változó 6mp-ig true legyen. Thread.sleep(6000); nem jó, az utána következő parancsok is azonnal futnak le, nem várakozás után. Ez miért lehet, illetve mi a megoldás? A timerre gondoltam, h 6mp-ként megnézi az értékét és ha true, akkor átbillenti false-ra, viszont ha a timer éppen a 4. mp-nél jár, amikor átbillen true-ra a változó, majd 2mp múlva teszi false-ra az nem jó nekem. Hogy szokás ezt megoldani?

[ Szerkesztve ]

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#780) Sianis válasza pittbaba (#779) üzenetére


Sianis
addikt

Szerintem ez még jobb:

[link]

Van benne pár igazán jó szolgáltatás.

Sianis

(#781) pittbaba válasza Sianis (#780) üzenetére


pittbaba
aktív tag

Köszönöm ezt majd átdúrom!

Előző kérdésemre nincs valami tippetek? Semmit sem találok, mert megint kifogytam a keresőszavakból :))

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#782) Sianis válasza pittbaba (#779) üzenetére


Sianis
addikt

Én Handlert használnék, annak is a postDelayed részét.

Csak simán meghívod, a rendszer meg majd lefuttatja 6mp után, hogy álljon vissza false-ra.

Sianis

(#783) WonderCSabo válasza Sianis (#782) üzenetére


WonderCSabo
félisten

Ja, csak a handler alapból azon a szálon fut, ahol létrehozták.

(#784) Sianis válasza WonderCSabo (#783) üzenetére


Sianis
addikt

Feltételeztem, hogy az ASyncTaskot a főszálról indítja. És annak az onPostExecute része szintén ott fut. Illetve nem is feltétlenül lényeges hol fut, mivel egy static változó, jelen esetben boolean értékét bárhonnan meg tudja változtatni.

Sianis

(#785) RexpecT


RexpecT
addikt

Sikerült elakadnom GCM implementálásánál, de maga a probléma nem ehhez kapcsolódik, hanem az alábbi hibaüzenetet dobja az app:

"Unable to find explicit activity class {com.example.testhttps/com.example.testhttps.GCMIntentService}; have you declared this activity in your AndroidManifest.xml?"

Gomb:
Button gcmButton=(Button) findViewById(R.id.gcmButton);
gcmButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
Intent gcmIntent= new Intent(context,GCMIntentService.class);
startActivity(gcmIntent);
}
});

Manifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.testhttps"
android:versionCode="1"
android:versionName="1.0">

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.USE_CREDENTIALS"/>
<uses-permission android:name="android.permission.READ_OWNER_DATA"/>

<permission
android:name="com.example.testhttps.permission.C2D_MESSAGE"
android:protectionLevel="signature"/>
<uses-permission android:name="com.example.testhttps.permission.C2D_MESSAGE"/>

<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17"/>

<application
android:name="com.example.testhttps.MyApplication"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name="com.example.testhttps.TestHttpsMain"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity
android:name="com.example.database.ViewRecord"
android:label="@string/title_activity_view_record">
</activity>
<activity
android:name="com.example.bluetooth.DeviceListActivity"
android:label="@string/title_activity_device_list_activity">
</activity>
<activity
android:name=".GCMMainActivity"
android:label="@string/title_activity_gcm_main_activity">
</activity>

<service
android:name="com.example.service.MyService"
android:enabled="true"
android:icon="@drawable/ic_launcher"
android:label="MyService"/>
<receiver
android:name="com.google.android.gcm.GCMBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE"/>
<action android:name="com.google.android.c2dm.intent.REGISTRATION"/>
<category android:name="com.example.testhttps"/>
</intent-filter>
</receiver>
<service
android:enabled="true"
android:name=".GCMIntentService">
</service>
</application>

</manifest>

Ennek pedig elvileg így mennie kellene...

(#786) WonderCSabo válasza Sianis (#784) üzenetére


WonderCSabo
félisten

Lehet, hogy akkor félreértettem a problémát.

(#787) RexpecT válasza RexpecT (#785) üzenetére


RexpecT
addikt

Közben már meglett a hiba :B

(#788) pittbaba válasza Sianis (#782) üzenetére


pittbaba
aktív tag

Köszönöm!
Handler-t még soha nem használtam, lassan lefedem az alapfogalmakat :) Fórumon eddig jutottam el de pont a lényeget nem találtam meg a postDelayed-t, megpróbálom megoldani, nagyon köszönöm!

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#789) pittbaba válasza Sianis (#784) üzenetére


pittbaba
aktív tag

Igen, az OnPostExecute részben dolgozom fel az eredményt pont e miatt, hogy a főszálban tudjak maradni, így is most már Async, Looper, Timer egy appban már szétesek fejben lassan, de legalább haladok az alapok felderítésével :C

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#790) pittbaba


pittbaba
aktív tag

Ha valaki hasonló témákban (Handler) keresgél két jó példát is találtam, gondoltam megosztom:
[link]

[link]

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#791) fatal`


fatal`
titán

Nem igazán Android, sima java, de ez a topic jobban pörög:

Private nested classban szokás getter-settert használni, mi az általános konvenció? Azért kérdezem, mert a külső osztály is eléri belső fieldjeit, akkor is, ha az private.

(#792) Sianis válasza fatal` (#791) üzenetére


Sianis
addikt

Én leszoktam a getter/setter írásról. Kivéve, ha logika is van benne.

Emiatt.

Sianis

(#793) Sianis válasza pittbaba (#790) üzenetére


Sianis
addikt

Egyébként azt mondanám, hogy AndroidAnnotations idevágó része.

Írsz egy metódust, megtoldod @UiThread(delay=6000) annotációval és elfelejted a problémát egy percen belül. Ezzel bebiztosítod, hogy főszálon fusson és 6mp várakozás legyen a tényleges futtatása előtt.

Én minden új projektemben alapból használom az Annotations-t, mert nagyon felgyorsítja a fejlesztést, illetve csökkenti a repetatív feladatokat is.

Sianis

(#794) fatal` válasza Sianis (#792) üzenetére


fatal`
titán

:R

Akkor inner/nested classokban hanyagolom. Külső osztályokban nem, mert abból egy katyvasz lenne :D

(#795) pittbaba válasza Sianis (#793) üzenetére


pittbaba
aktív tag

Áhh szóval így hívják ezt a megoldást :) Az IOIO Looper miatt kellett ilyet használnom, példában volt, és nagyon jól működik!
A Handler is dolgozik szépen, végre készen lett az App :) Telefon hívásával szám alapján és Bluetooth mac alapján adatbázisból kérdezve jogosultnak nyitja az ajtót a kis IOIO board. Nagyon jó ketyere, ajánlom mindenkinek, lehet automatizálni a pecót! ;) :C

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#796) Agyasima


Agyasima
senior tag

Olyan android programot lehet-e csinálni, ami tudja az alábbit:
- FTP/SFTP kapcsolattal letölt egy fájlt (mondjuk egy XML-t pl.) egy bizonyos helyről
- ami alapján készít egy listát az XML-ben található tételekről
- a listából kiválasztunk egy tételt, amihez rögzítünk 5-6 fotót és 2 számot
- és ezt az 5-6 fotót és 2 számot feltölti FTP-n/SFTP-n keresztül egy adott helyre, ahol - mondjuk - "az adott nap & adott napi sorszám" névvel csinál is a fájloknak egy könyvtárt és abba teszi be a fentieket

Elméletben megoldható a dolog?

toledói csöcsparádé | ''Az ég kék volt, a szemed szürke, én zöldet hánytam...'' | Trutymó terror

(#797) Sianis válasza Agyasima (#796) üzenetére


Sianis
addikt

Látszólag van jó FTP library, szóval lehetséges igen.

Sianis

(#798) pittbaba


pittbaba
aktív tag

Lehet nem ide illik ezt, de hátha van tapasztalatotok:
Lehet olyan, hogy az egy tápra kötött IOIO board egy leddel, és az LG GT540 megy 60-70% procival alapjáraton (fent egy webserver a telon..) akkor jobban merül, mint ahogy a töltő tölteni tudja? Egy idő után leszakad a board, és szerintem azért..

5.7V 1000 mA a táp, van szufla..

PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

(#799) RexpecT


RexpecT
addikt

Valaki foglalkozott már a Google Cloud Messagingel?

Ez alapján csináltam mind a kliens mind a szerver oldalt: [link]

A példában egy külön Activitybe van beregisztrálva a BroadcastReceiver, én pedig a saját servicem OnCreate metódusában regisztrálom( tehát két servicem van egy GCMIntentService és egy saját amiben például a Bluetooth kommunikáció is folyik). Működik is a dolog hellyel közzel, sajnos nem mindig kapom meg az üzenetet, ezen általában egy wifi on-off segít a dolgon.

Valakinek van esetleg ötlete? :R

(#800) shinodas


shinodas
tag

Sziasztok Srácok!

Még mindig Bluetoothal szenvedek. :W Van egy activity, amiben a párosított eszközöket listázom ki. Azt szeretném elérni, hogy ha kiválasztok egy eszközt, ahhoz csatlakozzon. A csatlakozás részt egy másik activity tartalmazza. Gondolom, hogy a kiválasztott lista elemet kellene átadni a másik activitynek, hogy ahhoz csatlakozzon. Egyáltalán jó a csatlakozós activitym?
Remélem valaki tud segíteni :(

Activity1
Activity2

Copyright © 2000-2024 PROHARDVER Informatikai Kft.