1

질문은 제목에서 꽤 많이 있습니다. 실제로 공유 작업을 시작하지 않고 백그라운드에서 AsyncTask 또는 공유 활동의 의도 데이터를 시작하고 실행할 수 있는지 알고 싶습니다. 몇 가지 정보를 찾았지만, 내가 찾은 유일한 것은 앱을 사용하여 서비스를 등록하는 방법입니다. 보너스 질문 :활동을 표시하지 않고 공유 활동을 통해 AsyncTask를 시작할 수 있습니까?

<activity android:name=".ShareActivity"> 
     <intent-filter> 
      <action android:name="android.intent.action.SEND" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <data android:mimeType="image/*" /> 
     </intent-filter> 
</activity> 

덕분에 많은 : 나는 또한 통지 또는 AsyncTask를 완료시 화면에 작은 사라지는 텍스트 상자를 표시 할 수 있습니다/또한 혼란을 방지하기 위해

이 내가 공유하는 활동을 의미하는 것입니다 사전에

+0

그래서이 이벤트를 유발하는 것은 무엇입니까? 버튼을 클릭 하시겠습니까? 이 작업이 실행될 때 표시되는 내용/실행중인 활동 네, 끝나면 뭔가를 보여줄 수 있습니다. –

+0

사용자가 내 앱과 무언가를 공유하려고 할 때 이벤트가 발생합니다. http://www.guidingtech.com/assets/postimages/2012/12/cloudsend-to-share-files-on-Android-1.png . 기본적으로 정상적인 공유 컨텍스트 메뉴를 통해. 대개 ShareActivity가 시작되도록 트리거하지만 내 앱의 ShareActivity를 열지 않고도이를 무시하고 일부 작업을 실행하고 싶습니다. –

답변

0

당신은 왜 다른 수업에서 공유 방법을 가지고 있지 않습니까? 그러면 활동들이 거기에서 접근 할 수 있습니까?

그냥 가짜 코드를 사용하십시오.

class MyTask { 

    void myAsyncMethod(){ 
    } 

} 

귀하의 활동에서 그것을 호출하십시오.

MyTask _myTask = new MyTask(); 

_myTask.myAsyncMethod(); 
+0

고마워요.하지만 요점을 놓치고있는 것 같아요. 나는 Activity를 거치지 않고 곧바로 방법을 실행하려고 시도하고있다. 나는 활동 대신에 매니 페스트 파일에서 실행할 함수를 정의 할 수 있다고 생각했지만, 아아, 나는 아무것도 발견하지 못했습니다. –

+0

앱을 시작하려면 활동을 시작해야합니다. 그래서 여러분의 프로그램 어딘가에 어떤 활동이 생겨야합니다. 활동은 사용자 인터페이스입니다. 사용자에게 선택의 여지가없고 어떤 종류의 인터페이스도 제공하지 않는 앱을 ​​원한다면 말입니다. –

+0

저는 페이스 북에서 그림을 공유하고 싶을 때처럼 공유 활동에 대해 이야기하고 있지만, 사용자에게 아무 것도 보여주지 않고 AsyncTask를 실행하기를 원하는 활동을 보여주는 대신에. 내 문제를 해결 가까이에 오는 유일한 것은 작업을 실행하고 나중에 작업에 대한 finish() 메서드를 호출 할 수 있습니다. 더 많은 혼란을 피하기 위해 매니페스트의 일부를 포함하도록 내 질문을 수정하겠습니다. –

관련 문제