We are building a sports and chatting app focused on online connecting users with workout partners (hiking, running, etc.). The project is split into two phases, starting with an MVP build.
** Project Overview
Phase 1: Core features include SMS login, LBS "Nearby Users", real-time IM (using NetEase Yunxin SDK), user profiles, and sports activity tracking.
Phase 2 (Advanced Features): Will be defined only after Phase 1 is successfully delivered and stable.
** Clarifications for Developers:
* Map Provider:
For users in China, we will use AMap (Amap) for route rendering.
* Backend & SDK Setup:
We already have NetEase Yunxin accounts ready. The MVP backend will be built with PHP, and development must include full backend architecture setup, API design, database schema, and complete integration of the Yunxin SDK with our user system.
* Offline Android Demo Requirements:
The minimum tracking interval required is 5 seconds. We require continuous background tracking for at least 30 minutes, and the demo must maintain stable tracking without interruption under lock screen, background running, and battery saver conditions, verified on real Huawei and Xiaomi devices.
** NON-NEGOTIABLE FIRST STEP (Please Read Before Applying)
To ensure we are a match, we require a small, verifiable proof-of-concept before discussing budget or timeline. You will build a 100% offline Android demo app (no server/API needed) that implements:
1.Continuous GPS location collection
2.Real-time route/trail drawing on a map
We will test this demo directly on our devices to validate location update frequency under real-world conditions:
1.Lock screen
2.Battery optimization/Doze mode
3.Background running
Only candidates whose demo passes our background location stability test will receive the full detailed requirements. Demo must include source code, build instructions, and a short video demonstrating the background tracking working on locked-screen, background running and battery-saving modes of major Chinese Android devices (Huawei, Xiaomi, OPPO, Vivo).
** Required Skills & Experience
1.Proven cross-platform development experience with Flutter for both iOS and Android.
Expert knowledge of Android background location policies, including vendor-specific restrictions (Huawei, OPPO, VIVO, Xiaomi, Honor).
2.Hands-on experience publishing apps to the Apple App Store and major Chinese Android app stores (Tencent App, Huawei, Xiaomi etc.), with a track record of stable long-term operation.
3.Experience integrating third-party IM SDKs (e.g. NetEase Yunxin) is a strong plus.
** How to Apply
In your proposal, please include:
1.A brief description of your experience with background location on Chinese Android/iOS devices.
2.Links to any relevant apps you have published (portfolio).
3.Confirmation that you are willing to build the offline demo as the first step.
** Timeline Expectation:
1.Demo prototype (offline GPS tracking only): within 1 business day
2.Full MVP (with UI & backend integration): No more than 30 days
** Payment Terms
1.The fee for the demo will be confirmed via online negotiation. Funds shall be deposited into a third-party escrow account in advance.
2.Funds will be released by the platform only after the demo passes review and we confirm acceptance.
3.All payments for formal phase-one development and testing optimization shall be fully deposited into escrow account upfront.
4.Disbursement will be authorized by the platform solely after all development documents (including source code, documentation, and assets) are verified and accepted, and the app is successfully launched on Android and iOS app stores.
5.If the demo does not meet requirements, the freelancer will revise it. If unresolved, we may cancel the milestone and escrowed funds will be returned.
6.If Phase 1 development fails to meet all acceptance criteria, the freelancer shall fix defects. Only in cases of non-delivery or major breach may we request a refund of undelivered milestone funds.
7.All payment terms are non-negotiable. Any proposal requesting changes to escrow-based payment structure will be automatically rejected.
Show More