2014-07-24 2 views
0

broadcastReceiver의 URI를 Activity으로 보내려고하지만 의도가 새로운 활동에 도착하지 않습니다.활동에 대한 URI 브로드 캐스트

public void onReceive(Context context, Intent intent) { 
    String i = intent.getDataString(); 
    uri = Uri.parse(i); 
    Intent o = new Intent(context,Image.class); 
    o.putExtra("ImageUri", uri); 
    context.sendBroadcast(o); 
+0

브로드 캐스트 수신 방법을 처리해야합니다. 당신이 그것을 어디에서받을 지 선언하지 않고 보낼 수는 없습니다 –

+0

무슨 뜻입니까? – user3856158

답변

0

당신은 활동과 직접 통신 할 수 ContextsendBroadcast()을 사용할 수 없습니다.

+0

그럼 어떻게 연락 할 수 있습니까? – user3856158

+0

@ user3856158 : 'FLA_ACTIVITY_REORDER_TO_FRONT'가있는'startActivity() '를 사용하여 인스턴스를 이미 존재하는 경우 재사용 할 수 있습니다. 액티비티가 이미 존재하지 않으면'onCreate()'(액티비티가 이미 존재하지 않으면'getIntent()를 통해) 또는'onNewIntent()'(액티비티가 이미 존재한다면 전달 된 매개 변수로) . 특히 활동이 존재하지 않을 수도 있습니다 (예 : 존재하는 경우 활동에 데이터를 전달하고, 그렇지 않으면'알림 '을 표시하는 경우), 다양한 다른 가능성이 있습니다. – CommonsWare

+0

broadcastReceiver의 startActivity? 이게 무슨 뜻인지 알지 못한다면 broadcastReceiver를 확장하고 startActivity에 실제 활동이 필요하기 때문에 정의되지 않았다는 오류가 발생합니다. – user3856158

관련 문제