WebHU - Programozási kérdések és válaszok

Távolítsa el az indítóból, DE maradjon engedélyezve / indítható

próbáltam kódolni, megpróbáltam megoldani a google-val és a stackoverflow-val, de nem találtam semmit :=) szóval remélhetőleg valakinek van jobb ötlete, nem vagyok benne biztos, hogy mindent jól értem:

2 alkalmazásom van: ad (fő alkalmazás) / adfree-pro (csak a licenc elindítja a hirdetési alkalmazást hirdetések nélkül ;P)

tehát az a probléma, hogy szeretnék egy profi verziót (pro ikonnal) az indítóban, amely elindítja a normál hirdetési alkalmazást, amely (a normál hirdetési alkalmazás) nincs az indítóban.

megpróbáltam eltávolítani a reklámalkalmazást az indítóból (aminek a kutatásom miatt CSAK el kell távolítania az indítóból)

pkgMgr.setComponentEnabledSetting(new ComponentName(PACKAGE_NAME, PACKAGE_NAME + ".Main"), PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);

aminek eredménye: az indító ikonjai helyesek ;) DE az alkalmazás nem található a telefonon, nem indul el, nem indul el, még launcher pro tevékenységi parancsikonnal sem. úgy tűnik, hogy ott van (parancsikonokat lehet létrehozni), de egy tevékenység kivételével összeomlik, amikor megpróbálom elindítani.

02-18 14:38:59.237: HIBA/AndroidRuntime(9941): Oka: android.content.ActivityNotFoundException: Nem található a kifejezett tevékenységosztály: {PACKAGE_NAME/PACKAGE_NAME.Main}; deklaráltad ezt a tevékenységet az AndroidManifest.xml fájlban?

amely úgy tűnik, hogy nem tartozik ide (a hibaüzenet), úgy tűnik, több történt az alkalmazással, mint egyszerűen eltávolították a bejegyzést az indítóban.

köszönöm szépen srácok, minden megoldás ebben a helyzetben értékelhető :) üdvözlettel :)


Válaszok:


1

Nem telepítheti az alkalmazást, és nem rejtheti el az indítóikonját. Ahogy a tiédhez hasonlóan működő alkalmazásommal foglalkozom, nem próbálok harcolni az ikonok ellen, hanem éter ikon segítségével indítható el az alkalmazás. Nyilvánvalóan nem kell tennie a fő (ingyenes) alkalmazásban, és a kód, amely elindítja az alkalmazást a pro ikonjáról, a következőképpen fog kinézni:

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle bundle) {
    super.onCreate(bundle);
    // check if main app is installed. If yes then start it
    if (appExists()) {
        Log.d(TAG, "Started main app from Pro");
        Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("myapp://com.myapp.main"));
        startActivity(intent);
        finish();
    } else {
        // display view with link back to Market 
        onAppNotExists();
    }
}

Rajtad múlik, hogy megvalósítod-e a appExists()-t, ami valószínűleg egyfajta licencellenőrzés

Természetesen fejlesztheti alkalmazása közös kódját könyvtárprojektként és majd oszd szét 2 ízben a kód megkettőzése nélkül

18.02.2011
  • köszönöm, hogy megerősítetted a gondolataimat. eddig elrejtettem a profi ikont, ami tökéletesen működik, az indító csak 1 ikont mutat, de most meg akartam mutatni a felhasználóknak, hogy ők a pro verziót használják (és felhívom a figyelmüket az előnyökre ;)) Úgy tűnik, hogy lehetővé tegyék számukra egy külön profi ikon használatát, 2 ikon elkerülhetetlen. az összes többi esetében: összefoglaló: a licencalkalmazás elrejtése működik ;) főalkalmazás elrejtése. nem. köszönöm a választ! 19.02.2011

  • 2

    DE azalkalmazást nem lehet megtalálni a telefonon, elindítani, elindítani, még launcher pro tevékenységi parancsikonnal sem.

    Nem alkalmazás, hanem tevékenység.

    Tehát, ha a LAUNCHER tevékenysége BaseActivity, akkor létrehozhat valami hasonlót, mint a BaseFakeActivity (ne felejtse el LAUNCHER értékre állítani a manifestben a BaseActivity helyett), és amely egyetlen funkciója a BaseActivity elindítása, majd finish() magát.

    Mostantól elrejtheti BaseFakeActivity eszközét, de továbbra is kommunikálhat BaseActivity készülékével.

    Ui.: Ne felejtsd el tesztelni az alkalmazásod viselkedését, miután így csinálod ;)

    26.01.2013
  • hé ember, köszönöm szépen.. ez jól hangzik.. most csinálok egy kis átalakítást.. tökéletes tervnek hangzik, visszajelzést adok neked, és elfogadom a válaszodat, ha készen állok :) ma estére tervezve... : ) 09.02.2013
  • Új anyagok

    A rádiógomb ellenőrzött eseményének használata a jQueryben
    Ebben a cikkben látni fogjuk, hogyan kell dolgozni a jquery választógombbal ellenőrzött eseményeivel. A választógombok HTML gombok, amelyek segítenek kiválasztani egyetlen értéket egy csoportból...

    Körkörös függőségek megoldása terraformban adatforrásokkal – lépésről lépésre
    Mi az a körkörös függőségek Dolgozzunk egy egyszerű eseten, amikor az SQS-sor és az S3-vödör közötti körkörös függőség problémája van egy egymástól függő címkeérték miatt. provider..

    Miért érdemes elkezdeni a kódolást 2023-ban?
    01100011 01101111 01100100 01100101 — beep boop beep boop Világunk folyamatosan fejlődik a technológia körül, és naponta fejlesztenek új technológiákat a valós problémák megoldására. Amint..

    🎙 Random Noise #2  – Örökbefogadás és hit
    az analitika íratlan világának gondozása Szeretné, hogy ezek a frissítések a postaládájába kerüljenek? Iratkozzon fel itt . "Ha önvezető autókat gyártanak, akkor mi miért ne..

    A legrosszabb politika és prediktív modellek májátültetésre jelöltek számára az Egyesült Államokban
    A máj (vagy óangolul lifer) az emberi test legnehezebb belső szervére utal, amely csendesen működik a nap 24 órájában. Mit csinál a máj? 500 feladatot hajt végre a szervezet egészségének..

    5 webhely, amely 2022-ben fejleszti front-end fejlesztői készségeit
    Frontendmentor.io A tényleges projektek létrehozásával a Frontendmentor.io segítséget nyújt a front-end kódolási képességeinek fejlesztésében. A kódolást azután kezdheti meg, hogy..

    Mikor kell használni a Type-t az interfészhez képest a TypeScriptben?
    A TypeScript a JavaScript gépelt szuperkészlete, amely statikus gépelést ad a nyelvhez. Ez megkönnyíti a robusztus és karbantartható kód írását azáltal, hogy a hibákat a fordítási időben..