Autore Topic: Info apertura di un altra app  (Letto 649 volte)

Offline domy18

  • Nuovo arrivato
  • *
  • Post: 36
  • Respect: 0
    • Mostra profilo
    • Guadagnare con le App
  • Dispositivo Android:
    samsung s3
  • Sistema operativo:
    Android
Info apertura di un altra app
« il: 11 Maggio 2014, 02:08:56 CEST »
0
Ciao a tutti vorrei aprire un'altra applicazione in una app, per intenderci:
Android – Start Another Activity “of Another Application”

Ho provato ma l'applicazione va in crash

Offline Aaaaabbbb

  • Utente junior
  • **
  • Post: 55
  • Respect: +3
    • Google+
    • pietmau
    • Mostra profilo
  • Dispositivo Android:
    Nexus 7, Samsung GT-S5830i, LG Optimus, Galaxy Tab 3
  • Play Store ID:
    aaaaaaaaaaaa
  • Sistema operativo:
    Win, Ubuntu
Re:Info apertura di un altra app
« Risposta #1 il: 11 Maggio 2014, 08:18:44 CEST »
0
Ciao,
Per piacere puoi postare il tuo Logcat? (e magari il pezzo di codice in questione)
Ciao!
« Ultima modifica: 11 Maggio 2014, 08:24:42 CEST da Maurizio Pietrantuono »

Offline domy18

  • Nuovo arrivato
  • *
  • Post: 36
  • Respect: 0
    • Mostra profilo
    • Guadagnare con le App
  • Dispositivo Android:
    samsung s3
  • Sistema operativo:
    Android
Re:Info apertura di un altra app
« Risposta #2 il: 11 Maggio 2014, 12:15:08 CEST »
0
Grazie per la celere risposta,


Ecco il log:

05-11 00:28:02.335: W/EGL_genymotion(2125): eglSurfaceAttrib not implemented
05-11 00:29:18.051: D/AndroidRuntime(2174): Shutting down VM
05-11 00:29:18.051: W/dalvikvm(2174): threadid=1: thread exiting with uncaught exception (group=0xa4be6648)
05-11 00:29:18.051: E/AndroidRuntime(2174): FATAL EXCEPTION: main
05-11 00:29:18.051: E/AndroidRuntime(2174): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.hmkcode.android/com.hmkcode.android.AnotherActivity}; have you declared this activity in your AndroidManifest.xml?
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1628)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.app.Instrumentation.execStartActivity(Instrumentation.java:1424)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.app.Activity.startActivityForResult(Activity.java:3390)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.app.Activity.startActivityForResult(Activity.java:3351)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.app.Activity.startActivity(Activity.java:3587)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.app.Activity.startActivity(Activity.java:3555)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at com.hmkcode.android.MainActivity.onClick(MainActivity.java:32)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.view.View.performClick(View.java:4240)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.view.View$PerformClick.run(View.java:17721)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.os.Handler.handleCallback(Handler.java:730)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.os.Handler.dispatchMessage(Handler.java:92)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.os.Looper.loop(Looper.java:137)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at android.app.ActivityThread.main(ActivityThread.java:5103)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at java.lang.reflect.Method.invokeNative(Native Method)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at java.lang.reflect.Method.invoke(Method.java:525)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
05-11 00:29:18.051: E/AndroidRuntime(2174):    at dalvik.system.NativeStart.main(Native Method)
05-11 00:30:05.803: W/EGL_genymotion(2226): eglSurfaceAttrib not implemented
05-11 00:30:32.499: W/EGL_genymotion(2275): eglSurfaceAttrib not implemented
05-11 00:30:49.495: D/AndroidRuntime(2324): Shutting down VM
05-11 00:30:49.495: W/dalvikvm(2324): threadid=1: thread exiting with uncaught exception (group=0xa4be6648)
05-11 00:30:49.495: E/AndroidRuntime(2324): FATAL EXCEPTION: main
05-11 00:30:49.495: E/AndroidRuntime(2324): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.hmkcode.android/com.hmkcode.android.AnotherActivity}; have you declared this activity in your AndroidManifest.xml?
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1628)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.app.Instrumentation.execStartActivity(Instrumentation.java:1424)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.app.Activity.startActivityForResult(Activity.java:3390)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.app.Activity.startActivityForResult(Activity.java:3351)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.app.Activity.startActivity(Activity.java:3587)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.app.Activity.startActivity(Activity.java:3555)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at com.hmkcode.android.MainActivity.onClick(MainActivity.java:32)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.view.View.performClick(View.java:4240)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.view.View$PerformClick.run(View.java:17721)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.os.Handler.handleCallback(Handler.java:730)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.os.Handler.dispatchMessage(Handler.java:92)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.os.Looper.loop(Looper.java:137)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at android.app.ActivityThread.main(ActivityThread.java:5103)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at java.lang.reflect.Method.invokeNative(Native Method)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at java.lang.reflect.Method.invoke(Method.java:525)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
05-11 00:30:49.495: E/AndroidRuntime(2324):    at dalvik.system.NativeStart.main(Native Method)
05-11 00:31:52.483: W/EGL_genymotion(2375): eglSurfaceAttrib not implemented
05-11 00:39:04.619: W/EGL_genymotion(2439): eglSurfaceAttrib not implemented
05-11 00:39:53.231: D/AndroidRuntime(2489): Shutting down VM
05-11 00:39:53.231: W/dalvikvm(2489): threadid=1: thread exiting with uncaught exception (group=0xa4be6648)
05-11 00:39:53.231: E/AndroidRuntime(2489): FATAL EXCEPTION: main
05-11 00:39:53.231: E/AndroidRuntime(2489): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.hmkcode.android/com.hmkcode.android.AnotherActivity}; have you declared this activity in your AndroidManifest.xml?
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1628)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.app.Instrumentation.execStartActivity(Instrumentation.java:1424)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.app.Activity.startActivityForResult(Activity.java:3390)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.app.Activity.startActivityForResult(Activity.java:3351)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.app.Activity.startActivity(Activity.java:3587)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.app.Activity.startActivity(Activity.java:3555)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at com.hmkcode.android.MainActivity.onClick(MainActivity.java:66)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.view.View.performClick(View.java:4240)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.view.View$PerformClick.run(View.java:17721)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.os.Handler.handleCallback(Handler.java:730)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.os.Handler.dispatchMessage(Handler.java:92)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.os.Looper.loop(Looper.java:137)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at android.app.ActivityThread.main(ActivityThread.java:5103)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at java.lang.reflect.Method.invokeNative(Native Method)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at java.lang.reflect.Method.invoke(Method.java:525)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
05-11 00:39:53.231: E/AndroidRuntime(2489):    at dalvik.system.NativeStart.main(Native Method)
05-11 00:41:31.819: W/EGL_genymotion(2540): eglSurfaceAttrib not implemented


Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Info apertura di un altra app
« Risposta #3 il: 11 Maggio 2014, 12:29:49 CEST »
0
Citazione
05-11 00:29:18.051: E/AndroidRuntime(2174): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.hmkcode.android/com.hmkcode.android.AnotherActivity}; have you declared this activity in your AndroidManifest.xml?

