Hirdetés

Új hozzászólás Aktív témák

  • thon73

    tag

    startActivity kapcsán szeretnék segítséget kérni - service alól indítok egy külső programot package-name alapján (pl. jota editor)
    Intent intent = ...Context().getPackageManager().getLaunchIntentForPackage("jp.sblo.pandora.jota");
    if ( intent != null )
    ...Context().startActivity(intent);

    Az indítás tökéletesen megy is, de elakadtam a Flag-ek kérdésénél:

    Milyen flageket kell beállítani ahhoz, hogy ha már fut a program, előre hozza (tehát ne legyen új példány belőle); ha még nem fut akkor pedig elindítsa? Vagy a PackageManager ezt is elintézi helyettem?

    Megj.: Amikor a saját activitymat indítottam (service alól) akkor csak a NEW_TASK és SINGLE_TOP segítségével tudtam működésre bírni, de igazából ezt sem értem, hogy miért. Csak újat tudtam készíteni, a régit nem tudtam elővenni; vagy két példány futott.
    Intent intent = new Intent( ...Context(), PrefsActivity.class);
    intent.addFlags( Intent.FLAG_ACTIVITY_NEW_TASK );
    // intent.addFlags( Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT );
    // intent.addFlags( Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY );
    intent.addFlags( Intent.FLAG_ACTIVITY_SINGLE_TOP );
    // intent.addFlags( Intent.FLAG_FROM_BACKGROUND );

    Minden segítséget nagyon köszönök, azt is, ha egy megbízható és működőképes összefoglalóhoz irányítotok. (Egy tucat egymásnak ellentmondó oldalon végigrágtam magam...)

    To flash: Saját tapasztalatom alapján van még egy gond: egy "saját ötlet" többnyire nem fér bele extraként egy jó programozó-csapat életébe. (És megoldott harmadik kategóriás költségről beszélünk.) Egyébként eldobni nem érdemes egy jó ötletet, talán el lehet adni; vagy (és én ezt választottam), némi számítástechnikai ismerettel meg tanulással az egyszerűbb dolgok meg is valósíthatóak. Addigra az is kiderül, mennyire célszerű pénzt és időt invesztálni az ötletbe.

Új hozzászólás Aktív témák