저는 Twitter4J를 사용하여 애플리케이션의 시작 활동이 아닌 활동으로부터 트위터를 승인하고 있습니다. 지금까지 'CallAuthorisationActivity'라는 호출 활동에서 사용할 수있는 유효한 Twitter4j 트위터 객체로 인 텐트를 반환하는 'AuthorisationActivity'라는 별개의 활동이 있습니다.
트위터의 콜백이 제대로 작동하고 AuthorisationActivity의 인증 된 트위터 객체로 끝나지만 이제는 catch22 상황에서 스스로를 찾습니다. 1 - AuthorisationActivity의 시작 모드를 'singleTask'로 설정하지 않으면 콜백 AuthorisationActivity의 onNewIntent() 메소드로 돌아가는 것이 아니라 onCreate() 메소드로 돌아가서 무한 루프에서 인증을 시도합니다. 2 - AuthorisationActivity의 시작 모드를 'singleTask'로 설정하면 onNewIntent()로 돌아가지만 별도의 작업이므로 호출하는 활동의 onActivityResult() 메소드로 돌아 가지 않습니다.안드로이드 트위터 인증 콜백
저는 안드로이드 개발의 초보자에 불과합니다. 인증이 제대로 작동하기 때문에이 문제는 activites 관리 방법과 관련이 있다고 생각합니다. 아래는 매니페스트에서 간단한 발췌 한 것입니다 : 코드에서
<activity
android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".CallAuthorisationActivity">
</activity>
<activity
android:name=".AuthorisationActivity"
android:label="@string/title_activity_authorisation">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="tweetree" android:host="callback" />
</intent-filter>
</activity>
이 CallAuthorisationActivity는 AuthorisationActivity에에 startActivityForResult (...)과 의도를 보내고 표준으로하여 onActivityResult에 결과 (...)를 잡는다. 감사의 뜻을 전하면