Come dice il LogCat spesso e volentieri ci si dimentica di dichiarare l'altra activity nel manifest. E' il tuo caso?
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline domy18

  • Nuovo arrivato
  • *
  • Post: 36
  • Respect: 0
    • Mostra profilo
    • Guadagnare con le App
  • Dispositivo Android:
    samsung s3
  • Sistema operativo:
    Android
Re:Info apertura di un altra app
« Risposta #4 il: 11 Maggio 2014, 12:35:41 CEST »
0
questo è il manifest:

Citazione
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.hmkcode.android"
    android:versionCode="1"
    android:versionName="1.0" >
 
    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />
 
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
 
        <activity
            android:name="com.hmkcode.android.MainActivity"
            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.hmkcode.android.AnotherActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="appinventor.ai_astedondy.Quiz_Gol" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
    </application>
 
</manifest>

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Info apertura di un altra app
« Risposta #5 il: 11 Maggio 2014, 14:32:04 CEST »
0
Forse non cambia niente, ma prova a cambiare il "name" in questo modo:

Codice (XML): [Seleziona]
 <activity  android:name="AnotherActivity"
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline domy18

  • Nuovo arrivato
  • *
  • Post: 36
  • Respect: 0
    • Mostra profilo
    • Guadagnare con le App
  • Dispositivo Android:
    samsung s3
  • Sistema operativo:
    Android
Re:Info apertura di un altra app
« Risposta #6 il: 12 Maggio 2014, 00:02:58 CEST »
0
Ok, adesso provo, ma io vorrei aprire un'app che ha questo package appinventor.ai_astedondy.Quiz_Gol

Grazie

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Info apertura di un altra app
« Risposta #7 il: 12 Maggio 2014, 07:22:58 CEST »
0
Ok, adesso provo, ma io vorrei aprire un'app che ha questo package appinventor.ai_astedondy.Quiz_Gol

Ma secondo il LogCat stai cercando di aprire un'activity della tua app, rileggi il messaggio di errore.

Per aprire una activity di un'altra app, non serve dichiararla nel manifest, ma deve essere impostato l'Intent corretto (quello per l'activity dell'altra app) e l'altra app deve aver dichiarato il permesso di essere aperta da altre app.
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline pup3770

  • Utente junior
  • **
  • Post: 89
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy s3
  • Sistema operativo:
    Android
