2011-04-06 3 views
0

클라이언트/서버 애플리케이션이 있습니다.
php/MySQL 서버가 지원하는 안드로이드 앱입니다.안드로이드 앱에 대한 초대 수를 추적하십시오.

나는 http://domain.com/invite.php?userid=12345
등의 다운로드 링크, 무언가를 공유하여 응용 프로그램
를 다운로드 (서버) 링크를 클릭 한 사람의 수를 추적하는 사람들을 초대 할 수 있도록 사용자가 필요합니다.

나는 분명히, 문제는 사용자가 자신의 링크
를 클릭하고 그/그녀의 점수를 증가시킬 수 있다는 것입니다, 그 수를 링크
를 클릭 할 때마다 증가하지만 수 있습니다.

초대 시스템을 부정 행위를 피하는 가장 좋은 방법은 무엇입니까?

답변

0

가장 쉬운 방법은 쿠키를 사용하여 재 방문을 추적하고 가능하면 사용자 에이전트를 확인하는 것입니다. 그래도 가짜 헤더를 만드는 것은 매우 쉽기 때문에 가장 안전한 방법은 아닙니다.

또는 유효성 검사 페이지 (예 : 공유하는 링크가 이메일 주소 나 전화 번호를 요청하는 페이지로 이동 한 다음 실제 링크를 이메일 또는 SMS를 통해 새 사용자에게 보냅니다. 이렇게하면 개인 정보 보호 문제를 제외하고 복제본을 상당히 쉽게 필터링 할 수 있습니다.

많은 SMS 게이트웨이 제공 업체가 있으며 메시지 비용은 상당히 적습니다. 유익한 방법이 필요하다면 유료 앱이 필요합니다. 이 도움이

희망,

필 Lello는

+0

맞습니다 - 사용자 에이전트는 쉽게 변경 될 수 있으며 쿠키는 삭제 될 수 있습니다. 따라서 가장 안전한 방법은 아닙니다 ... 전자 메일 유효성 검사가 가장 좋은 방법 일 수 있습니다 ... –

2

나를 위해, 이러한 기능은 서버 측에서 구현됩니다. 질문에 다른 태그를 추가하십시오. 예를 들어 사용자의 UID를 만들 수 있고 휴대 전화의 UID를 만들 수 있으며 자신의 링크를 클릭하려고 할 때 휴대 전화의 모든 요청을 거부 할 수 있습니다. 그냥 생각.

+0

모든 사용자는 내 데이터베이스의 UID와의 DeviceID 있습니다. 문제는 (예를 들어) 브라우저 응용 프로그램에서 요청할 때 deviceId를 가져올 수 없다는 것입니다. IP 주소를 추적하고 단일 IP 주소의 후속 요청을 거부 할 수 있지만 이는 "완벽한"솔루션이 아니기 때문에 1) 사용자는 여전히 자신을 한 번 "초대"할 수 있습니다. 2) 사용자의 IP 주소가 변경 될 수 있습니다. 3) 사용자가 컴퓨터 브라우저에서 링크를 열 수 있습니다. –

+0

내 앱에서 webview를 사용하여 http://developer.android.com/reference/android/webkit/WebView.html 그냥 전화 관리자에서 장치 ID를 게시, 이것은 내가 추측 해답 일 수도 있습니다 – olamotte

+0

맞습니다, 올바르게 이해한다면, ** 내 앱 내에서 링크를 누를 수 있고 (그런 식으로 deviceID를 보냅니다) ** 그러나 * * 새로운 사용자 **를 초대하여 앱을 다운로드하려고한다는 것을 기억하십시오. 앱을 아직 설치하지 않았습니다. –

관련 문제