10

Android 인앱 결제 V3에서 찾을 수있는 모든 자습서에는 청구 관련 모든 것을 처리하는 단일 활동이 있다고 가정합니다. 내 경우 청구서에 액세스해야하는 여러 가지 활동이 있습니다. 그런 것을 가장 우아하게 처리하려면 어떻게해야합니까?액티비티에서 인앱 결제 연결 해제

나는 우연히 만났습니다. Google 청구서 도우미 클래스로 작업 할 때 항상 현재 활동을 매개 변수로 넘깁니다. 나중에 해당 활동에 대해 콜백 (예 : onActivityResult)이 호출됩니다. 그러나 활동적인 활동이 항상 바뀌면 어떨까요? 항상 결제를 종료하고 다시 초기화해야합니까?

답변

4

그러나 활성 활동이 항상 변경되면 어떻게됩니까? 항상 을 종료하고 결제를 다시 초기화해야합니까?

아무런 문제가 없습니다. 서비스에 연결하는 것은 매우 빠릅니다. 가장 중요한 것은 활동이 다시 시작될 때 onActivityResult() 콜백을 처리 할 수 ​​있다는 것입니다.

어떻게하면 가장 우아하게 처리 할 수 ​​있습니까?

어떤 종류의 응용 프로그램을 쓰는지 잘 모르겠습니다. 그것이 게임이라면, 그것은 아마도 단일 활동으로 구성 될 것이고 어쨌든 아무런 문제가 없을 것입니다. 여러 가지 활동이있는 다른 유형의 애플리케이션 인 경우 내 의견으로는 사용자가 모든 인앱 제품 (구매 및 구매)을 볼 수있는 단일 활동을 갖는 것이 좋습니다. 이것은 "내부 상점"활동과 같습니다. 이 액티비티는 대금 청구 서비스에 연결할 수 있습니다. 다른 활동은 사용자가 인앱 상품에 대해 더 많이 읽고 구매할 수있는 '내부 스토어'로 전달되어야합니다. 나는 그것이 매우 편리하다는 것을 안다.

또 다른 방법은 모든 활동에서 재사용 할 수있는 Fragment에 청구 로직을 구현하는 것입니다. onActivityResult()을 무시하고 그 결과를 해당 조각으로 전달하면됩니다. 이것이 내 앱에서 구현 한 방법입니다.

희망이 도움이됩니다.

+0

좋은 정보. 다른 활동에서 InAppBilling 코드에 액세스하는 방법에 대해 궁금한 점이 있습니까? 나는 그것을 작동시킬 수 없다. –

+0

예제를 게시 할 수 있겠습니까? 청구서와 함께 조각을주십시오. 감사. – dragoon

+0

서비스에 연결하는 것이 빠르지 만, 장치에 미치는 영향은 무엇입니까? 그것은 서버와의 통신을 포함합니까? –

0

예제 상자 밖에서 조금 생각하십시오. 문제와 관련이 없지만 일반적입니다.

1 명의 게시자와 많은 청취자 (사례 2)가 필요하기 때문에 알림 시스템을 사용합니다. 하나는 추한 방법이 될 수있다 (그러나 가장 빠른 쓰기) :

  1. 작동 예제 코드를 복사 - 붙여 넣기 가짜 활동 (무엇도 보이지를) 만들
  2. 가 작동하는 비트가 해킹 도움이나 좋아 :)

    01 경우

5 일까지 - 투표를 필요로 인스턴스를 필요로 할 때

  • 가 통지 실제 활동으로 매개 변수를 코드와 추가 청취자,
  • +0

    흠, 가짜 활동을 만드는 것은 쉽지 않습니다. 액티비티를 만드는 유일한 방법은 Android 라이프 사이클을 통해 시작하는 것입니다. 이 경우 활동은 더 이상 가짜가 아니지만 실제로는 화면에 표시됩니다 ;-) – Boris

    +0

    활동을 보이지 않게 만드는 것이 얼마나 힘들습니까? –

    +0

    저는 이것이 비즈니스 논리를 뷰 (활동)와 분리하는 목적을 무효로한다고 생각합니다. – Boris