Re:Info apertura di un altra app
« Risposta #8 il: 12 Maggio 2014, 12:10:19 CEST »
0
Mi associo alla discussione e ti dico che per aprire un'Activity sempre della tua App basta utilizzare, e lo puoi mettere in fondo al codice ".java" le righe:

Codice (Java): [Seleziona]
//Collegamento alla Activity "Coordinate" mediante pressione del bottone
                        public void ricavaCoordinate (View view){
                                 
                        Intent coordinate;
                 
                        coordinate = new Intent (this, Coordinate.class);
                 
                        startActivity(coordinate);
                        }

e ad esempio se vuoi che premendo un bottone ti apra quell'Activity, basta che nel layout inserisci il codice:

Codice (XML): [Seleziona]
<Button
       android:id="@+id/calcola"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignBaseline="@+id/contatti"
       android:layout_alignBottom="@+id/contatti"
       android:layout_alignParentLeft="true"
       android:layout_marginLeft="40dp"
       android:onClick="ricavaCoordinate"
       android:text="Calcola" />

non fare caso alle righe:
Codice (XML): [Seleziona]
android:layout_alignBaseline="@+id/contatti"
        android:layout_alignBottom="@+id/contatti"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="40dp"

perchè stanno ad indicare che ho allineato il bottone rispetto un'altro bottone, in questo caso il bottone "contatti".

Quindi ti troverai un layout in cui c'è un bottone che si chiamerà "Calcola", se pigi tale bottone in automatico ti riporterà nell'Activity "Coordinate.class" che è (nel mio caso) il nome del file "Coordinate.java" in cui ci sta il codice per rilevare le coordinate.

Offline domy18

  • Nuovo arrivato
  • *
  • Post: 36
  • Respect: 0
    • Mostra profilo
    • Guadagnare con le App
  • Dispositivo Android:
    samsung s3
  • Sistema operativo:
    Android
Re:Info apertura di un altra app
« Risposta #9 il: 12 Maggio 2014, 15:55:41 CEST »
0
Grazie per la risposta, ma se vorrei aprire un'altra app?


Mi associo alla discussione e ti dico che per aprire un'Activity sempre della tua App basta utilizzare, e lo puoi mettere in fondo al codice ".java" le righe:

Codice (Java): [Seleziona]
//Collegamento alla Activity "Coordinate" mediante pressione del bottone
                        public void ricavaCoordinate (View view){
                                 
                        Intent coordinate;
                 
                        coordinate = new Intent (this, Coordinate.class);
                 
                        startActivity(coordinate);
                        }

e ad esempio se vuoi che premendo un bottone ti apra quell'Activity, basta che nel layout inserisci il codice:

Codice (XML): [Seleziona]
<Button
       android:id="@+id/calcola"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignBaseline="@+id/contatti"
       android:layout_alignBottom="@+id/contatti"
       android:layout_alignParentLeft="true"
       android:layout_marginLeft="40dp"
       android:onClick="ricavaCoordinate"
       android:text="Calcola" />

non fare caso alle righe:
Codice (XML): [Seleziona]
android:layout_alignBaseline="@+id/contatti"
        android:layout_alignBottom="@+id/contatti"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="40dp"

perchè stanno ad indicare che ho allineato il bottone rispetto un'altro bottone, in questo caso il bottone "contatti".

Quindi ti troverai un layout in cui c'è un bottone che si chiamerà "Calcola", se pigi tale bottone in automatico ti riporterà nell'Activity "Coordinate.class" che è (nel mio caso) il nome del file "Coordinate.java" in cui ci sta il codice per rilevare le coordinate.

Offline R0om

  • Nuovo arrivato
  • *
  • Post: 19
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Asus tf101g
  • Sistema operativo:
    windows8
Re:Info apertura di un altra app
« Risposta #10 il: 12 Maggio 2014, 21:20:04 CEST »
0
prova cosi
Codice (Java): [Seleziona]
Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("il tuo package");
startActivity(LaunchIntent);

Offline pup3770

  • Utente junior
  • **
  • Post: 89
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy s3
  • Sistema operativo:
    Android
Re:Info apertura di un altra app
« Risposta #11 il: 13 Maggio 2014, 00:31:37 CEST »
0
Codice: [Seleziona]
Ciao a tutti vorrei aprire un'altra applicazione in una app, per intenderci:Android – Start Another Activity “of Another Application”Ho provato ma l'applicazione va in crash
Ma forse vuoi che se ad esempio c'è un numero di telefono e l'utente ci clicca viene mostrato il messaggio con l'opzione di chiamare o mandare un sms tipo quando nelle pagine web ci sono i numeri di telefono e quando clicchi ti apre l'applicazionedi ddefault di Android per telefonare "Telefono"?

E ti serve questo ho la soluzione.  Adesso sono dal tel ma domani eventualmente te la cerco nelle mie app