κ°λ°μλ₯Ό μν μΌμ API(κ°μλκ³, μμ΄λ‘μ€μ½ν, μ₯μΉ λͺ¨μ ) μ’ ν© κ°μ΄λ. κ³ κΈ μ ν리μΌμ΄μ μ μν μ₯μΉ λͺ¨μ λ°μ΄ν° μ‘μΈμ€ λ°©λ²μ μμ보μΈμ.
μΌμ API: κ°μλκ³, μμ΄λ‘μ€μ½ν, μ₯μΉ λͺ¨μ κ°μ§ μ€λͺ
νλ λͺ¨λ°μΌ μ₯μΉμ μ¨μ΄λ¬λΈ κΈ°κΈ°μλ μ₯μΉμ λ°©ν₯, μμ§μ λ° μ£Όλ³ νκ²½μ λν κ·μ€ν λ°μ΄ν°λ₯Ό μ 곡νλ μΌμκ° κ°λν©λλ€. κ°μ₯ μΌλ°μ μΌλ‘ μ¬μ©λλ μΌμ μ€μλ κ°μλκ³, μμ΄λ‘μ€μ½ν, κ·Έλ¦¬κ³ μ₯μΉ λͺ¨μ μΌμ(μ’ μ’ μ¬λ¬ μμ€μ λ°μ΄ν°λ₯Ό κ²°ν©ν¨)κ° μμ΅λλ€. μ₯μΉλ³ APIλ₯Ό ν΅ν΄ μ‘μΈμ€ν μ μλ μ΄λ¬ν μΌμλ νμ μ μ΄κ³ λ§€λ ₯μ μΈ μ ν리μΌμ΄μ μ λ§λ€κ³ μ νλ κ°λ°μλ€μκ² λ¬΄νν κ°λ₯μ±μ μ΄μ΄μ€λλ€. μ΄ μ’ ν© κ°μ΄λλ μ΄λ¬ν μΌμλ€μ μμΈν νμνκ³ , κΈ°λ₯ μ€λͺ , μ€μ©μ μΈ μμ μ 곡, μ μ¬μ μ ν리μΌμ΄μ λ Όμλ₯Ό λ€λ£Ήλλ€.
κ°μλκ³ μ΄ν΄νκΈ°
κ°μλκ³λ κ°μλ, μ¦ μλ λ³νμ¨μ μΈ‘μ ν©λλ€. λ κ°λ¨ν λ§νλ©΄, X, Y, Zμ μΈ μΆμ λ°λΌ μμ§μμ κ°μ§ν©λλ€. μ€λ ₯μΌλ‘ μΈν κ°μλμ μ¬μ©μμ νλμΌλ‘ μΈν κ°μλλ₯Ό λͺ¨λ μΈ‘μ ν©λλ€.
κ°μλκ³ μλ λ°©μ
κ°μλκ³λ λ§μ΄ν¬λ‘ μ μκΈ°κ³ μμ€ν (MEMS) κΈ°μ μ μ¬μ©ν©λλ€. μΌλ°μ μΌλ‘ μ€νλ§μ λΆμ°©λ λ―ΈμΈν μ§λμ ν¬ν¨νκ³ μμ΅λλ€. μ₯μΉκ° κ°μνλ©΄ μ΄ μ§λλ€μ΄ μμ§μ΄κ³ , κ·Έ μμ§μμ μμ΄ μ μμ μΌλ‘ μΈ‘μ λ©λλ€. μ΄λ₯Ό ν΅ν΄ μ₯μΉλ μΈ κ°μ§ μ°¨μ κ°κ°μ κ°μλλ₯Ό κ²°μ ν μ μμ΅λλ€.
κ°μλκ³ λ°μ΄ν°
κ°μλκ³λ X, Y, Z μΆμ λ°λΌ κ°μλ κ° ννλ‘ λ°μ΄ν°λ₯Ό μ 곡νλ©°, μΌλ°μ μΌλ‘ μ΄λΉ λ―Έν° μ κ³±(m/sΒ²) λλ λλ‘λ 'g-force'(1gλ μ€λ ₯ κ°μλμΈ μ½ 9.81m/sΒ²)λ‘ μΈ‘μ λ©λλ€. ννν νλ©΄μ μ μ§λ μ₯μΉλ μ€λ ₯μ΄ μλλ‘ λΉκΈ°κΈ° λλ¬Έμ ZμΆμμ μ½ +1g, X λ° YμΆμμ 0gλ₯Ό λ±λ‘ν©λλ€.
κ°μλκ³μ μ€μ νμ©
- λ°©ν₯ κ°μ§: μ₯μΉκ° μΈλ‘ λͺ¨λμΈμ§ κ°λ‘ λͺ¨λμΈμ§ νμΈν©λλ€.
- λͺ¨μ κ°μ§: νλ€κΈ°, κΈ°μΈμ΄κΈ° λλ κΈ°ν μ μ€μ²(μ: ν΄λν°μ νλ€μ΄ λμ μ·¨μ)λ₯Ό κ°μ§ν©λλ€.
- κ±Έμ μ κ³μ°: μ¬μ©μκ° κ±Έμ κ±Έμ μλ₯Ό μΆμ ν©λλ€(νΌνΈλμ€ μ±μμ νν μ¬μ©λ¨).
- κ²μ΄λ°: μ₯μΉ μμ§μμ λ°λΌ κ²μ μΊλ¦ν°λ λμμ μ μ΄ν©λλ€. μλ₯Ό λ€μ΄, λ μ΄μ± κ²μμμ ν΄λν°μ κΈ°μΈμ¬ μλμ°¨λ₯Ό μ‘°μ’ ν©λλ€.
- μΆ©λ κ°μ§: κ°μμ€λ¬μ΄ κ°μμ κ°μ§νμ¬ λμμ΄λ μλμ°¨ μ¬κ³ λ₯Ό λνλΌ μ μμ΅λλ€.
μ½λ μμ (κ°λ μ )
μ νν μ½λ ꡬνμ νλ«νΌ(iOS, Android, μΉ)μ λ°λΌ λ€λ₯΄μ§λ§, κΈ°λ³Έ μ리λ λμΌν©λλ€. κ°μλκ³ APIμ μ‘μΈμ€νκ³ , κ°μλκ³ λ°μ΄ν° μ λ°μ΄νΈλ₯Ό μν 리μ€λλ₯Ό λ±λ‘ν λ€μ, μμ λ λ°μ΄ν°λ₯Ό μ²λ¦¬ν©λλ€.
κ°λ μ μμ:
// κ°μλκ³ μ
λ°μ΄νΈ μμ λκΈ°
accelerometer.onUpdate(function(x, y, z) {
// κ°μλκ³ λ°μ΄ν° μ²λ¦¬
console.log("X: " + x + ", Y: " + y + ", Z: " + z);
});
μμ΄λ‘μ€μ½ν μ΄ν΄νκΈ°
μμ΄λ‘μ€μ½νλ κ°μλ, μ¦ μΆμ μ€μ¬μΌλ‘ νμ νλ μλλ₯Ό μΈ‘μ ν©λλ€. μ ν κ°μλλ₯Ό μΈ‘μ νλ κ°μλκ³μ λ¬λ¦¬ μμ΄λ‘μ€μ½νλ νμ μ΄λμ μΈ‘μ ν©λλ€.
μμ΄λ‘μ€μ½ν μλ λ°©μ
κ°μλκ³μ λ§μ°¬κ°μ§λ‘ λλΆλΆμ νλ μμ΄λ‘μ€μ½νλ MEMS κΈ°μ μ μ¬μ©ν©λλ€. μΌλ°μ μΌλ‘ νμ λ ₯μ λ°μνλ μ§λ ꡬ쑰λ₯Ό ν¬ν¨νκ³ μμ΅λλ€. μ½λ¦¬μ¬λ¦¬ ν¨κ³Όλ μ΄λ¬ν κ΅¬μ‘°κ° κ°μλμ λ°λΌ λ€λ₯΄κ² μ§λνκ² λ§λ€λ©°, μ΄ μ°¨μ΄κ° κ° μΆμ μ€μ¬μΌλ‘ ν νμ μλλ₯Ό κ²°μ νκΈ° μν΄ μΈ‘μ λ©λλ€.
μμ΄λ‘μ€μ½ν λ°μ΄ν°
μμ΄λ‘μ€μ½νλ X, Y, Z μΆμ μ€μ¬μΌλ‘ ν κ°μλ ννλ‘ λ°μ΄ν°λ₯Ό μ 곡νλ©°, μΌλ°μ μΌλ‘ μ΄λΉ λΌλμ(rad/s) λλ μ΄λΉ λ(deg/s)λ‘ μΈ‘μ λ©λλ€. μ΄ κ°λ€μ μ₯μΉκ° κ° μΆμ μ€μ¬μΌλ‘ νμ νλ μλλ₯Ό λνλ λλ€.
μμ΄λ‘μ€μ½νμ μ€μ νμ©
- μμ ν: μΉ΄λ©λΌ νλ€λ¦Όμ 보μ νμ¬ μ΄λ―Έμ§μ λΉλμ€λ₯Ό μμ νν©λλ€.
- λ΄λΉκ²μ΄μ : νΉν GPS μ νΈκ° μ½νκ±°λ μ¬μ©ν μ μλ μν©(μ: μ€λ΄)μμ λ΄λΉκ²μ΄μ μ μν μ νν λ°©ν₯ μ 보λ₯Ό μ 곡ν©λλ€.
- κ°μ νμ€(VR) λ° μ¦κ° νμ€(AR): 머리 μμ§μμ μΆμ νμ¬ νμ€μ μΈ VR/AR κ²½νμ μ 곡ν©λλ€. μλ₯Ό λ€μ΄, μ€μ λ‘ λ¨Έλ¦¬λ₯Ό λλ € κ°μ νκ²½μ λλ¬λ΄ λλ€.
- κ²μ΄λ°: μ₯μΉ νμ μ λ°λΌ κ²μ μΊλ¦ν°λ λμμ μ μ΄ν©λλ€.
- μ λ° λͺ¨μ νΈλνΉ: μ€ν¬μΈ λΆμ λλ μλ£ μ¬νκ³Ό κ°μ μ ν리μΌμ΄μ μ μν μμΈν μμ§μ λ°μ΄ν°λ₯Ό μΊ‘μ²ν©λλ€.
μ½λ μμ (κ°λ μ )
κ°μλκ³μ λ§μ°¬κ°μ§λ‘ μμ΄λ‘μ€μ½ν APIμ μ‘μΈμ€νκ³ λ¦¬μ€λλ₯Ό λ±λ‘ν λ€μ νμ λ°μ΄ν°λ₯Ό μ²λ¦¬ν©λλ€.
κ°λ μ μμ:
// μμ΄λ‘μ€μ½ν μ
λ°μ΄νΈ μμ λκΈ°
gyroscope.onUpdate(function(x, y, z) {
// μμ΄λ‘μ€μ½ν λ°μ΄ν° μ²λ¦¬
console.log("X: " + x + ", Y: " + y + ", Z: " + z);
});
μ₯μΉ λͺ¨μ κ°μ§: κ°μλκ³ λ° μμ΄λ‘μ€μ½ν λ°μ΄ν° κ²°ν©
μ₯μΉ λͺ¨μ κ°μ§λ κ°μλκ³μ μμ΄λ‘μ€μ½ν κ°λ³ κΈ°λ₯μ νκ³λ₯Ό λμ΄, μ΄λ€μ λ°μ΄ν°(μ’ μ’ μ§μκΈ° μΌμμ κ°μ λ€λ₯Έ μΌμμ λ°μ΄ν°μ ν¨κ»)λ₯Ό κ²°ν©νμ¬ μ₯μΉμ μμ§μκ³Ό λ°©ν₯μ λν λ³΄λ€ ν¬κ΄μ μ΄κ³ μ νν μ΄ν΄λ₯Ό μ 곡ν©λλ€. μ΄ κ³Όμ μ μ’ μ’ μΌμ μ΅ν©μ΄λΌκ³ λΆλ¦½λλ€.
μΌμ μ΅ν©μ νμμ±
κ°μλκ³μ μμ΄λ‘μ€μ½νλ κ°κ° μ μ©νμ§λ§ νκ³λ μμ΅λλ€. κ°μλκ³λ λ Έμ΄μ¦κ° λ§κ³ μκ°μ΄ μ§λ¨μ λ°λΌ λ리ννΈκ° λ°μν μ μμ΅λλ€. μμ΄λ‘μ€μ½νλ λ¨κΈ°κ° λμμ μ ννμ§λ§ μμ λ리ννΈκ° λ°μν μ μμ΅λλ€. λ μΌμμ λ°μ΄ν°λ₯Ό μ κ΅ν μκ³ λ¦¬μ¦κ³Ό κ²°ν©ν¨μΌλ‘μ¨ μ₯μΉ λͺ¨μ κ°μ§λ μ΄λ¬ν νκ³λ₯Ό 극볡νκ³ λ κ°λ ₯νκ³ μ λ’°ν μ μλ λͺ¨μ νΈλνΉμ μ 곡ν μ μμ΅λλ€.
μ₯μΉ λͺ¨μ λ°μ΄ν°
- νμ μ¨: μμ΄λ‘μ€μ½νμ μ μ¬νμ§λ§ μΌμ μ΅ν©μΌλ‘ μΈν΄ μ μ¬μ μΌλ‘ λ μ νν©λλ€.
- κ°μλ: κ°μλκ³μ μ μ¬νμ§λ§ μΌμ μ΅ν© λ° μ€λ ₯ 보μ μΌλ‘ μΈν΄ μ μ¬μ μΌλ‘ λ μ νν©λλ€.
- μ€λ ₯: μ₯μΉμ μμ©νλ μ€λ ₯μ λ°©ν₯κ³Ό ν¬κΈ°. μ΄λ₯Ό ν΅ν΄ μ€λ ₯μ μν₯μ μ¬μ©μ μ λ° κ°μλμ λΆλ¦¬ν μ μμ΅λλ€.
- νλ(Attitude): 3D 곡κ°μμ μ₯μΉμ λ°©ν₯μΌλ‘, μΌλ°μ μΌλ‘ μΏΌν°λμΈ λλ μ€μΌλ¬ κ°(λ‘€, νΌμΉ, μ)μΌλ‘ ννλ©λλ€. μ΄λ λ§μ μ ν리μΌμ΄μ μ κ°μ₯ κ°λ ₯νκ³ νΈλ¦¬ν μ 보μ λλ€.
- μκΈ°μ₯: μ§κ΅¬ μκΈ°μ₯μ κ°λμ λ°©ν₯μ λλ€. (μ§μκΈ° μΌμ λ°μ΄ν° νμ)
μ₯μΉ λͺ¨μ κ°μ§μ μ€μ νμ©
- κ³ κΈ λ΄λΉκ²μ΄μ : λ§€μ° μ νν μ€λ΄ λ΄λΉκ²μ΄μ λ° λ³΄νμ μΆμΈ‘ νλ²μ μ 곡ν©λλ€.
- ν₯μλ VR/AR κ²½ν: μ λ°ν ν€λ νΈλνΉ λ° λ°©ν₯μΌλ‘ λμ± λͺ°μ κ° μκ³ λ°μμ±μ΄ λ°μ΄λ VR/AR κ²½νμ μ 곡ν©λλ€.
- μ μ€μ² μΈμ: μ₯μΉ λλ μ ν리μΌμ΄μ μ μ΄λ₯Ό μν 볡μ‘ν μ μ€μ² μΈμμ ꡬνν©λλ€. μλ₯Ό λ€μ΄, νΉμ μ μμ§μμ μ¬μ©νμ¬ μ€λ§νΈ ν μ₯μΉλ₯Ό μ μ΄ν©λλ€. μ¬μ©μκ° μμ νλ€μ΄ μ€λ§νΈ μ€νΌμ»€μ λ³Όλ₯¨μ μ‘°μ νλ μμ€ν μ μκ°ν΄ 보μΈμ.
- λͺ¨μ μΊ‘μ²: μ λλ©μ΄μ , κ²μ λ° κΈ°ν μ ν리μΌμ΄μ μ μν μμΈν λͺ¨μ λ°μ΄ν°λ₯Ό μΊ‘μ²ν©λλ€. ν΄λν°μ μ¬μ©νμ¬ μΆ€μ μΆλ μ¬λμ λ Ήνν λ€μ κ·Έ λ°μ΄ν°λ₯Ό μ¬μ©νμ¬ μ λλ©μ΄μ μΊλ¦ν°λ₯Ό λ§λλ κ²μ μμν΄ λ³΄μΈμ.
- κ±΄κ° λ° νΌνΈλμ€ νΈλνΉ: 보ν λΆμ λ° λμ κ°μ§λ₯Ό ν¬ν¨νμ¬ λ³΄λ€ μ νν νλ νΈλνΉ λ° λΆμμ μ 곡ν©λλ€.
μ½λ μμ (κ°λ μ )
μ₯μΉ λͺ¨μ APIλ μΌλ°μ μΌλ‘ λͺ¨λ κ΄λ ¨ λͺ¨μ λ°μ΄ν°λ₯Ό ν¬ν¨νλ λ¨μΌ μ΄λ²€νΈλ₯Ό μ 곡ν©λλ€. μ΄λ₯Ό ν΅ν΄ κ²°ν©λ μΌμ μ 보μ λ μ½κ² μ‘μΈμ€νκ³ μ²λ¦¬ν μ μμ΅λλ€.
κ°λ μ μμ:
// μ₯μΉ λͺ¨μ
μ
λ°μ΄νΈ μμ λκΈ°
deviceMotion.onUpdate(function(motion) {
// λͺ¨μ
λ°μ΄ν° μ‘μΈμ€
var rotationRate = motion.rotationRate;
var acceleration = motion.userAcceleration;
var attitude = motion.attitude;
console.log("Rotation Rate: " + rotationRate);
console.log("Acceleration: " + acceleration);
console.log("Attitude: " + attitude);
});
νλ«νΌλ³ API
κ°μλκ³, μμ΄λ‘μ€μ½ν λ° μ₯μΉ λͺ¨μ λ°μ΄ν°μ μ‘μΈμ€νκΈ° μν νΉμ APIλ νλ«νΌμ λ°λΌ λ€λ¦ λλ€. λ€μμ λͺ κ°μ§ μΌλ°μ μΈ μμμ λλ€.
- iOS: Core Motion νλ μμν¬ (
CoreMotion.framework
)λ μΈ κ°μ§ μ νμ μΌμμ λͺ¨λ μ‘μΈμ€λ₯Ό μ 곡ν©λλ€.CMMotionManager
ν΄λμ€λ λͺ¨μ λ°μ΄ν° μ‘μΈμ€μ μ€μ¬μ μ λλ€. - Android:
android.hardware.SensorManager
ν΄λμ€λ κ°λ³ μΌμ(κ°μλκ³, μμ΄λ‘μ€μ½ν, μ§μκΈ° μΌμ)μ μ‘μΈμ€λ₯Ό μ 곡ν©λλ€.android.hardware.SensorEventListener
μΈν°νμ΄μ€λ μΌμ λ°μ΄ν° μ λ°μ΄νΈλ₯Ό μμ νλ λ° μ¬μ©λ©λλ€.Rotation Vector Sensor
λ μ’ μ’ μ΅ν©λ μΌμ λ°μ΄ν°μ μ‘μΈμ€νλ λ° μ¬μ©λ©λλ€. - μΉ (JavaScript): DeviceOrientation Event λ° DeviceMotion Event APIλ μΉ λΈλΌμ°μ μμ κ°μλκ³ λ° μμ΄λ‘μ€μ½ν λ°μ΄ν°μ μ‘μΈμ€λ₯Ό μ 곡ν©λλ€. κ·Έλ¬λ λΈλΌμ°μ μ§μ λ° λ³΄μ μ νμ λ€λ₯Ό μ μμ΅λλ€.
μΌμ API μ¬μ©μ μν λͺ¨λ² μ¬λ‘
- μ μ κ΄λ¦¬: μΌμ APIλ μλΉν λ°°ν°λ¦¬ μ λ ₯μ μλͺ¨ν μ μμ΅λλ€. νμν λλ§ μΌμλ₯Ό νμ±ννκ³ μ¬μ©νμ§ μμ λλ λΉνμ±ννμμμ€. λ°μ΄ν° μ λ°μ΄νΈ λΉλλ₯Ό μ€μ΄κΈ° μν΄ λ°°μΉ λλ νν°λ§ μ¬μ©μ κ³ λ €νμμμ€.
- λ°μ΄ν° νν°λ§: μΌμ λ°μ΄ν°λ λ Έμ΄μ¦κ° λ§μ μ μμ΅λλ€. λ°μ΄ν° ννν λ° λ Έμ΄μ¦ μν₯μ μ€μ΄κΈ° μν΄ νν°λ§ κΈ°μ (μ: μΉΌλ§ νν°, μ΄λ νκ· )μ μ μ©νμμμ€.
- 보μ : μΌλΆ μΌμλ μ νν λ°μ΄ν°λ₯Ό μ 곡νκΈ° μν΄ λ³΄μ μ΄ νμν©λλ€. μΌμ 보μ μ λν νλ«νΌλ³ μ§μΉ¨μ λ°λ₯΄μμμ€.
- κ°μΈ μ 보 λ³΄νΈ κ³ λ € μ¬ν: μΌμ λ°μ΄ν°λ₯Ό μμ§νκ³ μ¬μ©ν λ μ¬μ©μ κ°μΈ μ 보 보νΈμ μ μνμμμ€. μΌμ λ°μ΄ν°μ μ‘μΈμ€νκΈ° μ μ μ¬μ©μλ‘λΆν° λͺ μμ μΈ λμλ₯Ό μ»κ³ , λ°μ΄ν°κ° μ΄λ»κ² μ¬μ©λ κ²μΈμ§ λͺ ννκ² μ€λͺ νμμμ€. μ λ½ μ°ν©μμλ μΌλ° λ°μ΄ν° λ³΄νΈ κ·μ (GDPR)μ΄ κ°μΈμ μλ³νλ λ° μ¬μ©λ μ μλ μΌμ λ°μ΄ν°λ₯Ό ν¬ν¨νμ¬ κ°μΈ λ°μ΄ν°μ μ μ€ν μ²λ¦¬λ₯Ό μꡬν©λλ€.
- νλ«νΌ μ°¨μ΄: λ€μν νλ«νΌ λ° μ₯μΉ κ°μ μΌμ νλμ¨μ΄ λ° API ꡬν μ°¨μ΄μ μ μμ§νμμμ€. νΈνμ± λ° μΌκ΄λ μ±λ₯μ 보μ₯νκΈ° μν΄ λ€μν μ₯μΉμμ μ ν리μΌμ΄μ μ ν μ€νΈνμμμ€.
- μ€λ₯ μ²λ¦¬: μΌμλ₯Ό μ¬μ©ν μ μκ±°λ μ€μλνλ μν©μ μ μμ μΌλ‘ μ²λ¦¬νκΈ° μν΄ μ μ ν μ€λ₯ μ²λ¦¬λ₯Ό ꡬννμμμ€.
κ³ κΈ κΈ°μ
- μΌμ μ΅ν© μκ³ λ¦¬μ¦: λͺ¨μ νΈλνΉμ μ νμ±κ³Ό κ²¬κ³ μ±μ ν₯μμν€κΈ° μν΄ κ³ κΈ μΌμ μ΅ν© μκ³ λ¦¬μ¦(μ: μΉΌλ§ νν°, μ보 νν°)μ νμνμμμ€.
- λ¨Έμ λ¬λ: λ¨Έμ λ¬λ κΈ°μ μ μ¬μ©νμ¬ μΌμ λ°μ΄ν°λ₯Ό λΆμνκ³ μ μ€μ², νλ λλ μ¬μ©μ νλκ³Ό κ°μ ν¨ν΄μ μΈμνμμμ€. μλ₯Ό λ€μ΄, κ°μλκ³ λ° μμ΄λ‘μ€μ½ν λ°μ΄ν°λ₯Ό κΈ°λ°μΌλ‘ λ€μν μ νμ μ 체 νλ(κ±·κΈ°, λ¬λ¦¬κΈ°, μμ κ±° νκΈ°)μ μλ³νλλ‘ λ¨Έμ λ¬λ λͺ¨λΈμ νλ ¨ν©λλ€.
- μν© μΈμ: μΌμ λ°μ΄ν°λ₯Ό λ€λ₯Έ μν© μ 보(μ: μμΉ, μκ°, μ¬μ©μ νλ)μ κ²°ν©νμ¬ λμ± μ§λ₯μ μ΄κ³ κ°μΈνλ μ ν리μΌμ΄μ μ λ§λμμμ€. μ£Όλ³κ΄ λ° μ¬μ©μμ νμ¬ νλ(μ: λ μ, λΉλμ€ μμ²)μ λ°λΌ λμ€νλ μ΄ λ°κΈ°λ₯Ό μλμΌλ‘ μ‘°μ νλ μ±μ μμν΄ λ³΄μΈμ.
κ΅μ μ μμ λ° κ³ λ € μ¬ν
μΌμ λ°μ΄ν°μ μμ‘΄νλ μ ν리μΌμ΄μ μ κ°λ°ν λλ μ₯μΉ μ¬μ©, νκ²½ μμΈ λ° λ¬Ένμ λ§₯λ½μ κ΅μ μ μ°¨μ΄λ₯Ό κ³ λ €νλ κ²μ΄ μ€μν©λλ€.
- λͺ¨λ°μΌ λ€νΈμν¬ μ‘°κ±΄: λͺ¨λ°μΌ λ€νΈμν¬ μ°κ²°μ΄ μ νμ μ΄κ±°λ μ λ’°ν μ μλ μ§μμμλ μ ν리μΌμ΄μ μ΄ μ₯μΉ λ΄ μΌμ λ°μ΄ν° μ²λ¦¬ λ° μ μ₯μ λ λ§μ΄ μμ‘΄ν΄μΌ ν μ μμ΅λλ€.
- νκ²½ μμΈ: μ¨λ, μ΅λ λ° κ³ λλ μΌλΆ μΌμμ μ νλμ μν₯μ λ―ΈμΉ μ μμ΅λλ€. μκ³ λ¦¬μ¦μμ μ΄λ¬ν μμΈμ 보μ νλ κ²μ κ³ λ €νμμμ€. μλ₯Ό λ€μ΄, GPS μ νλλ λκΈ° 쑰건μ μν₯μ λ°μ μ μμΌλ―λ‘ GPS λ°μ΄ν°λ₯Ό κ°μλκ³ λ° μμ΄λ‘μ€μ½ν λ°μ΄ν°μ μ΅ν©νλ©΄ κΉλ€λ‘μ΄ νκ²½μμ λ΄λΉκ²μ΄μ μ νλλ₯Ό ν₯μμν¬ μ μμ΅λλ€.
- λ¬Ένμ μ°¨μ΄: μ μ€μ²μ μνΈμμ©μ λ¬Ένλ§λ€ λ€λ₯Ό μ μμ΅λλ€. μ΄λ¬ν μ°¨μ΄λ₯Ό μμ©νλλ‘ μ ν리μΌμ΄μ μ μ‘°μ νλ κ²μ κ³ λ €νμμμ€. μλ₯Ό λ€μ΄, νΉμ μ μμ§μμ μμ‘΄νλ μ μ€μ² κΈ°λ° μ μ΄ μμ€ν μ λ€λ₯Έ λ¬Ένμ λ§₯λ½μ λ§κ² μ¬μ©μ μ μλμ΄μΌ ν μ μμ΅λλ€.
- μ κ·Όμ±: μ ν리μΌμ΄μ μ΄ μ₯μ κ° μλ μ¬μ©μμκ²λ μ κ·Ό κ°λ₯νμ§ νμΈνμμμ€. λ체 μ λ ₯ λ°©λ²μ μ 곡νκ³ μΌμ λ°μ΄ν°λ₯Ό μ¬μ©νμ¬ μ΄λμ± μ₯μ κ° μλ μ¬μ©μλ₯Ό λλ κ²μ κ³ λ €νμμμ€. μλ₯Ό λ€μ΄, λ§μ°μ€λ₯Ό μ¬μ©ν μ μλ μ¬μ©μλ₯Ό μν΄ λ¨Έλ¦¬ μΆμ μ μ¬μ©νμ¬ μ»΄ν¨ν° 컀μλ₯Ό μ μ΄ν©λλ€.
κ²°λ‘
κ°μλκ³, μμ΄λ‘μ€μ½ν λ° μ₯μΉ λͺ¨μ APIλ μ¬μ©μ μμ§μκ³Ό λ°©ν₯μ λ°μνλ νμ μ μ΄κ³ λ§€λ ₯μ μΈ μ ν리μΌμ΄μ μ λ§λ€κΈ° μν κ°λ ₯ν λꡬλ₯Ό κ°λ°μμκ² μ 곡ν©λλ€. μ΄λ¬ν μΌμμ κΈ°λ₯μ μ΄ν΄νκ³ , λͺ¨λ² μ¬λ‘λ₯Ό ꡬννλ©°, κ΅μ μ μ°¨μ΄λ₯Ό κ³ λ €ν¨μΌλ‘μ¨ κ°λ°μλ μ§μ μΌλ‘ κΈλ‘λ²νκ³ μν₯λ ₯ μλ μ ν리μΌμ΄μ μ ꡬμΆν μ μμ΅λλ€.
κ°λ₯μ±μ 무κΆλ¬΄μ§νλ©°, κ²μ κ²½ν ν₯μ λ° λ΄λΉκ²μ΄μ μ νλ κ°μ λΆν° μλ‘μ΄ ννμ μνΈμμ© κ°λ₯ν λ° κ±΄κ° μ¦μ§μ μ΄λ₯΄κΈ°κΉμ§ λ€μν©λλ€. μΌμ κΈ°μ μ΄ κ³μ λ°μ ν¨μ λ°λΌ μμΌλ‘ λͺ λ μμ λμ± ν₯λ―Έλ‘κ³ νμ μ μΈ μ ν리μΌμ΄μ μ΄ λ±μ₯ν κ²μΌλ‘ κΈ°λλ©λλ€.