Per Intent aufgerufene App stürzt ab

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Per Intent aufgerufene App stürzt ab

    Hallo

    Ich stehe vor einem für mich ganz grossen Rätsel: Ich habe eine App geschrieben, die mit einem Intent eine weitere (funktionierende) App meines Smartphones öffnen soll. Das funktioniert im ersten Moment auch (Splashscreen der Fremd-App erscheint), aber nach einer halben Sekunde stürzt die Fremd-App ab (oder sie schliesst regulär). Scheint ein Bug in der Fremd-App zu sein. Aber: Rufe ich diese Fremdapp mit dem Icon auf dem Homescreen auf, funktioniert sie tadellos. Mehr noch: Ich habe u.a. die App "APK-Analyzer" (von Martin Styk) aus dem PlayStore installiert. Diese zeigt mir alle Activities der obigen problematischen App an. Es gibt davon nur eine einzige ausführbare. Man kann diese mit dem Button "Run" im APK-Analyzer ausführen, und auch das funktioniert ohne Probleme. Der APK-Analyzer kann also diese Drittapplikation per Intent aufrufen, mein Programm aber nicht. Das versteh' ich jetzt gar nicht. Kann mir das jemand erklären? In welche Richtung muss ich denken? Und natürlich: Wie kann ich diese (bis jetzt abstürzende) App korrekt aufrufen?

    Übrigens: Der Intent-Filter der obigen problematischen App ist standardmässig. Und von meinen etwa 100 Apps gibt's noch 2 weitere, die dieses Startverhalten zeigen (z.B. TripAdvisor, da erscheint nicht mal der Splashscreen, und das liegt nicht an einem Tippfehler meinerseits), alle andern lassen sich starten...

    Danke fürs Mitdenken!

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Desperate ()

  • Hallo
    dann zeige mal wie du den Intent zu Fremd App machst.
    Normalerweise macht man da einen impliziten Intent.

    Wie sieht der Intentfilder der Fremd App aus?

    Quellcode

    1. Intent intent = new Intent();
    2. intent.setAction(Intent.ACTION_MAIN);
    3. intent.addCategory(Intent.CATEGORY_LAUNCHER);
    4. intent.setComponent(new ComponentName(App_PACKAGE_NAME, App_CLASS_NAME));
    Ein Feedback auf Tipps ist auch schön. :P

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von jogimuc ()

  • Hallo jogimuc

    Hier mein Code:

    Quellcode

    1. Intent intent = new Intent(Intent.ACTION_MAIN);
    2. intent.addCategory(Intent.CATEGORY_LAUNCHER);
    3. intent.setClassName("com.interactivespace.fallerifallera","com.interactivespace.fallerifallera.FalleriFalleraActivity");
    4. startActivity(intent);


    Und das ist der Intent-Filter von FalleriFallera:

    Quellcode

    1. <activity
    2. android:configChanges="keyboardHidden|orientation|screenSize"
    3. android:label="@string/app_name"
    4. android:name=".FalleriFalleraActivity"
    5. android:theme="@style/Theme.Titanium">
    6. <intent-filter>
    7. <action android:name="android.intent.action.MAIN" />
    8. <category android:name="android.intent.category.LAUNCHER" />
    9. </intent-filter>
    10. </activity>
  • Neu

    solte eigentlich ok sein.

    Versuche es mal mit einem lehren Intent.
    nicht Intent intent = new Intent(Intent.ACTION_MAIN);

    sondern

    Intent intent = new Intent();
    intent.setAction(Intent.ACTION_MAIN);

    was passiert beim start?
    wo fürst du den Intent aus ?
    Ist der context richtig?
    Zum Schutz deiner App mache den start in einen Try catch Block
    Ein Feedback auf Tipps ist auch schön. :P
  • Neu

    Hallo jogimuc

    Ein leerer Intent bringt nichts. Würde mich auch überraschen, denn wie in der Original-Post #1 geschrieben: Die Fremdapp startet ja auf - aber stürzt eine halbe Sekunde nach Aufruf ab (oder terminiert regulär). Zur Klarheit: MEINE App stürzt nicht ab, nur die Fremdapp. Ich interpretiere das so: Mein Intent-Aufruf ist korrekt, die Kontrolle wird tatsächlich der Fremdapp übergeben, und somit ist diese selber und nicht meine App am Absturz der Fremdapp "schuld". Aber: vom App-Drawer aus und aus der App "APK-Analyzer" startet diese Fremdapp eben doch korrekt ohne Absturz auf, also liegt auch kein Programmierfehler in der Fremdapp vor. Wo steckt dann aber der Fehler?

    Um noch deine anderen Fragen zu beantworten:

    - Nach dem Start erscheint 0,5 Sec lang der Splashscreen der Fremdapp, dann stürzt diese (nicht meine) ab
    - Ausgeführt wird der Intent im onClick eines Buttons. Meine App ist äusserst simpel und besteht eigentlich nur aus zwei Buttons, die je eine andere Fremdapp aufrufen. Der andere Button meiner App funktioniert perfekt.
    - Richtiger Context: ähhh, da weiss ich als Anfänger nicht, was du meinst. Ist in meiner App - glaub ich - aber auch nicht nötig (?)
    - nicht verwunderlich: bei ausgetestetem try-catch wird der catch-Teil nie ausgeführt (die Fremdapp startet ja)
  • Neu

    Gleicher Effekt, wenn ich den Intent im onCreate ausführe: Beim Aufstart MEINER App blitzt der Splashscreen der Fremdapp eine halbe Sekunde auf, dann sehe ich meine eigenen zwei Buttons. Ich glaube wirklich nicht, dass es an MEINER App liegt, aber an der fremden offensichtlich auch nicht. Was kann es dann jedoch sein?

    Vielleicht hilft das noch weiter: Wenn ich meinen Button ein ZWEITES (oder drittes usw) Mal drücke, um die Fremdapp aufzustarten, passiert gar nichts mehr, ich sehe dann den Splashscreen der Fremdapp überhaupt nicht mehr.
  • Neu

    Ich entdecke nichts Aussergewöhnliches im LogCat über FalleriFallera. "my.apps4.singen" ist meine App, die FalleriFallera aufruft. Habe ein Galaxy S9 mit Android Oreo 8.0.0.

    08-11 00:56:19.989 4771-5562/? I/ActivityManager: START u0 {act=android.intent.action.MAIN typ=null flg=0x0 cmp=ComponentInfo{com.interactivespace.fallerifallera/com.interactivespace.fallerifallera.FalleriFalleraActivity}} from uid 10435
    08-11 00:56:20.002 4771-5948/? D/ActivityManagerPerformance: Received MSG_CFMS_HINT_AMS_SWITCH pkgName: com.interactivespace.fallerifallera
    08-11 00:56:20.016 4771-5562/? D/StorageManagerService: getExternalStorageMountMode : 1
    getExternalStorageMountMode : 3
    getExternalStorageMountMode : final mountMode=1, uid : 10228, packageName : com.interactivespace.fallerifallera
    08-11 00:56:20.016 4771-5562/? I/ApplicationPolicy: isApplicationExternalStorageWhitelisted:com.interactivespace.fallerifallera user:0
    08-11 00:56:20.016 4771-5562/? D/ActivityManager: package com.interactivespace.fallerifallera, user - 0 is SDcard whitelisted
    08-11 00:56:20.016 4771-5562/? I/ApplicationPolicy: isApplicationExternalStorageBlacklisted:com.interactivespace.fallerifallera user:0
    08-11 00:56:20.027 4771-5562/? I/ActivityManager: Start proc 21616:com.interactivespace.fallerifallera/u0a228 for activity com.interactivespace.fallerifallera/.FalleriFalleraActivity
    08-11 00:56:20.029 21616-21616/? I/SELinux: SELinux: seapp_context_lookup: seinfo=untrusted, level=s0:c512,c768, pkgname=com.interactivespace.fallerifallera
    08-11 00:56:20.054 4771-4977/? I/ActivityManager: DSS on for com.interactivespace.fallerifallera and scale is 1.0
    08-11 00:56:20.061 4771-4911/? D/ViewRootImpl@27b191d[fallerifallera]: setView = DecorView@3ced563[fallerifallera] TM=true MM=false
    08-11 00:56:20.064 4771-4911/? D/ViewRootImpl@27b191d[fallerifallera]: dispatchAttachedToWindow
    08-11 00:56:20.065 4771-4911/? V/WindowManager: Relayout Window{97eb792 u0 Splash Screen com.interactivespace.fallerifallera}: viewVisibility=0 req=1080x2004 WM.LayoutParams{(0,0)(fillxfill) sim=#20 ty=3 fl=#81830118 pfl=0x1000011 fmt=-3 wanim=0x10302fc vsysui=0x610 needsMenuKey=2 colorMode=0 naviIconColor=0}
    08-11 00:56:20.066 4771-5089/? D/GameManagerService: handleForegroundChange(). pkgName: com.interactivespace.fallerifallera, clsName: com.interactivespace.fallerifallera.FalleriFalleraActivity,FgActivityName:com.interactivespace.fallerifallera/.FalleriFalleraActivity
    sem_perfomance_mode: 0
    08-11 00:56:20.067 4771-5089/? D/GameManagerService: notifyResumePause(). pkg: com.interactivespace.fallerifallera, type: 4, isMinimized: false, isTunableApp: false
    notifyResumePause(). unexpected mPrevNotiType: -1
    08-11 00:56:20.071 4255-4255/? I/SurfaceFlinger: id=29 createSurf (1080x2220),1 flag=4, Splash Screen com.interactivespace.fallerifallera#0
    08-11 00:56:20.074 4771-4911/? D/ViewRootImpl@27b191d[fallerifallera]: Relayout returned: old=[0,0][0,0] new=[0,0][1080,2220] result=0x7 surface={valid=true 496173146112} changed=true
    08-11 00:56:20.075 4771-4977/? D/MARsPolicyManager: onPackageResumedFG pkgName = com.interactivespace.fallerifallera, userId = 0
    08-11 00:56:20.076 4771-4911/? D/ViewRootImpl@27b191d[fallerifallera]: MSG_RESIZED_REPORT: frame=Rect(0, 0 - 1080, 2220) ci=Rect(0, 72 - 0, 144) vi=Rect(0, 72 - 0, 144) or=1
    08-11 00:56:20.080 4771-9380/? D/GamePkgDataHelper: getGamePkgDataIncServer(). com.interactivespace.fallerifallera
    getSosPolicy(). com.interactivespace.fallerifallera
    08-11 00:56:20.084 4771-9380/? D/GameManagerService: identifyGamePackage. com.interactivespace.fallerifallera
    08-11 00:56:20.084 4771-9380/? D/GamePkgDataHelper: getGamePkgData(). com.interactivespace.fallerifallera
    08-11 00:56:20.085 4771-9380/? D/GameManagerService: identifyGamePackage. com.interactivespace.fallerifallera
    08-11 00:56:20.085 4771-9380/? D/GamePkgDataHelper: getGamePkgData(). com.interactivespace.fallerifallera
    08-11 00:56:20.086 4771-9380/? D/GameManagerService: identifyGamePackage. com.interactivespace.fallerifallera
    08-11 00:56:20.086 4771-9380/? D/GamePkgDataHelper: getGamePkgData(). com.interactivespace.fallerifallera
    08-11 00:56:20.087 4771-9380/? D/GameManagerService: identifyGamePackage. com.interactivespace.fallerifallera
    08-11 00:56:20.087 4771-9380/? D/GamePkgDataHelper: getGamePkgData(). com.interactivespace.fallerifallera
    08-11 00:56:20.089 4771-9380/? D/GameManagerService: identifyGamePackage. com.interactivespace.fallerifallera
    08-11 00:56:20.089 4771-9380/? D/GamePkgDataHelper: getGamePkgData(). com.interactivespace.fallerifallera
    08-11 00:56:20.105 4771-4911/? V/WindowManager: finishDrawingLocked: mDrawState=COMMIT_DRAW_PENDING Window{97eb792 u0 Splash Screen com.interactivespace.fallerifallera} in Surface(name=Splash Screen com.interactivespace.fallerifallera)
    08-11 00:56:20.143 4255-4255/? I/SurfaceFlinger: Display 0 HWC layers:
    type | handle | flag | format | source crop (l,t,r,b) | frame | name
    ------------+--------------+------+-----------+----------------------------+---------------------+------
    SolidColor | | 0000 | Unknown | -0.2 -0.2 -0.8 -0.8 | 0 0 1080 2220 | animation background stackId=1#0
    Client | 0x7db5c5baa0 | 0002 | RGBA_8888 | 0.0 0.0 1080.0 2076.0 | 0 0 1080 2076 | my.apps4.singen/my.apps.singen.MainActivity#0
    Device | 0x7db58400a0 | 0000 | RGBA_8888 | 0.0 0.0 46.0 2220.0 | 1034 0 1080 2220 | Splash Screen com.interactivespace.fallerifallera#0
    Device | 0x7db5c5b1e0 | 0000 | RGBA_8888 | 0.0 0.0 84.0 84.0 | 0 1799 84 1883 | #1
    Device | 0x7db5c58e00 | 0000 | RGBA_8888 | 0.0 0.0 1080.0 72.0 | 0 0 1080 72 | StatusBar#0
    Device | 0x7db583f460 | 0000 | RGBA_8888 | 0.0 0.0 67.0 445.0 | 0 216 67 661 | com.samsung.android.app.cocktailbars[...]ktailbarse
    08-11 00:56:20.211 4771-4967/? D/MdnieScenarioControlService: packageName : com.interactivespace.fallerifallera className : com.interactivespace.fallerifallera.FalleriFalleraActivity
    08-11 00:56:20.336 4255-4255/? I/SurfaceFlinger: Display 0 HWC layers:
    type | handle | flag | format | source crop (l,t,r,b) | frame | name
    ------------+--------------+------+-----------+----------------------------+---------------------+------
    Device | 0x7db5c5baa0 | 0002 | RGBA_8888 | 38.0 0.0 1080.0 2076.0 | 0 0 1042 2076 | my.apps4.singen/my.apps.singen.MainActivity#0
    SolidColor | | 0000 | Unknown | -0.2 -0.2 -0.8 -0.8 | 0 0 1080 2220 | animation background stackId=1#0
    Device | 0x7db58400a0 | 0000 | RGBA_8888 | 0.0 0.0 1011.0 2220.0 | 69 0 1080 2220 | Splash Screen com.interactivespace.fallerifallera#0
    Device | 0x7db5c5b1e0 | 0000 | RGBA_8888 | 0.0 0.0 84.0 84.0 | 0 1799 84 1883 | #1
    Device | 0x7db5c58e00 | 0000 | RGBA_8888 | 0.0 0.0 1080.0 72.0 | 0 0 1080 72 | StatusBar#0
    Device | 0x7db583f460 | 0000 | RGBA_8888 | 0.0 0.0 67.0 445.0 | 0 216 67 661 | com.samsung.android.app.cocktailbars[...]ktailbarse
    rvice.CocktailBarService#0
    Device | 0x7db58407a0 | 0000 | RGBA_8888 | 0.0 0.0 1080.0 144.0 | 0 2076 1080 2220 | NavigationBar#0
    08-11 00:56:20.352 4255-4255/? I/SurfaceFlinger: Display 0 HWC layers:
    type | handle | flag | format | source crop (l,t,r,b) | frame | name
    ------------+--------------+------+-----------+----------------------------+---------------------+------
    Device | 0x7db5c5baa0 | 0002 | RGBA_8888 | 75.0 0.0 1080.0 2076.0 | 0 0 1005 2076 | my.apps4.singen/my.apps.singen.MainActivity#0
    Device | 0x7db58400a0 | 0000 | RGBA_8888 | 0.0 0.0 1073.0 2220.0 | 7 0 1080 2220 | Splash Screen com.interactivespace.fallerifallera#0
    Device | 0x7db5c5b1e0 | 0000 | RGBA_8888 | 0.0 0.0 84.0 84.0 | 0 1799 84 1883 | #1
    Device | 0x7db5c58e00 | 0000 | RGBA_8888 | 0.0 0.0 1080.0 72.0 | 0 0 1080 72 | StatusBar#0
    Device | 0x7db583f460 | 0000 | RGBA_8888 | 0.0 0.0 67.0 445.0 | 0 216 67 661 | com.samsung.android.app.cocktailbars[...]ktailbarservice.CocktailBarService#0
    Device | 0x7db58407a0 | 0000 | RGBA_8888 | 0.0 0.0 1080.0 144.0 | 0 2076 1080 2220 | Naviga
    08-11 00:56:20.732 4771-4911/? I/WindowManager: Destroying surface Surface(name=Splash Screen com.interactivespace.fallerifallera) called by com.android.server.wm.WindowStateAnimator.destroySurface:2465 com.android.server.wm.WindowStateAnimator.destroySurfaceLocked:967 com.android.server.wm.WindowState.destroyOrSaveSurfaceUnchecked:3660 com.android.server.wm.WindowState.destroySurface:3608 com.android.server.wm.AppWindowToken.destroySurfaces:722 com.android.server.wm.AppWindowToken.destroySurfaces:706 com.android.server.wm.WindowState.onExitAnimationDone:5285 com.android.server.wm.AppWindowAnimator.stepAnimationLocked:508
    08-11 00:56:20.732 4255-5870/? I/SurfaceFlinger: id=29 Removed Splash Screen com.interactivespace.fallerifallera#0 (3/10)
    08-11 00:56:20.739 4255-5870/? I/SurfaceFlinger: id=29 Removed Splash Screen com.interactivespace.fallerifallera#0 (-2/10)
    08-11 00:56:20.740 4771-4911/? D/ViewRootImpl@27b191d[fallerifallera]: dispatchDetachedFromWindow
    08-11 00:56:20.741 4771-4911/? D/InputEventReceiver: channel '97eb792 Splash Screen com.interactivespace.fallerifallera (client)' ~ Disposing input event receiver.
    08-11 00:56:20.741 4771-4911/? D/InputEventReceiver: channel '97eb792 Splash Screen com.interactivespace.fallerifallera (client)' ~NativeInputEventReceiver.
    08-11 00:56:20.749 4255-4255/? I/Layer: id=29 onRemoved Splash Screen com.interactivespace.fallerifallera#0
  • Neu

    Hi auf die schnelle kann ich da jetzt nichts erkenn. Flags benutzt du keine wie ich sehe.

    Versuche es mal auf einen Handy mit nicht Android 8, bei Oreo haben sie glaube auch wieder an den Intens gedreht.
    Besonders bei den Impliziten denn die galten als sicherheits- Risiko.
    Setze auch mal TargetSDK im Gradle File auf API 25 Nougat .

    Habe versucht in dem Quellcode von APK-Analyzer nach dem Intent zusuchen er benutzt scheinbar Nativen Code dazu.

    Hast du den schon die Flags getestet?

    Auch interesant könnte das Logcat beim start der fremd app aus dem Launcher sein und aus dem APK-Aanalyzer.
    Ein Feedback auf Tipps ist auch schön. :P
  • Neu

    Hallo Jogimuc

    Habe noch ein Uralt-Galaxy-S4 mit Android 5.0.1. Auch dort: Absturz nach einem Bruchteil einer Sekunde, wenn ich Falleri Fallera per Intent aufrufe. TargetSDK 25 nützt auch nichts.
    Bei den Flags kenn ich mich noch nicht aus (erst die 2. App in meinem Leben, die ich schreibe ...). Da müsste ich noch detailiertere Anleitung haben. Gefühlsmässig gebe ich den Flags aber keine grosse Chancen.
    Je länger desto mehr denke ich nämlich, dass hier ein Android-Problem vorliegt. Ich habe meine App unterdessen auf den vom AndroidStudio vorgegebenen Startrahmen reduziert und nur noch im onCreate die 4 Zeilen aus Posting #3 ergänzt - fehlerhaft kann das ja nicht sein. Unterdessen habe ich auch gemerkt, dass von meinen über 200 Apps ganze vier genau das selbe Verhalten wie Falleri Fallera haben: DogScanner, Echtreim, Thermometer++, alle aus dem PlayStore. Für über 50 andere Apps habe ich den Aufstart getestet - problemlos. Also liegt es wohl auch nicht an der App Falleri Fallera, sondern an einem prinzipiellen Problem von Android selbst. Langsam wird's für mich ein Mysterium...
    Die LogCats vom Laucher/APK-Analyzer werd' ich mir noch anschauen, aber da es ja auf diese Weise keine Probleme gibt, erhoffe ich mir davon nicht viel.
  • Neu

    hi bei dem log vom luanger hoffe ich das da auch so eine Meding wie diese kommt

    08-11 00:56:19.989 4771-5562/? I/ActivityManager: START u0 {act=android.intent.action.MAIN typ=null flg=0x0 cmp=ComponentInfo{com.interactivespace.fallerifallera/com.interactivespace.fallerifallera.FalleriFalleraActivity}} from uid 10435

    hast du in deimner App Log verwendet oder kommt das vom System selber?
    Ein Feedback auf Tipps ist auch schön. :P
  • Neu

    was ist das überhaupt für eine App wo kommt die her?

    Ok habe sie bei Google Play gefunden nicht kostenlos möchte sie nicht kaufen.

    übrigens kann ich im APK-Analyzer keine App starten meine nicht und auch andere nicht. wie machst du das?

    was mir aber auch an den beiden apps DogScanner,Thermometer++ auffält ist das sie beide sofort eine Permission abfragen.
    die anderen habe ich nicht getestet.


    versuche es wirklich mal mit

    intent.setComponent(new ComponentName("com.interactivespace.fallerifallera","com.interactivespace.fallerifallera.FalleriFalleraActivity"));

    und nicht mit

    intent.setClassName("com.interactivespace.fallerifallera","com.interactivespace.fallerifallera.FalleriFalleraActivity");
    Ein Feedback auf Tipps ist auch schön. :P

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von jogimuc ()

  • Neu

    ???

    Doch, Falleri Fallera (ein Liederbuch) ist gratis: play.google.com/store/apps/det…ctivespace.fallerifallera

    Hast du den gleichen APK-Analyzer? Gibt mehrere mit diesem Namen. Ich habe play.google.com/store/apps/det…k.styk.martin.apkanalyzer.
    Dort in der App-Liste Falleri Fallera antippen, nach links wischen zu "Activities", dann die DUNKELgraue Zeile "Run activity" tippen (ist ein Button!)
  • Neu

    ja ich habe den gleichen Analyzer. Denn Button habe ich auch nach einem klick kommt, er kann die app nicht starten in einem toast.
    Das ist bei allen apps so. habe es auf einen älteren Handy mit Android 6.

    Das es am gerooteten Handy liegt kann ich nicht glauben.
    Ich teste es heute abend auf einen anderen mal.

    play.google.com/store/apps/det…ctivespace.fallerifallera ist nicht kostenlos 2,09 Euro
    Ein Feedback auf Tipps ist auch schön. :P

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von jogimuc ()

  • Neu

    Stimmt, da hat mich meine Erinnerung getäuscht: "Falleri Fallera" kostet. Also nehmen wir ein anderes Ziel: Thermometer++, hat nur 7 activities, eine davon ausführbar mit APK-Analyzer, siehe Screenshot im Anhang. So bring ich die App zum Laufen, aber mit einer eigenen App und einem Intent stürzt sie sofort ab. Wenn du das nachvollziehen könntest, wäre das super und würde weiterhelfen. Denn es könnte ja auch ein spezifisches Problem meines Handys sein, z.B. des Nova-Launchers, den ich installiert habe (meins ist hingegen nicht gerootet). Höre gerne von dir, was du erlebst.

    PS: Dein Tipp "intent.setComponent" statt "intent.setClassName" fruchtet nicht :-(.
    Bilder
    • 2018-08-11-12-43-04.png

      32,87 kB, 266×429, 13 mal angesehen

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Desperate ()

  • Neu

    ja genau diese seite oder ansicht habe ich auch nur wenn ich den Button Klicke sagt er das er die Activity nicht starten kann.
    wie ich schon sagte werde ich es mit einen anderen Handy testen.
    Bin momentan auf arbeit.

    Wie gesagt will die app gleich am anfang Permission haben das ist kein guter Programmier stiel von der App.
    bin mir da auch nicht sicher ob es daran liegt weil dafür giebt es auch Flags.
    deshalb wolte ich wissen wie der Start aus dem Luanger ist.
    um zu sehen wie das das Flag gesetzt wird.
    Ein Feedback auf Tipps ist auch schön. :P
  • Neu

    Hallo jogimuc

    Kein Stress, pressiert nicht. Programmieren ist nicht mein Job, sondern mein Hobby :)
    Im Anhang noch das Log-File während des Aufrufs aus dem APK-Analyzer von "Falleri Fallera" (damit du mit Posting #9 vergleichen kannst. Aus AndroidStudio kopiert). Bei 14:08:31:810 bzw. 14:08:32:352 findest du, was du suchtest. Auch der zweite Eintrag für die Zeitmarke 14:08:31.836 ist interessant. Brauchst du weitere Logcats, sag's mir.

    Ich hab heute Morgen auch die drei Programmierer von FalleriFallera, Dog Scanner und Echtreim angeschrieben, aus Hamburg habe ich zu Echtreim schon eine Antwort, mit der ich allerdings nicht sehr viel anfangen kann:

    "Die Splashscreen ist eine erste Activity, der nächste dadd eben die nächste.Das ganze ist mit Titanium gebaut und ich bin mir da nicht ganz sicher. Ich kann die App auch aus einer Notification aufrufen, und das ist auch ein PendingIntent."

    Was mir auffällt ist aber, dass es hier wie auch im angehängten Logcat bei Falleri Fallera um Titanium geht. Da haben beide Problem-App etwas gemeinsames. Mal schauen, ob bei dir heute Abend Thermometer++ oder Echtreim von einer eigenen App aufgerufen werden können. Hier die nötigen Zeilen für den Intent dieser App:

    Quellcode

    1. Intent intent = new Intent();
    2. intent.setAction(Intent.ACTION_MAIN);
    3. intent.addCategory(Intent.CATEGORY_LAUNCHER);
    4. intent.setComponent(new ComponentName("amuseworks.thermometer","amuseworks.thermometer.MainActivity"));
    5. //intent.setComponent(new ComponentName("de.appwerft.echtreim","de.appwerft.echtreim.EchtreimActivity"));
    6. startActivity(intent);

    Viel Erfolg!
    Dateien
  • Neu

    So also ich kann die App starten.

    Du darfst keine Action angeben die wird beim Start vom Launcher auch nicht angegeben.

    Siehe Log Dateien


    Launcher:

    08-11 14:08:31.810 4779-4802/? I/ActivityManager: START u0 {act=null typ=null flg=0x0 cmp=ComponentInfo{com.interactivespace.fallerifallera/com.interactivespace.fallerifallera.FalleriFalleraActivity}} from uid 10337


    Log aus deiner App:

    08-11 00:56:19.989 4771-5562/? I/ActivityManager: START u0 {act=android.intent.action.MAIN typ=null flg=0x0 cmp=ComponentInfo{com.interactivespace.fallerifallera/com.interactivespace.fallerifallera.FalleriFalleraActivity}} from uid 10435


    Mit der Action im Intent geht es nicht.


    Quellcode

    1. public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    2. @Override
    3. protected void onCreate(Bundle savedInstanceState) {
    4. super.onCreate(savedInstanceState);
    5. setContentView(R.layout.activity_main);
    6. Button bt = (Button) findViewById(R.id.button);
    7. bt.setOnClickListener(this);
    8. }
    9. @Override
    10. public void onClick(View v) {
    11. Intent intent = new Intent();
    12. // intent.setAction(Intent.ACTION_MAIN);
    13. intent.addCategory(Intent.CATEGORY_LAUNCHER);
    14. intent.setComponent(new ComponentName("amuseworks.thermometer","amuseworks.thermometer.MainActivity"));
    15. //intent.setComponent(new ComponentName("de.appwerft.echtreim","de.appwerft.echtreim.EchtreimActivity"));
    16. MainActivity.this.startActivity(intent);
    17. }
    18. }
    Alles anzeigen
    selbst wenn du die Category weg läst geht es

    wichtig ist der ComponentName.

    eine Cateegory wird beim Launcher auch nicht angegeben.
    Ein Feedback auf Tipps ist auch schön. :P

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von jogimuc ()