ਟਿਕਾਣਾ-ਅਧਾਰਤ ਰਿਮਾਈਂਡਰ ਲਈ ਮੋਬਾਈਲ ਐਪ ਬਣਾਉਣਾ ਸਿੱਖੋ: geofencing ਦੇ ਬੁਨਿਆਦੀ ਸਿਧਾਂਤ, ਪਰਮਿਸ਼ਨ, UX ਪੈਟਰਨ, ਨੋਟੀਫਿਕੇਸ਼ਨ, ਟੈਸਟਿੰਗ ਅਤੇ ਪ੍ਰਾਈਵੇਸੀ।

ਟਿਕਾਣਾ-ਅਧਾਰਤ ਰਿਮਾਈਂਡਰ ਉਹ ਅਲਰਟ ਹਨ ਜੋ ਤੁਹਾਡੀ ਐਪ ਉਨ੍ਹਾਂ ਸਮੇਂ ਭੇਜਦੀ ਹੈ ਜਦੋਂ کسی ਵਿਅਕਤੀ ਕਿਸੇ ਅਸਲੀ ਦੁਨੀਆ ਦੀ ਜਗ੍ਹਾ 'ਤੇ ਪਹੁੰਚਦਾ ਹੈ ਜਾਂ ਛੱਡਦਾ ਹੈ। 3:00 PM 'ਤੇ ਨਾ ਚਲ ਕੇ, ਰਿਮਾਈਂਡਰ ਉਸ ਵੇਲੇ ਟਰਿੱਗਰ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਉਪਭੋਗਤਾ ਦੇ ਫੋਨ ਨੇ ਇਹ ਪਛਾਣ ਲਿਆ ਕਿ ਉਸਨੇ ਕਿਸੇ ਟਿਕਾਣੇ ਦੇ ਆਲੇ-ਦੁਆਲੇ ਬਣਾਈ ਗਈ ਸੀਮਾ (ਜ਼ਿਆਦਾਤਰ ਵਾਰ ਇਸਨੂੰ geofence ਕਹਿੰਦੇ ਹਨ) ਨੂੰ ਕੱਟਿਆ।
ਇਹ ਬਦਲਾਅ (ਸਮਾਂ → ਟਿਕਾਣਾ) ਉਹੀ ਕਾਰਨ ਹੈ ਜਿਸ ਕਰਕੇ ਲੋਕ ਇਹਨਾਂ ਨੂੰ ਪਸੰਦ ਕਰਦੇ ਹਨ: ਰਿਮਾਈਂਡਰ ਉਸ ਪਲ ਤੇ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ ਜਦੋਂ ਇਹ ਅਸਲ ਵਿੱਚ ਲਾਭਦਾਇਕ ਹੁੰਦਾ ਹੈ, ਨਾ ਕਿ ਜਦੋਂ ਉਪਭੋਗਤਾ ਵਿਚਕਾਰ ਵਿੱਚ ਵਿਆਸਤ ਹੁੰਦਾ ਹੈ।
ਇੱਕ ਚੰਗਾ ਮਾਨਸਿਕ ਮਾਡਲ ਹੈ: “ਮੈਨੂੰ ਓਥੇ ਪਹੁੰਚਣ ਤੇ ਯਾਦ ਦਿਵਾਓ।” ਆਮ ਸਥਿਤੀਆਂ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ:
ਏਹ ਰੁਟੀਨ ਨਾਲ ਜੁੜੇ ਹੋਣ ਕਰਕੇ ਕਾਰਗਰ ਹੁੰਦੇ ਹਨ। ਸਭ ਤੋਂ ਵਧੀਆ ਐਪ ਯੂਜ਼ਰ ਨੂੰ ਉਹਨਾਂ ਜਗ੍ਹਾਂ ਨਾਲ ਰਿਮਾਈਂਡਰ ਜੋੜਨ ਵਿੱਚ ਬਿਲਕੁਲ ਆਸਾਨੀ ਦਿੰਦੀਆਂ ਹਨ ਜਿੱਥੇ ਉਹ ਪਹਿਲਾਂ ਹੀ ਜਾਂਦੇ ਹਨ।
ਇਸ ਫੀਚਰ ਨੂੰ ਬਣਾਉਣ ਲਈ, ਤੁਸੀਂ ਕੁਝ ਸਿੱਧੇ ਹਿੱਸੇ ਜੋੜੋਗੇ:
ਇਹ ਲੇਖ ਅਮਲਯੋਗ ਕਦਮਾਂ 'ਤੇ ਧਿਆਨ ਦੇਵੇਗਾ ਤਾਂ ਕਿ iOS ਅਤੇ Android ਦੇ ਹਕੀਕਤੀ ਵਿਚਾਰਾਂ ਨਾਲ ਟਿਕਾਣਾ-ਅਧਾਰਤ ਰਿਮਾਈਂਡਰ ਬਣਾਏ ਜਾ ਸਕਣ: ਅਪ੍ਰੋਚ ਚੁਣਣਾ, ਇੱਕ ਸادہ ਸੈਟਅਪ ਫਲੋ ਡਿਜ਼ਾਈਨ ਕਰਨਾ, ਪਰਮਿਸ਼ਨ ਅਤੇ ਪ੍ਰਾਇਵੇਸੀ ਸੰਭਾਲਣਾ, ਜਿਓਫੈਂਸ ਨੂੰ ਭਰੋਸੇਯੋਗ ਬਣਾਉਣਾ, ਅਤੇ ਬੈਟਰੀ ਦੀ ਵਰਤੋਂ ਘੱਟ ਰੱਖਣਾ।
SDKs ਜਾਂ ਸਕ੍ਰੀਨ ਡ੍ਰਾਅ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ, ਇਹ ਪਤਾ ਕਰੋ ਕਿ ਲੋਕ ਕੀ ਹਾਸਲ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹਨ। ਟਿਕਾਣਾ-ਅਧਾਰਤ ਰਿਮਾਈਂਡਰ "ਜਾਦੂਈ" ਮਹਿਸੂਸ ਕਰਦੇ ਹਨ ਜਦੋਂ ਉਹ ਅਸਲ ਰੁਟੀਨਾਂ ਨਾਲ ਮਿਲਦੇ ਹਨ—ਅਤੇ ਉਹ ਨਿਰਾਸ਼ਜਨਕ ਹੁੰਦੇ ਹਨ ਜਦੋਂ ਉਹ ਗਲਤ ਸਮੇਂ ਟਰਿੱਗਰ ਹੁੰਦੇ ਹਨ।
ਆਪਣੇ ਮੁੱਖ ਸਥਿਤੀਆਂ ਅਤੇ ਜਿਨ੍ਹਾਂ ਨੂੰ ਉਹ ਸਰਵ ਕਰਦੀਆਂ ਹਨ ਦੀ ਸੂਚੀ ਬਣਾਉ:
ਹਰ ਸਥਿਤੀ ਲਈ ਨੋਟ ਕਰੋ:
ਅਰੰਭ ਤੋਂ ਇਹ ਨਿਰਧਾਰਤ ਕਰੋ ਕਿ ਤੁਸੀਂ ਕਿਹੜੇ ਟ੍ਰਿਗਰ ਸਹਿਯੋਗ ਕਰੋਗੇ:
ਘੱਟੋ-ਘੱਟ ਸਮੱਗਰੀ: title + location + trigger. ਆਮ ਵਾਧੇ:
ਬਾਅਦ ਵਿੱਚ trade-offs ਕਰਨ ਲਈ ਮਾਪਦੰਡ ਚੁਣੋ:
ਤੁਹਾਡੇ ਤਕਨੀਕੀ ਚੋਣਾਂ ਇਹ ਨਿਰਧਾਰਤ ਕਰਦੀਆਂ ਹਨ ਕਿ ਰਿਮਾਈਂਡਰ ਕਿੰਨੇ ਭਰੋਸੇਯੋਗ ਲੱਗਣਗੇ, ਕਿੰਨੀ ਬੈਟਰੀ ਖਪਤ ਹੋਏਗੀ, ਅਤੇ iOS/Android 'ਤੇ ship ਕਰਨ ਲਈ ਕਿੰਨਾ ਕੰਮ ਲੱਗੇਗਾ।
ਜ਼ਿਆਦਤਰ ਰਿਮਾਈਂਡਰ ਐਪ ਲਈ, system geofencing (region monitoring) ਤੋਂ ਸ਼ੁਰੂ ਕਰੋ, ਨਾ ਕਿ ਹਰ ਵੇਲੇ user ਨੂੰ ਟਰੈਕ ਕਰਨ ਤੋਂ।
ਪ੍ਰਾਇਗਟਿਕ ਪੈਟਰਨ: geofencing ਪਹਿਲਾਂ, ਅਤੇ ਉੱਚ-ਨਿਰਧਾਰਤਾ ਟਰੈਕਿੰਗ ਦੇ ਛੋਟੇ, ਨਿਸ਼ਚਿਤ bursts ਸਿਰਫ ਜਦੋਂ ਯੂਜ਼ਰ ਸਰਗਰਮ ਹੋਵੇ (ਉਦਾਹਰਨ: ਨੈਵੀਗੇਸ਼ਨ ਦੌਰਾਨ)।
ਟਿਕਾਣਾ ਇੱਕ ਹੀ ਸਿਗਨਲ ਨਹੀਂ—ਇਹ ਮਿਲੀ-ਜੁਲੀ ਹੁੰਦੀ ਹੈ।
ਇਸ ਵਿਭਿੰਨਤਾ ਲਈ ਡਿਜ਼ਾਈਨ ਕਰੋ: ਸੈਂਸਿਬਲ ਘਟੋ-ਘਟ ਰੇਡੀਅਸ ਮੁੱਲ ਚੁਣੋ ਅਤੇ ਸਟ੍ਰੀਟ-ਲੈਵਲ ਸਹੀਤਾ ਦਾ ਵਾਅਦਾ ਕਰਨ ਤੋਂ ਬਚੋ।
ਫੈਸਲਾ ਕਰੋ ਕਿ ਜਦੋਂ ਯੂਜ਼ਰ ਕੋਲ ਸੀਮਤ ਕਨੈਕਟਿਵਿਟੀ ਹੋਵੇ ਤਾਂ ਕੀ ਹੁੰਣਾ ਚਾਹੀਦਾ ਹੈ:
ਟੀਮ ਦੀਆਂ ਸਖਤੀਆਂ ਅਤੇ ਬੈਕਗ੍ਰਾਊਂਡ ਭਰੋਸੇਯੋਗਤਾ ਦੀ ਮਹੱਤਤਾ ਦੇ ਆਧਾਰ 'ਤੇ ਚੁਣੋ:
ਜੇ ਤੁਹਾਡੇ ਰਿਮਾਈਂਡਰ ਬੈਕਗ੍ਰਾਊਂਡ ਵਿੱਚ ਭਰੋਸੇਯੋਗ ਹੋਣੇ ਲਾਜ਼ਮੀ ਹਨ, ਤਾਂ ਉਹ ਅਪ੍ਰੋਚ ਚੁਣੋ ਜੋ ਤੁਹਾਨੂੰ OS ਵਿਸ਼ੇਸ਼ ਵਿਹੇਵਿਓਰ 'ਤੇ ਹੋਰ ਕਾਬੂ ਦੇਵੇ।
ਜੇ ਤੁਸੀਂ UX ਅਤੇ workflows ਨੂੰ ਵੈਲੀਡੇਟ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ ਬਿਨਾਂ ਨੈਟਿਵ ਐਜ ਕੇਸਾਂ 'ਚ ਵੱਡੀ ਨਿਵੇਸ਼ ਕੀਤੇ, ਤਾਂ ਤੁਸੀਂ ਯਾਦ, ਸੇਟਅਪ ਫਲੋ, ਸਟੋਰੇਜ ਮਾਡਲ, ਅਤੇ ਐਡਮਿਨ ਡੈਸ਼ਬੋਰਡ ਤੇਜ਼ੀ ਨਾਲ ਪ੍ਰੋਟੋਟਾਈਪ ਕਰ ਸਕਦੇ ਹੋ।
Koder.ai ਇੱਕ vibe-coding ਪਲੇਟਫਾਰਮ ਹੈ ਜਿੱਥੇ ਤੁਸੀਂ ਚੈਟ ਰਾਹੀਂ ਵੈੱਬ, ਸਰਵਰ, ਅਤੇ ਮੋਬਾਈਲ ਐਪ ਬਣਾ ਸਕਦੇ ਹੋ—ਯੂਜ਼ਫੁਲ ਜਦੋਂ ਤੁਸੀਂ onboarding ਜਾਂ permissions ਕਾਪੀ ਦੇ ਵੱਖ-ਵੱਖ ਵਰਜਨ ਟੈਸਟ ਕਰ ਰਹੇ ਹੋ।
Koder.ai ਇੱਕ ਆਮ ਉਤਪਾਦ ਸਟੈਕ (React web, Go + PostgreSQL backend, Flutter mobile) ਜਨਰੇਟ ਕਰ ਸਕਦਾ ਹੈ ਅਤੇ ਸੋর্স-ਕੋਡ ਐਕਸਪੋਰਟ, ਡਿਪਲੋਇਮੈਂਟ/ਹੋਸਟਿੰਗ, ਕਸਟਮ ਡੋਮੇਨ, ਅਤੇ snapshots/rollback ਸਪੋਰਟ ਕਰਦਾ ਹੈ—ਜਦੋਂ ਤੁਸੀਂ onboarding ਜਾਂ permission copy ਦੇ ਵੈਰੀਆਂਟ ਟੈਸਟ ਕਰ ਰਹੇ ਹੋ ਅਤੇ ਸੁਰੱਖਿਅਤ ਤੌਰ 'ਤੇ ਵਾਪਸ ਜਾਣ ਦੀ ਲੋੜ ਹੋਵੇ ਤਾਂ ਸੰਭਾਲੀਦਾ।
ਇੱਕ ਟਿਕਾਣਾ-ਅਧਾਰਤ ਰਿਮਾਈਂਡਰ ਸਿਰਫ਼ ਸੈਟਅਪ ਫਲੋ ਦੇ ਤੌਰ 'ਤੇ ਚੰਗਾ ਹੋਣ 'ਤੇ ਹੀ ਵਰਤਣਯੋਗ ਹੁੰਦਾ ਹੈ। ਜੇ ਯੂਜ਼ਰ ਇੱਕ ਮਿੰਟ ਤੋਂ ਵੱਧ ਲੱਗਦੇ ਹੋਏ ਇੱਕ ਰਿਮਾਈਂਡਰ ਨਹੀਂ ਬਣਾਉ ਸਕਦੇ—ਜਾਂ ਉਹ ਵਿਸ਼ਵਾਸ ਨਹੀਂ ਕਰਦੇ ਕਿ ਇਹ "ਚਾਲੂ" ਹੈ—ਉਹ ਇਹ ਛੱਡ ਦੇਣਗੇ। ਛੋਟੀ, ਪੇਸ਼ਗੋਈ ਸਕ੍ਰੀਨਾਂ ਨਿਸ਼ਾਨਾ ਬਣਾਓ ਅਤੇ ਹਰ ਇੱਕ ਲਈ ਸਧਾਰਨ, ਰੋਜ਼ਾਨਾ ਭਾਸ਼ਾ ਵਰਤੋ।
1) ਰਿਮਾਈਂਡਰ ਬਣਾਓ
ਫਾਰਮ ਨੂੰ ਹਲਕਾ ਰੱਖੋ: title, ਵਿਕਲਪਿਕ ਨੋਟ, ਅਤੇ ਇੱਕ ਪ੍ਰਮੁੱਖ “Add location” ਕਾਰਵਾਈ। ਯੂਜ਼ਰ ਨੂੰ ਸਕਰੀਨ ਛੱਡੇ ਬਿਨਾਂ ਸੇਵ ਕਰਨ ਦਿਓ, ਅਤੇ ਚੁਣੀ ਹੋਈ ਜਗ੍ਹਾ inline ਦਿਖਾਓ (ਨਾਂ + ਛੋਟੀ ਨਕਸ਼ਾ ਪ੍ਰੀਵਿਊ)।
2) ਟਿਕਾਣਾ ਚੁਣੋ
ਕਈ ਆਮ ਤਰੀਕੇ ਸਹਿਯੋਗ ਕਰੋ:
3) ਲਿਸਟ ਪ੍ਰਬੰਧਨ
ਲਿਸਟ ਇਕ ਨਜ਼ਰ ਵਿੱਚ ਇੱਕ ਸਵਾਲ ਦਾ ਜਵਾਬ ਦੇਵੇ: “ਕੀ active ਹੈ?” ਸਥਿਤੀ ਚਿਪਸ ਦਿਖਾਓ ਜਿਵੇਂ Active, Paused, ਜਾਂ Needs permission। ਤੁਰੰਤ ਕਾਰਵਾਈਆਂ (pause, edit, delete) ਸ਼ਾਮਿਲ ਕਰੋ ਬਿਨਾਂ ਉਨ੍ਹਾਂ ਨੂੰ ਛੁਪਾਏ।
4) ਸੈਟਿੰਗਜ਼
ਸੈਟਿੰਗਜ਼ ਨਿਯੁਨਤਮ ਰੱਖੋ: permission ਮਦਦ, ਨੋਟੀਫਿਕੇਸ਼ਨ ਪਸੰਦਾਂ, ਇਕਾਈਆਂ (miles/km), ਅਤੇ ਇੱਕ ਛੋਟੀ "battery-friendly mode" ਵਿਆਖਿਆ।
ਹਰ ਰਿਮਾਈਂਡਰ ਲਈ ਦੋ ਸਧਾਰਨ ਚੋਣਾਂ ਦਿਓ:
ਸੈਂਸਿਬਲ ਪ੍ਰੀਸੈਟ ਰੱਖੋ (ਉਦਾਹਰਨ: 100m, 300m, 1km) ਤਾਂ ਕਿ ਯੂਜ਼ਰ ਨੂੰ ਅਨੁਮਾਨ ਨਾ ਲਗਾਉਣਾ ਪਏ।
ਟਿਕਾਣਾ ਫੀਚਰ ਅਣਛਾਹੇ ਲੱਗ ਸਕਦੇ ਹਨ, ਇਸ ਲਈ ਭਰੋਸਾ ਦਿਖਾਉਣ ਲਈ:
ਜਦੋਂ ਕੁਝ ਉਪਚਾਰ ਨੂੰ ਰੁਕਦਾ ਹੈ (permissions off, notifications disabled), ਤਾਂ ਇੱਕ ਸਪੱਸ਼ਟ “Fix settings” ਕਾਲ-ਟੂ-ਐਕਸ਼ਨ ਦਿਖਾਓ—ਲੰਬੇ ਟੈਕਸਟ ਦੀ ਭਾਰਵਾਹੀ ਨਹੀਂ।
ਲੋਕੇਸ਼ਨ ਰਿਮਾਈਂਡਰ ਤਦ ਹੀ ਕੰਮ ਕਰਦੇ ਹਨ ਜਦੋਂ ਯੂਜ਼ਰ ਤੁਹਾਡੇ ਉੱਤੇ ਸੰਵੇਦਨਸ਼ੀਲ ਡੇਟਾ ਸਾਂਝਾ ਕਰਨ ਦਾ ਭਰੋਸਾ ਕਰਦਾ ਹੈ। ਪਰਮਿਸ਼ਨ ਅਤੇ ਪ੍ਰਾਈਵੇਸੀ ਨੂੰ ਕਿਸੇ ਆਖਰੀ ਮਿੰਟ ਦੇ ਚੈੱਕਬਾਕਸ ਵਜੋਂ ਨਹੀਂ, ਬਲਕਿ ਉਤਪਾਦ ਫੀਚਰ ਵਜੋਂ ਵਰਤੋ।
ਜਿਆਦਾਤਰ ਪਲੇਟਫਾਰਮ ਦੋ ਆਮ ਲੇਵਲ ਦਿੰਦੇ ਹਨ:
ਜੋ ਘੱਟ ਤੁਹਾਨੂੰ ਚਾਹੀਦਾ ਹੈ ਉਸੇ ਦੀ ਮੰਗ ਕਰੋ। ਜੇ ਤੁਹਾਡਾ ਪਹਿਲਾ ਸੰਸਕਰਣ “While Using” ਨਾਲ ਕੰਮ ਕਰ ਲੈਂਦਾ ਹੈ, ਤਾਂ ਪਹਿਲਾਂ ਉਥੇ ਰਹੋ ਅਤੇ ਉਹੀ ਯੂਜ਼ਰ ਫੀਚਰ ਜਦੋਂ ਵੀ ਲੋੜ ਹੋਵੇ ਤਾਂ “Always” ਲਈ ਬਢਾਓ।
ਯੂਜ਼ਰਾਂ ਨੂੰ ਸਿੱਧੇ ਸਿਸਟਮ ਡਾਇਲਾਗ ਵਿੱਚ ਨਾ ਫੈਕੋ। ਇੱਕ ਛੋਟੀ ਪ੍ਰੀ-ਪਰਮਿਸ਼ਨ ਸਕ੍ਰੀਨ ਦਿਖਾਓ ਜੋ ਸਮਝਾਏ:
ਇਸ ਨਾਲ ਆਮ ਤੌਰ 'ਤੇ opt-in ਦਰ ਸੁਧਰਦੀ ਹੈ ਅਤੇ ਉਲਝਣ ਘੱਟ ਹੁੰਦੀ ਹੈ।
ਸਧਾਰਨ ਟੌਗਲ ਸ਼ਾਮਿਲ ਕਰੋ:
ਜਦੋਂ ਕੁਝ disabled ਹੋਵੇ, ਦਿਖਾਓ ਕਿ ਕੀ ਘਟਇਆ ਹੈ ਅਤੇ ਇੱਕ ਇਕ-ਟੈਪ ਰਸਤਾ ਦਿੱਤੋ ਮੁੜ ਚਾਲੂ ਕਰਨ ਲਈ।
ਘੱਟੋ-ਘੱਟ ਡੇਟਾ ਇਕੱਠਾ ਕਰਨ ਦੇ ਡੀਫਾਲਟ ਰੱਖੋ: ਸੇਵ ਕੀਤੇ ਟਿਕਾਣੇ ਅਤੇ ਰਿਮਾਈਂਡਰ ਨਿਯਮ ਸਟੋਰ ਕਰੋ, ਨਾ ਕਿ ਰਾ ਟਿਕਾਣਾ ਇਤਿਹਾਸ।
ਜ਼ਿਆਦਾ ਸਪੱਸ਼ਟ ਵਿਕਲਪ ਦਿਓ: ਡੇਟਾ ਹਟਾਉਣ (ਇਕ ਰਿਮਾਈਂਡਰ, ਸਾਰੇ ਟਿਕਾਣੇ, ਜਾਂ ਪੂਰਾ ਖਾਤਾ), ਅਤੇ ਪੁਸ਼ਟੀ ਦਿਓ ਕਿ ਕੀ ਮਿਟੇਗਾ। ਜੇ ਤੁਹਾਡੇ ਕੋਲ ਇੱਕ ਪ੍ਰਾਈਵੇਸੀ ਨੀਤੀ ਪੰਨਾ ਹੈ, ਤਾਂ onboarding ਅਤੇ ਸੈਟਿੰਗਜ਼ ਵਿੱਚ ਉਸ ਦਾ ਜਿਕਰ ਕਰੋ (ਉਦਾਹਰਨ ਲਈ: ਪ੍ਰਾਈਵੇਸੀ ਪੇਜ)।
ਟਿਕਾਣਾ-ਅਧਾਰਿਤ ਰਿਮਾਈਂਡਰ ਐਪ ਸਤਹ 'ਤੇ ਸਧਾਰਨ ਲੱਗ ਸਕਦਾ ਹੈ, ਪਰ ਅੰਦਰਲੇ ਤੌਰ 'ਤੇ ਇੱਕ ਸਪਸ਼ਟ ਡੇਟਾ ਮਾਡਲ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ ਤਾਂ ਕਿ ਰਿਮਾਈਂਡਰ ਭਰੋਸੇਯੋਗ ਤਰੀਕੇ ਨਾਲ ਫਾਇਰ ਹੋਣ, ਸੋਧਯੋਗ ਰਹਿਣ, ਅਤੇ ਜਦੋਂ ਯੂਜ਼ਰ ਪੁੱਛੇ “ਕਿਉਂ ਨਹੀਂ ਨੋਟੀਫਿਕੇਸ਼ਨ ਮਿਲੀ?” ਤਾਂ ਡਿਬੱਗ ਕੀਤੇ ਜਾ ਸਕਣ।
ਘੱਟੋ-ਘੱਟ ਇਹ ਧਾਰਨਾ ਅਲੱਗ-ਅਲੱਗ ਮਾਡਲ ਕਰੋ:
ਜ਼ਿਆਦਾਤਰ ਐਪਸ ਲਈ, ਲੋਕਲ ਡੇਟਾਬੇਸ ਸਹੀ ਅਧਾਰ ਹੈ:
ਲੋਕਲ-ਪਹਿਲਾਂ ਰਿਮਾਈਂਡਰ ਨੂੰ ਆਫਲਾਈਨ ਕੰਮ ਕਰਨ ਦਿੰਦਾ ਹੈ ਅਤੇ ਪਰਾਈਵੇਸੀ ਰਿਸਕ ਘਟਾਉਂਦਾ ਹੈ ਕਿਉਂਕਿ ਡੇਟਾ ਡਿਵਾਈਸ ਤੋਂ ਬਾਹਰ ਜਾਣ ਦੀ ਲੋੜ ਨਹੀਂ।
ਸਿੰਕ ਮੁਸ਼ਕਲੀਆਂ ਵਧਾਉਂਦਾ ਹੈ: ਖਾਤੇ, ਇਨਕ੍ਰਿਪਸ਼ਨ, ਮਾਈਗ੍ਰੇਸ਼ਨ, ਸਪੋਰਟ, ਅਤੇ conflict resolution। ਜੇ ਤੁਸੀਂ ਲਾਂਚ 'ਤੇ multi-device ਸਹਿਯੋਗ ਦੀ ਲੋੜ ਨਹੀਂ ਰੱਖਦੇ, ਤਾਂ ਪਹਿਲਾਂ export/backup (JSON/CSV) ਜਾਂ OS-ਲੇਵਲ ਬੈਕਅਪ 'ਤੇ ਵਿਚਾਰ ਕਰੋ।
ਜੇ ਸਿੰਕ ਦਾਇਰੇ ਵਿੱਚ ਹੈ, ਤਾਂ conflictਾਂ ਦੀ ਯੋਜਨਾ ਪਹਿਲੋਂ ਤੋਂ ਕਰੋ: stable IDs ਵਰਤੋਂ, updated_at ਟ੍ਰੈਕ ਕਰੋ, ਅਤੇ ਨਿਯਮਾਂ ਦਿਓ ਜਿਵੇਂ “last write wins” ਜਾਂ “completed always wins।” ਜਿਹੜੇ power users ਹਨ ਜੋ ਕਈ ਡਿਵਾਈਸ 'ਤੇ ਸੋਧ ਕਰਦੇ ਹਨ, ਇਕ ਸਾਦਾ “conflict ਦਿਖਾਓ ਅਤੇ ਯੂਜ਼ਰ ਨੂੰ ਚੁਣਨ ਦਿਓ” ਵਾਲਾ ਫਲੋ ਗੁਪਤ ਤੌਰ 'ਤੇ ਸੁਧਰਿਆ ਹੋ ਸਕਦਾ ਹੈ।
Geofencing ਹੀ ਉਹ ਮੁੱਖ ਮਕੈਨੀਕ ਹੈ ਜੋ ਟਿਕਾਣਾ-ਅਧਾਰਤ ਰਿਮਾਈਂਡਰ ਚਲਾਉਂਦੀ ਹੈ: ਤੁਸੀਂ ਇੱਕ "ਵਰਚੁਅਲ ਬਾਉਂਡਰੀ" ਪਰिभਾਸ਼ਿਤ ਕਰਦੇ ਹੋ, ਅਤੇ ਸਿਸਟਮ ਤੁਹਾਨੂੰ ਨੋਟਿਸ ਕਰਦਾ ਹੈ ਜਦੋਂ ਇੱਕ ਯੂਜ਼ਰ ਉਸ ਥਾਂ ਦਾਖਲ ਜਾਂ ਬਾਹਰ ਹੁੰਦਾ ਹੈ।
ਇੱਕ geofence ਆਮ ਤੌਰ 'ਤੇ:
ਕਿਉਂਕਿ OS ਹੀ ਨਿਗਰਾਨੀ ਕਰ ਰਿਹਾ ਹੁੰਦਾ ਹੈ, ਤੁਹਾਨੂੰ ਲਗਾਤਾਰ GPS ਅਪਡੇਟ ਨਹੀਂ ਮਿਲਦੇ। ਇਹ ਬੈਟਰੀ ਲਈ ਚੰਗਾ ਹੈ, ਪਰ ਇਸਦਾ ਮਤਲਬ ਇਹ ਵੀ ਹੈ ਕਿ geofences 'ਤੇ ਸਿਸਟਮ ਸੀਮਾਵਾਂ ਹੁੰਦੀਆਂ ਹਨ (ਜਿਵੇਂ monitored regions ਦੀ ਪਰਮਾਣੂ ਜਾਣਕਾਰੀ) ਅਤੇ edge ਸਥਿਤੀਆਂ ਵਿੱਚ ਇਹ ਦੇਰੀ ਨਾਲ ਜਾਂ ਛੱਡੇ ਜਾ ਸਕਦੇ ਹਨ।
iOS ਵਿੱਚ, region monitoring ਸਿਸਟਮ ਦੁਆਰਾ ਸੰਭਾਲਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਇਹ ਤੁਹਾਡੀ ਐਪ ਨ ਚਲ ਰਹੀ ਹੋਣ 'ਤੇ ਵੀ ਕੰਮ ਕਰ ਸਕਦਾ ਹੈ, ਪਰ ਇਸ 'ਤੇ OS-ਦੀਆਂ ਸੀਮਾਵਾਂ ਹਨ ਅਤੇ ਮੂਵਮੇਨਟ ਅਤੇ ਡਿਵਾਈਸ ਸਟੇਟ ਦੇ ਨਿਰਭਰ ਤੇ ਟਰਿੱਗਰ ਵਿੱਚ ਸਮਾਂ ਲੱਗ ਸਕਦਾ ਹੈ।
Android 'ਤੇ, geofencing ਆਮ ਤੌਰ 'ਤੇ Google Play services ਰਾਹੀਂ ਲਾਗੂ ਹੁੰਦਾ ਹੈ। ਵਿਹੇਵਿਓਰ ਡਿਵਾਈਸ ਮੈਕਰ ਅਤੇ ਪਾਵਰ-ਸੇਵਿੰਗ ਸੈਟਿੰਗਜ਼ ਦੇ ਆਧਾਰ 'ਤੇ ਵੱਖਰਾ ਹੋ ਸਕਦਾ ਹੈ; ਬੈਕਗ੍ਰਾਊਂਡ ਰਿਸਟ੍ਰਿਕਸ਼ਨਾਂ ਤੁਹਾਡੇ ਭਰੋਸੇਯੋਗਤਾ ਨੂੰ ਪ੍ਰਭਾਵਤ ਕਰ ਸਕਦੀਆਂ ਹਨ ਜੇ ਤੁਸੀਂ ਸਿਫਾਰਸ਼ ਕੀਤਿਆਂ API ਅਤੇ foreground services ਚ ਨਹੀਂ ਠੀਕ ਤਰੀਕੇ ਨਾਲ ਵਰਤਦੇ।
ਜੇ ਯੂਜ਼ਰ ਬਹੁਤ ਸਾਰੇ ਰਿਮਾਈਂਡਰ ਬਣਾ ਸਕਦੇ ਹਨ, ਤਾਂ ਸਭ ਨੂੰ ਇਕੱਠੇ ਮੋਨੀਟਰ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਨਾ ਕਰੋ। ਇੱਕ ਕਾਰਗਰ ਬਦਲ ਹੈ ਡਾਇਨਾਮਿਕ ਰਜਿਸਟ੍ਰੇਸ਼ਨ:
ਇਹ ਤਰੀਕਾ OS ਦੀਆਂ ਸੀਮਾਵਾਂ ਵਿੱਚ ਰਹਿੰਦਾ ਹੈ ਪਰ ਫੀਚਰ ਨੂੰ "ਪੂਰਾ" ਲੱਗਣ ਵਾਲਾ ਅਨੁਭਵ ਦਿੰਦਾ ਹੈ।
ਜਿਓਫੈਂਸ ਕਈ ਵਾਰੀ ਬਾਰ-ਬਾਰ ਜਾਂ ਅਜੀਬ ਸਮਿਆਂ تي ਫਾਇਰ ਹੋ ਸਕਦੇ ਹਨ। ਇਸ ਲਈ ਰੱਖੋ ਦਿਆਂ:
ਜਿਓਫੈਂਸ ਇਵੈਂਟਾਂ ਨੂੰ ਇੱਕ ਸਿਗਨਲ ਵਜੋਂ ਵਰਤੋ, ਫਿਰ ਪੂਛਨਾ ਕਿ ਕੀ ਰਿਮਾਈਂਡਰ ਦਿਖਾਇਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ—ਉਸ ਤੋਂ ਪਹਿਲਾਂ ਨੋਟੀਫਿਕੇਸ਼ਨ ਦਿਖਾਉਣਾ।
ਇੱਕ ਟਿਕਾਣਾ ਟਰਿੱਗਰ ਸਿਰਫ਼ ਅੱਧਾ ਕੰਮ ਹੈ—ਦੂਜਾ ਅੱਧਾ ਹੈ ਇਕ ਐਸੀ ਨੋਟੀਫਿਕੇਸ਼ਨ ਦੈਣਾ ਜੋ ਸਮੇਂ-ਉਤਮ, ਮਦਦਗਾਰ, ਅਤੇ ਆਸਾਨ ਕਾਰਵਾਈਯੋਗ ਹੋਵੇ। ਜੇ ਨੋਟੀਫਿਕੇਸ਼ਨ ਸ਼ੋਰ-ਖਪੇੜੇ ਜਾਂ ਗੁੰਝਲਦਾਰ ਹਨ, ਤਾਂ ਯੂਜ਼ਰ ਉਨ੍ਹਾਂ ਨੂੰ ਬੰਦ ਕਰ ਦੇਣਗੇ (ਜਾਂ ਐਪ ਹਟਾ ਦੇਣਗੇ)।
ਜ਼ਿਆਦਾਤਰ ਟਿਕਾਣਾ-ਅਧਾਰਤ ਰਿਮਾਈਂਡਰ ਲਈ, ਲੋਕਲ ਨੋਟੀਫਿਕੇਸ਼ਨ ਸ最佳 default ਹਨ: ਡਿਵਾਈਸ geofence ਇਵੈਂਟ ਡਿਟੈਕਟ ਕਰਦਾ ਹੈ ਅਤੇ ਰਿਮਾਈਂਡਰ ਦਿਖਾਈ ਦਿੰਦੀ ਬਿਨਾਂ ਸਰਵਰ ਦੀ ਲੋੜ। ਇਹ ਕਨੇਕਟਿਵਿਟੀ-ਮਸਲਿਆਂ ਵਿੱਚ ਤੇਜ਼ ਅਤੇ ਭਰੋਸੇਯੋਗ ਰਹਿੰਦਾ ਹੈ।
ਜਦੋਂ ਤੁਹਾਨੂੰ ਵਾਕਈ ਸਰਵਰ ਸ਼ਾਮਿਲ ਕਰਨ ਦੀ ਲੋੜ ਹੋਵੇ (ਉਦਾਹਰਨ: shared lists, team assignments, ਜਾਂ ਕਈ ਡਿਵਾਈਸਾਂ 'ਤੇ sync), ਤਦ ਪুশ ਵਰਤੋ। ਇੱਕ ਆਮ ਪੈਟਰਨ: geofence ਲੋਕਲ ਤੌਰ 'ਤੇ ਟਰਿੱਗਰ ਹੋਵے, ਫਿਰ ਤੁਸੀਂ completion/snooze ਸਟੇਟ ਨੂੰ ਬੈਕਗ੍ਰਾਊਂਡ ਵਿੱਚ ਸਿੰਕ ਕਰ ਸਕਦੇ ਹੋ।
ਮੂਲ ਕੰਮ ਲਈ ਯੂਜ਼ਰ ਨੂੰ ਐਪ ਖੋਲ੍ਹਣ 'ਤੇ ਮਜਬੂਰ ਨਾ ਕਰੋ। ਤੇਜ਼ ਕੰਮਾਂ ਲਈ ਤੁਰੰਤ ਨਿਯੰਤਰਣ ਦਿਓ ਜੋ ਲੋਕ ਅਸਲ ਜ਼ਿੰਦਗੀ ਵਿੱਚ ਕਰਦੇ ਹਨ:
ਟਾਈਟਲ ਛੋਟਾ ਰੱਖੋ (“Buy milk”) ਅਤੇ ਬਾਡੀ ਵਿੱਚ ਸੰਦੇਸ਼ ਲਈ ਸੰਦਰਭ ਦਿਓ (“You’re near Trader Joe’s”)।
Quiet hours ਅਤੇ ਵਿਕਲਪਿਕ time windows ਹਰ ਰਿਮਾਈਂਡਰ ਵਾਸਤੇ ਸ਼ਾਮਿਲ ਕਰੋ (“ਸਿਰਫ਼ 8am–8pm ਦੌਰਾਨ ਸੂਚਨਾ ਭੇਜੋ”)। ਜੇ ਯੂਜ਼ਰ ਖਿੜਕੀ ਦੇ ਬਾਹਰ ਪਹੁੰਚਦਾ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਸੂਚਨਾ ਨੂੰ ਵਿੰਡੋ ਖੁਲ੍ਹਣ ਤੱਕ ਦੇਰੀ ਕਰ ਸਕਦੇ ਹੋ ਜਾਂ ਇੱਕ ਸਾਈਲੈਂਟ ਬੈਜ ਅੱਪਡੇਟ ਦਿਖਾ ਸਕਦੇ ਹੋ—ਦੋਹਾਂ ਨਾਲ ਪਰੇਸ਼ਾਨੀ ਘਟਦੀ ਹੈ।
ਯੂਜ਼ਰ ਉਮੀਦ ਕਰਦੇ ਹਨ ਕਿ ਫੋਨ ਰੀਸਟਾਰਟ ਅਤੇ ਐਪ ਅਪਡੇਟ ਤੋਂ ਬਾਅਦ ਵੀ ਰਿਮਾਈਂਡਰ ਕੰਮ ਕਰਦੇ ਰਿਹਿੰਗੇ। ਗੀਓਫੈਂਸ/ਰਿਮਾਈਂਡਰ ਨੂੰ ਸਟੋਰੇਜ ਵਿੱਚ ਟਿਕਾ ਕੇ ਰੱਖੋ ਅਤੇ ਐਪ ਲਾਂਚ 'ਤੇ ਉਨ੍ਹਾਂ ਨੂੰ ਦੁਬਾਰਾ ਰਜਿਸਟਰ ਕਰੋ।
Android 'ਤੇ, reboot 'ਤੇ restore ਕਰਨ ਬਾਰੇ ਵਿਚਾਰ ਕਰੋ (ਜਿੱਥੇ ਪਲੇਟਫਾਰਮ ਨੀਤੀਆਂ ਆਗਿਆ ਦਿੰਦੀਆਂ ਹਨ)। iOS 'ਤੇ, system region monitoring ਨੂੰ ਨਿਭਾਵਣ ਦਿਓ ਅਤੇ ਐਪ ਦੌੜਨ 'ਤੇ ਜਿੰਨਾ ਰਜਿਸਟਰ ਕੀਤਾ ਜਾ ਸਕੇ ਉਨ੍ਹਾਂ ਨੂੰ ਦੁਬਾਰਾ ਰਜਿਸਟਰ ਕਰਨ ਦੀ ਯੋਜਨਾ ਬਣਾਓ।
ਟਿਕਾਣਾ-ਅਧਾਰਤ ਰਿਮਾਈਂਡਰ ਤਦ ਹੀ "ਜਾਦੂ" ਵਰਗੇ ਮਹਿਸੂਸ ਹੁੰਦੇ ਹਨ ਜਦੋਂ ਉਹ ਬਿਨਾਂ ਸ਼ੋਰ ਦੇ ਚੱਲਦੇ ਹਨ। ਚੁਣੌਤੀ ਇਹ ਹੈ ਕਿ ਬੈਕਗ੍ਰਾਊਂਡ ਕੰਮ ਨੂੰ ਕਸਰਤ ਨਾਲ ਰੋਕਿਆ ਜਾਂਦਾ ਹੈ: ਬੈਟਰੀ ਸੀਮਤ ਹੈ, ਅਤੇ iOS/Android ਦੋਹਾਂ ਐਪਸ ਨੂੰ ਲੱਗਾਤਾਰ ਚੱਲਣ ਜਾਂ GPS ਪੋਲਿੰਗ ਕਰਨ ਤੋਂ ਰੋਕਦੇ ਹਨ।
ਆਧੁਨਿਕ ਮੋਬਾਇਲ OS ਲਗਾਤਾਰ GPS ਅਤੇ ਬਾਰ-ਬਾਰ ਬੈਕਗ੍ਰਾਊਂਡ wake-ups ਨੂੰ ਉੱਚ-ਖ਼ਰਚਾ ਮੰਨਦੇ ਹਨ। ਜੇ ਤੁਹਾਡੀ ਐਪ ਇਨ੍ਹਾਂ ਨੂੰ ਵੱਧ ਵਰਤੇਗੀ, ਯੂਜ਼ਰ ਨੂੰ ਬੈਟਰੀ ਘਟਣ ਦਾ ਅਨੁਭਵ ਹੋਵੇਗਾ, OS ਤੁਹਾਨੂੰ throttle ਕਰ ਸਕਦੀ ਹੈ, ਅਤੇ ਭਰੋਸੇਯੋਗਤਾ ਖਰਾਬ ਹੋ ਸਕਦੀ ਹੈ।
ਪਲੇਟਫਾਰਮ ਵੱਲੋਂ ਦਿੱਤੇ ਗਏ geofencing ਅਤੇ region monitoring APIs ਨੂੰ ਤਰਜੀਹ ਦਿਓ। ਇਹ GPS, Wi‑Fi, ਅਤੇ ਸੈੱਲ ਦੇ ਮਿਸ਼ਰਣ ਨੂੰ ਵਰਤਦੇ ਹੋਏ ਡਿਜ਼ਾਈਨ ਕੀਤੇ ਗਏ ਹਨ ਅਤੇ ਤੁਹਾਡੀ ਐਪ ਨੂੰ ਉਸ ਵੇਲੇ ਹੀ ਉਠਾਉਂਦੇ ਹਨ ਜਦੋਂ ਲੋੜ ਹੁੰਦੀ ਹੈ।
ਜੇ ਤੁਹਾਡੀ ਮੂਲ ਲੋੜ turn-by-turn ਨਿਰਧਾਰਤਾ ਨਹੀਂ ਹੈ, ਤਾਂ ਹਮੇਸ਼ਾ-ਚੱਲਦਾ GPS ਟਰੈਕਿੰਗ ਤੋਂ ਬਚੋ। ਰਿਮਾਈਂਡਰਾਂ ਲਈ ਇਹ ਬਹੁਤ ਘੱਟ ਲੋੜੀਂਦਾ ਹੈ।
ਛੋਟੀਆਂ ਚੋਣਾਂ ਵੱਡਾ ਅਸਰ ਪਾ ਸਕਦੀਆਂ ਹਨ:
Settings ਜਾਂ Help ਵਿੱਚ ਇੱਕ ਛੋਟੀ "Battery impact" ਸੈਕਸ਼ਨ ਰੱਖੋ ਜੋ ਦੱਸੇ:
ਇਸ ਨਾਲ ਭਰੋਸਾ ਬਣਦਾ ਹੈ—ਅਤੇ support ਟਿਕਟ ਘੱਟ ਹੁੰਦੇ ਹਨ।
Geofencing ਅਤੇ ਬੈਕਗ੍ਰਾਊਂਡ ਟਿਕਾਣਾ ਫੀਚਰ ਡੈਮੋ ਵਿੱਚ ਪਰਫੈਕਟ ਲਗ ਸਕਦੇ ਹਨ, ਫਿਰ ਅਸਲ ਜ਼ਿੰਦਗੀ ਵਿੱਚ ਸ਼ਾਂਤ ਹੋ ਕੇ ਨਾਕਾਮ ਹੋ ਸਕਦੇ ਹਨ। ਫ਼ਰਕ OS ਹੁੰਦਾ ਹੈ: iOS ਅਤੇ Android ਬੈਕਗ੍ਰਾਊਂਡ ਕੰਮ, ਪਰਮਿਸ਼ਨ, ਕਨੈਕਟਿਵਿਟੀ, ਅਤੇ ਬੈਟਰੀ ਨੂੰ ਸਖਤੀ ਨਾਲ ਪ੍ਰਬੰਧ ਕਰਦੇ ਹਨ। ਟੈਸਟਿੰਗ ਨੂੰ ਇੱਕ ਉਤਪਾਦ ਫੀਚਰ ਵਜੋਂ ਮੰਨੋ, ਆਖਰੀ ਕੰਮ ਵੱਜੋਂ ਨਹੀਂ।
ਮਿਸ਼ਰਣ ਨਾਲ ਟੈਸਟ ਕਰੋ:
ਇੱਕ “fresh install” ਰਾਹ ਵੀ ਸ਼ਾਮਿਲ ਕਰੋ ਤਾਂ ਕਿ onboarding ਅਤੇ permission ਪ੍ਰਾਂਪਟ ਜ਼ੀਰੋ ਤੋਂ ਕੰਮ ਕਰਨ ਦੀ ਪੁਸ਼ਟੀ ਹੋਵੇ।
ਇਮੀਲੇਟਰ ਤੇਜ਼ iteration ਲਈ ਉੱਤਮ ਹਨ:
ਪਰ ਹਕੀਕਤੀ ਦੁਨੀਆਂ ਵਿੱਚ ਵੀ ਜਾਂਚ ਕਰੋ। ਇੱਕ ਸਧਾਰਨ ਰੂਟ ਸੈੱਟ ਕਰੋ ਜਿਸ ਵਿੱਚ ਦੋ fences ਹੁਣ—enter + exit—ਫਿਰ ਵਾਕ/ਡ੍ਰਾਈਵ ਦੋਹਰਾਓ। ਡ੍ਰਾਈਵ ਕਰਨ ਨਾਲ ਸਮੇਂ-ਸਬੰਧੀ ਮੁੱਦੇ (missed boundaries, delayed callbacks) ਆਉਂਦੇ ਹਨ ਜੋ ਵਾਕਿੰਗ ਨਹੀਂ ਦਿਖਾਉਂਦੇ।
ਖਾਸ ਟੈਸਟ ਸ਼ਾਮਿਲ ਕਰੋ:
ਜਦੋਂ ਰਿਮਾਈਂਡਰ ਫਾਇਰ ਨਹੀਂ ਹੁੰਦਾ, ਤੁਹਾਨੂੰ ਸਬੂਤ ਚਾਹੀਦਾ ਹੈ। ਇੱਕ ਛੋਟਾ ਸੈੱਟ ਘਟਨਾਵਾਂ ਲੋਕਲ ਲੌਗ ਕਰੋ (ਸਰਵਰ ਨੂੰ ਪਹਿਲਾਂ ਤੋਂ ਨਹੀਂ ਭੇਜੋ): permission ਬਦਲਾਵ, geofence registered/removed, last known location timestamp, trigger received, notification scheduled/sent।
ਇੱਕ in-app “Export Debug Log” ਬਟਨ ਰੱਖੋ ਜੋ support ਨਾਲ ਸਾਂਝਾ ਕੀਤਾ ਜਾ ਸਕੇ। ਇਸ ਨਾਲ missed triggers ਦਾ ਨਿਧਾਨ ਕਰਨ ਵਿੱਚ ਮਦਦ ਮਿਲਦੀ ਹੈ ਅਤੇ ਪਰਾਈਵੇਸੀ ਉਮੀਦਾਂ ਸਾਫ਼ ਰਹਿੰਦੀ ਹਨ।
ਇੱਕ ਟਿਕਾਣਾ-ਅਧਾਰਤ ਰਿਮਾਈਂਡਰ ਐਪ ਇਕੋ ਸੈਟਿੰਗ ਖ਼ਰਾਬ ਹੋਣ 'ਤੇ "ਟੁੱਟਿਆ" ਮਹਿਸੂਸ ਕਰ ਸਕਦਾ ਹੈ। ਇੱਕ ਮਜ਼ਬੂਤ ਲਾਂਚ ਯੋਜਨਾ ਜ਼ਿਆਦਾਤਰ ਉਮੀਦਾਂ ਸੈੱਟ ਕਰਨ, permissions ਨਿਰਦੇਸ਼ਤ ਕਰਨ, ਅਤੇ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਤੇਜ਼ ਰਾਹ ਦਿਖਾਉਣ ਬਾਰੇ ਹੁੰਦੀ ਹੈ।
onboarding ਛੋਟੀ ਰੱਖੋ, ਪਰ ਇਹ ਸਪਸ਼ਟ ਕਰੋ ਕਿ ਕਦੋਂ ਰਿਮਾਈਂਡਰ ਟਰਿੱਗਰ ਹੁੰਦਾ ਹੈ:
ਇੱਕ ਸਧਾਰਨ “test reminder” ਕਦਮ ਸ਼ਾਮਿਲ ਕਰੋ ਤਾਂ ਕਿ ਯੂਜ਼ਰ ਨੋਟੀਫਿਕੇਸ਼ਨ ਕੰਮ ਕਰਨ ਦੀ ਪੁਸ਼ਟੀ ਕਰ ਸਕਣ πριν rely ਕਰਨ।
Settings ਵਿੱਚ ਇੱਕ ਹਲਕਾ Help ਪੇਜ ਬਣਾਓ (ਅਤੇ onboarding ਤੋਂ ਲਿੰਕ ਕਰੋ)। ਇਸਨੂੰ ਸਕੈਨੇਬਲ ਰੱਖੋ ਅਤੇ ਆਮ ਮੁੱਦਿਆਂ ਲਈ ਉਪਯੋਗ ਸਲਾਹ ਦਿਓ:
Missed alert?
ਪਹਿਲਾਂ ਕੰਮ ਕੀਤਾ ਸੀ, ਫਿਰ ਰੁਕ ਗਿਆ?
ਟਿਕਾਣਾ ਗਲਤ ਲੱਗ ਰਿਹਾ ਹੈ?
ਜੇ ਤੁਸੀਂ ਭੁਗਤਾਨੀ tier ਦਿੰਦੇ ਹੋ, ਤਾਂ ਇੱਕ ਛੋਟੀ “Contact support” ਵਿਭਾਗ ਸ਼ਾਮਿਲ ਕਰੋ ਅਤੇ (ਜਰੂਰੀ ਹੋਵੇ ਤਾਂ) ਆਪਣੇ ਯੋਜਨਾ ਵੇਰਵਿਆਂ ਲਈ ਇੱਕ ਲਿੰਕ ਦਿਓ (ਉਦਾਹਰਨ: pricing ਵੇਰਵੇ)।
ਤੁਹਾਡਾ store ਪੇਜ ਇੰਸਟਾਲ ਤੋਂ ਪਹਿਲਾਂ ਉਲਝਣ ਘਟਾਉਣਾ ਚਾਹੀਦਾ ਹੈ:
ਉਸ ਵਰਤਨ ਦੇ ਬਿਆਨ ਨਾਲ ਮੇਲ ਖਾਣ ਵਾਲੀ ਕਾਪੀ ਲਿਖੋ। ਜੇ ਰਿਮਾਈਂਡਰ ਕਦੇ-ਕਦੇ ਦੇਰੀ ਕਰ ਸਕਦੇ ਹਨ, ਤਾਂ “ਤੁਰੰਤ” alerts ਦਾ ਵਾਅਦਾ ਨਾ ਕਰੋ—ਬਜਾਏ ਇਸਦੇ, ਭਰੋਸੇਯੋਗ ਹੋਣ ਅਤੇ ਸਹੀ ਸੈਟਅਪ ਦੀ ਵਿਆਖਿਆ ਕਰੋ।
v1 ਜਾਰੀ ਕਰਨਾ ਸ਼ੁਰੂਅਾਤ ਹੀ ਹੈ। ਟਿਕਾਣਾ-ਅਧਾਰਤ ਰਿਮਾਈਂਡਰ ਲਈ, ਛੋਟੇ ਬਦਲਾਅ ਬੈਟਰੀ, ਭਰੋਸੇਯੋਗਤਾ, ਅਤੇ ਭਰੋਸੇ 'ਤੇ ਵੱਡਾ ਪ੍ਰਭਾਵ ਪਾ ਸਕਦੇ ਹਨ—ਇਸ ਲਈ ਐਸੇ Iterations ਯੋਜਨਾ ਕਰਨ ਜੋ ਆਸਾਨੀ ਨਾਲ ਟੈਸਟ ਕੀਤੇ ਜਾ ਸਕਦੇ ਅਤੇ ਰੋਲਬੈਕ ਕੀਤੇ ਜਾ ਸਕਦੇ।
ਕੱਢਣੀਆਂ ਤਹਿ ਕੀਤਾ ਜੋ core geofencing ਲਾਜ਼ਮੀ ਲੋਜਿਕ ਨੂੰ ਬਦਲੇ ਬਿਨਾਂ ਤਹਿ ਜੋੜੋ:
ਜੇ ਤੁਸੀਂ ਬੈਕਗ੍ਰਾਊਂਡ ਟਿਕਾਣਾ ਸੰਭਾਲਣ ਦਾ ਤਰੀਕਾ ਬਦਲਦੇ ਹੋ, ਤਾਂ ਫੀਚਰ ਫਲੈਗ ਦੇ ਪਿੱਛੇ ਰਿਲੀਜ਼ ਕਰੋ ਅਤੇ crash ਦਰਾਂ ਅਤੇ ਨੋਟੀਫਿਕੇਸ਼ਨ ਡਿਲਿਵਰੀ ਨੂੰ ਨਿਗਰਾਨੀ ਕਰਦੇ ਹੋਏ ਹੀ ਬੜਾ ਰੋਲਆਉਟ ਕਰੋ।
ਟਿਕਾਣਾ-ਅਧਾਰਤ ਰਿਮਾਈਂਡਰ ਇੱਕ ਹੱਥ, ਇੱਕ ਇੰਦ੍ਰਿਯ, ਜਾਂ ਇਕ ਟੈਪ ਨਾਲ ਵਰਤੇ ਜਾ ਸਕਣ:
ਲੋਕ ਦੁਨੀਆ ਭਰ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਤਰੀਕਿਆਂ ਨਾਲ ਪਤੇ ਦਾਖਲ ਕਰਦੇ ਹਨ। ਵੱਖ-ਵੱਖ address formats ਸਵੀਕਾਰ ਕਰੋ, ਅਤੇ ਉਪਭੋਗਤਾ ਨੂੰ ਰੇਡੀਅਸ ਲਈ ਇਕਾਈਆਂ ਚੁਣਨ ਦਿਓ (ਮੀਟਰ/ਫੁੱਟ)। ਆਧਾਰਵਤੀ ਨਕਸ਼ੇ ਲਈ ਆਫਲਾਈਨ ਰਣਨੀਤੀ ਵਾਸਤੇ, ਹਾਲੀਆ ਟਿਕਾਣਿਆਂ ਨੂੰ cache ਕਰੋ ਅਤੇ ਸੇਵ ਕੀਤੀਆਂ ਜਗ੍ਹਾਂ ਚੁਣਨ ਦੀ ਆਗਿਆ ਦਿਓ ਜਦੋਂ ਮੈਪ ਟਾਈਲ ਉਪਲਬਧ ਨਾ ਹੋਣ।
ਸੁਧਾਰ ਕਰਨ ਲਈ ਮਾਪੋ ਬਿਨਾਂ ਲੋਕਾਂ ਨੂੰ ਟਰੈਕ ਕੀਤੇ। analytics opt-in ਰੱਖੋ, aggregate metrics ਸਟੋਰ ਕਰੋ (ਉਦਾਹਰਨ: reminder created, geofence triggered, notification opened), ਅਤੇ ਘੱਟੋ-ਘੱਟ identifiers ਵਰਤੋ। ਠੀਕ ਨਕਸ਼ਿਆਂ ਦਾ ਨਿਰਧਾਰ ਕਰਨ ਲਈ ਨਿਰਧਾਰਤ ਸਹੀਤ coordinates ਨੂੰ ਲੌਗ ਕਰਨ ਤੋਂ ਬਚੋ; distances ਅਤੇ timing ਨੂੰ buckets ਵਿੱਚ ਰੱਖੋ।
ਇੱਕ ਛੋਟੀ “How we measure” ਨੋਟ ਪ੍ਰਾਈਵੇਸੀ ਪੇਜ 'ਤੇ ਰੱਖਣਾ ਨਿਰਭਰਤਾ ਬਣਾਉਂਦਾ ਹੈ ਅਤੇ ਬੇਤਰ ਮੋਬਾਈਲ ਐਪ ਵਿਕਾਸ ਫੈਸਲੇ ਸਮਰਥਨ ਕਰਦਾ ਹੈ।
ਟਿਕਾਣਾ-ਅਧਾਰਿਤ ਰਿਮਾਈਂਡਰ ਉਸ ਵੇਲੇ ਟਰਿੱਗਰ ਹੁੰਦੇ ਹਨ ਜਦੋਂ ਡਿਵਾਈਸ ਕਿਸੇ ਨਿਰਧਾਰਤ ਖੇਤਰ (ਇੱਕ geofence) ਨੂੰ ਸ਼ਾਮਲ ਜਾਂ ਛੱਡ ਕਰਦਾ ਹੈ—ਜਿਵੇਂ ਕਿ ਕੋਈ ਦుకਾਨ, ਘਰ, ਜਾਂ ਦਫਤਰ।
ਲੋਕ ਇਨ੍ਹਾਂ ਨੂੰ ਪਸੰਦ ਕਰਦੇ ਹਨ ਕਿਉਂਕਿ ਰਿਮਾਈਂਡਰ ਉਸ ਸਮੇਂ ਆਉਂਦਾ ਹੈ ਜਦੋਂ ਉਹ ਹਕੀਕਤ ਵਿੱਚ ਲਾਭਦਾਇਕ ਹੋਵੇ, ਨਾ ਕਿ ਕਿਸੇ ਬੇਤਰਤੀਬ਼ ਸਮੇਂ।
ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਉਹਨਾਂ ਅਸਲ ਰੋਜ਼ਮਰਾ ਦੀਆਂ ਜ਼ਰੂਰਤਾਂ ਲਿਖੋ ਜੋ ਤੁਸੀਂ ਸੇਵਾ ਦੇ ਰਹੇ ਹੋ (ਘਰ, ਕੰਮ,errands, travel) ਅਤੇ ਹਰ ਇਕ ਲਈ ਕਿੰਨੀ ਸਹੀਤਾ ਚਾਹੀਦੀ ਹੈ।
ਹਰ use case ਲਈ ਇਹ ਨਿਰਧਾਰਤ ਕਰੋ:
ਅਕਸਰ ਰਿਮਾਈਂਡਰ ਐਪਸ ਲਈ, system geofencing / region monitoring ਨੂੰ ਤਰਜੀਹ ਦਿਓ।
ਕੇਵਲ ਖਾਸ ਮਾਮਲਿਆਂ (ਜਿਵੇਂ active navigation) ਲਈ ਛੋਟੇ, ਲਕੜਾਂ ਵਾਲੇ continuous tracking ਦੇ bursts ਵਰਤੋ—ਮੁਲ ਡਿਫੌਲਟ ਵਜੋਂ ਨਹੀਂ।
ਇੱਕ ਵਿਹੰਗਮ v1 ਆਮ ਤੌਰ 'ਤੇ ਸਮਰਥਨ ਕਰਦੀ ਹੈ:
ਜੇ ਪਲੇਟਫਾਰਮ ਸਹਿਯੋਗ ਤੇ UX ਮੁੱਲ ਸਾਫ਼ ਹੋਵੇ ਤਾਂ dwell ਬਾਅਦ ਵਿੱਚ ਜੋੜੋ।
ਇੱਕ ਸਧਾਰਨ, ਭਰੋਸੇਯੋਗ ਮਾਡਲ ਇਹਨਾਂ ਨੂੰ ਅਲੱਗ ਰੱਖਦਾ ਹੈ:
ਇਸ ਨਿਰਵਾਚਿਤ ਰਚਨਾ ਨਾਲ ਰਿਮਾਈਂਡਰ ਸੋਧਯੋਗ ਰਹਿੰਦੇ ਹਨ ਅਤੇ "ਕਿਉਂ ਨਹੀਂ ਆਇਆ?" ਦੇ ਸਵਾਲ ਦਾ ਪਤਾ ਲਗਾਉਣਾ ਸੰਭਵ ਹੁੰਦਾ ਹੈ।
ਉਹ permission ਲੋ ਜੋ ਤੁਹਾਡੇ ਫੀਚਰ ਨਾਲ ਘੱਟੋ-ਘੱਟ ਮਿਲਦੇ ਹਨ:
OS ਪ੍ਰਾਂਪਟ ਤੋਂ ਪਹਿਲਾਂ ਇੱਕ ਛੋਟੀ in-app ਰੈਸ਼ਨਲ ਸਕਰੀਨ ਦਿਖਾਓ ਜੋ ਸਪੱਸ਼ਟ ਕਰੇ ਕਿ ਤੁਸੀਂ ਕਿਉਂ ਮੰਗ ਰਹੇ ਹੋ, ਕਿਹੜਾ ਫਾਇਦਾ ਹੈ, ਅਤੇ ਤੁਸੀਂ ਕੀ ਨਹੀਂ ਕਰਦੇ (ਜੇ ਇਹ ਸੱਚ ਹੋਵੇ)।
ਸੈਟਅਪ ਤੇ ਭਰੋਸਾ ਬਣਾਓ:
ਜਦੋਂ ਕੁਝ ਰੁਕਾਵਟ ਹੋਵੇ (permissions/notifications off), ਇਕ ਸਪੱਸ਼ਟ “Fix settings” ਐਕਸ਼ਨ ਦਿਖਾਓ।
ਆਮ ਤੌਰ 'ਤੇ local notifications ਬਿਹਤਰ ਹਨ ਕਿਉਂਕਿ ਜਿਓਫੈਂਸ ਇਵੈਂਟ ਡਿਵਾਈਸ 'ਤੇ ਡਿਟੈਕਟ ਹੁੰਦਾ ਹੈ ਅਤੇ ਰਿਮਾਈਂਡਰ ਬਿਨਾਂ ਸਰਵਰ ਦੇ ਤੁਰੰਤ ਦਿਖ ਸਕਦਾ ਹੈ—ਇਹ ਕਨੇਕਟਿਵਿਟੀ ਨਾ ਹੋਣ ਦੀ ਸਥਿਤੀ ਵਿੱਚ ਵੀ ਤੇਜ਼ ਅਤੇ ਭਰੋਸੇਯੋਗ ਰਹਿੰਦਾ ਹੈ।
Push notifications ਉਸ ਵੇਲੇ ਵਰਤੋ ਜਦੋਂ ਸਰਵਰ ਦੀ ਲੋੜ ਹੋਵੇ (ਜਿਵੇਂ shared lists, team assignments, ਜਾਂ ਕਈ ਡਿਵਾਈਸਾਂ 'ਤੇ sync)। ਆਮ ਪੈਟਰਨ: geofence locally ਟਰਿੱਗਰ ਹੋਵੇ, ਫਿਰ completion/snooze ਦੀ ਸਥਿਤੀ ਬੈਕਗ੍ਰਾਊਂਡ ਵਿੱਚ sync ਕਰੋ।
ਆਮ ਰੱਖਿਆ ਦੀਆਂ ਚੀਜ਼ਾਂ:
ਇਹ ਛੋਟੇ-ਛੋਟੇ ਚੋਣਾਂ ਬੈਟਰੀ 'ਤੇ ਵੱਡਾ ਅਸਰ ਘਟਾਉਂਦੀਆਂ ਹਨ।
ਅਸਲੀ ਦੁਨੀਆ ਵਿੱਚ ਟੈਸਟ ਕਰੋ, ਨਾ ਕਿ ਸਿਰਫ ਇਮੀਲੇਟਰ 'ਚ:
ਛੋਟਾ ਸੈਟ ਜੋੜੋ: local diagnostics (registered/removed geofences, trigger received, notification scheduled/sent) ਅਤੇ in-app Export Debug Log ਬਣਾਓ ਤਾਂ ਕਿ support ਬਿਨਾਂ ਵਾਧੂ location history ਇਕੱਠਾ ਕੀਤੇ ਸਮੱਸਿਆ ਦਾ ਹੱਲ ਕਰ ਸਕੇ।