mam ten problem w ICS, ale nie w poprzednich wersjach:Odbiornik radiowy onReceive() nigdy nie nazywa
Od app1, przesyłam transmisję i próbuje je otrzymać w App 2 aktywności. Jednak funkcja onReceive nigdy nie jest wywoływana w działaniu aplikacji 2.
Nie mogę zrozumieć, co to jest onReceive tego bloku, ponieważ zostałem wybrany poprawnie.
biegnę, a potem BroadcastSend
Każda pomoc, która pomoże mi rozwiązać ten jest cenione BroadcastReceive.
Apl1 wysłać aktywność
public class BroadcastSend extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Intent i = new Intent();
i.setAction("edu.ius.rwisman.custom.intent.action.TEST");
i.putExtra("url","ww.ius.edu");
sendBroadcast(i);
}
App 2 otrzymują Aktywność
public class BroadcastReceive extends BroadcastReceiver{
// Display an alert that we've received a message.
@Override
public void onReceive(Context context, Intent intent){
System.out.println("Inside onReceive");
String url = intent.getExtras().getString("url");
Toast.makeText(context, "BroadcastReceive:"+url, Toast.LENGTH_SHORT).show();
}
Manifest App 2
<?xml version="1.0" encoding="utf-8"?>
<application android:icon="@drawable/icon" android:label="@string/app_name">
<receiver android:name="edu.ius.rwisman.BroadcastReceive.BroadcastReceive" android:enabled="true" android:exported="true">
<intent-filter>
<action android:name="edu.ius.rwisman.custom.intent.action.TEST"/>
</intent-filter>
</receiver>
</application>
dziękuję, że to rozwiązało problem. ale najpierw uruchamiamy działanie receive, a następnie wysyłamy. to dlaczego stanęliśmy w obliczu tego problemu? – user264953
Aplikacje znajdują się w stanie zatrzymania po ich pierwszej instalacji, ale nie są jeszcze uruchomione, a gdy są ręcznie zatrzymywane przez użytkownika (w aplikacji Zarządzanie aplikacjami) ... zobacz ten http://developer.android.com/sdk/android- 3.1.html # launchcontrols – 5hssba
ale jak dołączyć tę flagę do manifestu podczas rejestrowania transmisji –