GPS Tracker layihə kimsə Google Maps istifadə edərək, bir GPS effektiv mobil telefon izlemek üçün imkan verir. Bu layihə üçün mən Sprint / Nextel şəbəkə Motorola i355 mobil telefon istifadə.
Siz mobil telefon sizin veb yenilikləri edə bilər ki, bir veri plan lazımdır. Yükleme talimatları üçün download Readme.txt faylı oxuyun. Mən sizə layihə zövq ümid edirik. Əgər hər hansı bir sualınız varsa, forumda isteyin çekinmeyin.
Mövcud iki layihə var. Birinci layihə NET və Microsoft SQL Server ilə inşa edilmişdir. İkinci layihə PHP və MySQL ilə inşa edilmişdir. Əgər hər hansı bir təklifiniz varsa, Mənə bildirin çekinmeyin. Hər iki layihə telefon Java (J2ME) istifadə edin.
Nasıl çalışır:
Bu layihə üçün kod Yox çox çətindir, lakin bəzi tanımadığı ola bilər tiers və dil bir sıra span edir. Şəkil 1 Google map telefon məlumat axını göstərir.
Telefon
Telefon kodu ilə başlamaq edək. Bu app Java 2 Micro Edition (J2ME) istifadə java yazılmışdır. Java C # ilə çox oxşardır. Siz kod vasitəsilə baxmaq kimi, C # coder çaşdırmaq bilər ki, yalnız bir şey vektor edir. A java vektor olduqca çox C # ArrayList, dinamik array var. App LBSMidlet7 və Qworker 2 dərsləri var. A midlet mobil telefonlar çalışır, bir app edir. Sinif müəyyən bir göz atın. Bu MIDlet sinif uzanır və bir LocationListener interfeys həyata keçirir. Bu, bizim sinif ki, interfeys bütün üsul təriflər qoymaq lazımdır deməkdir. Biz indi, bir az ki, almaq nin konstruktor baxaq lazımdır.
Biz konstruktor 2 şeylər. Biz QWorker obyekt yaratmaq və biz yüklemek olacaq "bu" və veb keçir. getAppProperty üsul JAD fayl həyata atributları alır. Sevimli mətn redaktoru JAD faylını açın və orada siz GPS məlumatları göndərə bilərsiniz web görəcəksiniz. Biz "bu" GWorker obyekt keçən edirik necə edək? Bu LBSMidlet7 obyekt var. QWorker sinif bir sürətli göz atın, bu Mövzu sinif uzanır. Biz LBSMidlet7 konstruktor ilə worker.start () zəng görə. Biz işçi mövzu başlamaq istəyirəm.
Bir mövzu başlamaq zaman, nə edirsən bir obyekt yaratmaq və sonra həmin obyekt run () metodu çalışır. Run metodu bir göz atın. Bu sonsuz loop var və loop bunu ilk şey) (queue.wait zəng edir. Növbə müəyyən oldu. queue mücərrəd data növü (ADT), yalnız bir bank bir sıra kimi, xətti geri növbə daxil edin və siz xətti qarşısında almaq zaman növbə buraxın. Növbə müəyyən oldu, bu, bizim vektor (dinamik array) var. Siz Mövzu sinif uzanan bir sinif daxilində bir obyekt () gözləyin zəng zaman, obyekt yatmaq ki, qoyur. Bir az bu barədə düşünün. Ki, xətt hit zaman, bizim QWorker obyekt artıq gözləyir ... Nə gözləyir? Biz bir dəqiqə almaq lazımdır. Biz bunu əvvəl, senkronize söz nəzər. Bu növbə wrapping ki, görürsünüz. Nə edir ki, növbə bir kilidi qoyur və kodu az blok ilə aparılır qədər növbə toxunmaq deyil, bütün digər proseslər izah edir.
Ok, belə ki, indi biz işçi mövzu açılmış və yatmaq qoymaq etdik. İndi LBSMidlet7 sinif geri və startApp () metodu nəzər salaq. Bir Midlet dövründə, konstruktor dəfə adlanır və sonra startApp () metodu növbəti adlanır. Əslində məsələn bir flip telefon yaxın zaman kimi, bir neçə dəfə adlanır və sonra yenidən açmaq olar. Nə olar app dayandırılıb ki, və açıq yenidən telefon çevirmek zaman, startApp () yenidən adlanır. StartApp () ki, niyə biz bütün bu mövzuları yaradılması ... biz ekran almaq və bir artıq yaradılmışdır deyil, onda biz bir LocationProvider yaratmaq və başqa mövzu yaratmaq? Yaxşı sual. Bir midlet (app) dayandırılıb zaman, yaradılmış backgroud mövzuları çalışan saxlamaq. Bu bizim GPS məlumat almaq və biz etmək telefon zəngləri kimi, digər mühüm stuff etmək isə bizim server göndərmək üçün imkan verir.
LocationProvider bizim GPS data alır edir. Birinci biz default istifadə etdiyiniz, bir meyarlar yaratmaq, lakin siz bizim Yer dinləyici yaratmaq və s. Dəqiqlik kimi məhsulları, cavab vaxt Next bilərsiniz. Bu kimi səslənir yalnız nə olduqca çox var. Burada GPS məlumat almaq istəyirəm necə tez-tez interval bilərsiniz. Hal-hazırda saniyə 60 müəyyən oldu. Məlumat gəldikdə, locationUpdated () metodu adlanır. Bu LocationListener interfeys tələb üsullardan başqa biridir. Burada başqa bir mövzu yaratmaq və () getLocation zəng. getLocation () metodu, GPS koordinatları olur bir az sonra web server göndərir bir queryString yaradır və sonra QWorker sinif worker.addToQueue çağırır.
Nin QWorker sinif üzərində geri getmək və metodu nə görmək edək. Bu sıra queryString əlavə və sonra queue.notify çağırır (). Queue.notify () nə tahmin? Bu, bizim yataq QWorker mövzu wakes və iş almaq üçün deyir! Növbə bizim zənglər bir dəfə daha senkronize blok bükülmüş ki, görürsünüz. Təhlükəsiz Threading etiqad edin ... xəbərdar zaman () bir mövzu çağırıb ki, bu nə) (geri run () metodu getmək və sağ biz gözləmək növbə bildirib harada sonra kodu növbəti line icra edir. Belə ki, indi biz yalnız hazır web server üçün GPS məlumat göndərmək üçün. Biz orada kodu maraqlı xətləri bir neçə var. İlk növbədə həyata queryString olur, lakin indi orada yarpağı peekInQueue () zəng. Sonra bizim web server queryString göndərmək üçün çalışır getUrl metodu queryString göndərir. Uğurlu varsa, biz növbə queryString edə bilərsiniz. Əgər, biz növbə queryString tərk və daha sonra server göndərmək üçün cəhd edin.
Niyə dünyada biz burada bu mürəkkəb növbə var? Mən sizə xahiş sevindim. Siz GPS məlumatları qəbul, lakin mobil telefon bağlantısı bir sahədə həqiqətən deyil zaman dəfə ola bilər. Biz mobil telefon bağlantısı yoxdur, biz web server üçün GPS məlumat göndərə bilməz. Belə ki, biz növbə bizim queryString qalmaq və mobil telefon qoşma imkanı ilə bir sahədə geri almaq qədər gözləyin. İndi məni eşitmək edə bilərəmmi?
Yaxşı, biz telefon kodu izah vaxt olduqca ədalətli bit sərf etdik. Bu bir az mürəkkəb, lakin sizin ehtiyaclarını uyğun kodu almaq və ona dəyişikliklər etmək istəyirsinizsə, neler bilmək vacibdir. Burada Yer əsaslı xidmətlər API daha çox imkanları haqqında bildirin Sun saytda yaxşı bir maddə var. Hal-hazırda, bizim queryString bizim web gələn edilməlidir haqqında İT qədər tutmaq və nə görmək edək.
Bu Release Yenilikler:
- Ana səhifə
- Linux
- GPS Tracker
Kateqoriya axtarış
- Audio proqram
- Biznes və ofis proqram
- Brauzerlər
- Desktop aksesuarların
- Digital foto proqram
- Disk və fayl software
- Drivers
- Ekran
- Ev və ailə proqram
- Geliştirici alətləri
- Internet software
- Məhsuldarlığı proqram
- Oyunlar
- Qrafik dizayn proqram
- Rabitə proqram
- Sistem kommunal
- şəbəkə proqram
- Təhlükəsizlik proqram
- Təhsil və elm software
- Video software
- Web inkişaf proqram
Populyar proqram
Sophos UTM 17 Feb 15
Elastix 2 Oct 16
LMule 4 Jun 15
Openfiler 12 May 15
Q4OS 2 Oct 17
Porteus Xfce 12 Jan 17
Puppy Linux 19 Feb 15
GPS Tracker
Şərh GPS Tracker
Kateqoriya axtarış
- Audio proqram
- Biznes və ofis proqram
- Brauzerlər
- Desktop aksesuarların
- Digital foto proqram
- Disk və fayl software
- Drivers
- Ekran
- Ev və ailə proqram
- Geliştirici alətləri
- Internet software
- Məhsuldarlığı proqram
- Oyunlar
- Qrafik dizayn proqram
- Rabitə proqram
- Sistem kommunal
- şəbəkə proqram
- Təhlükəsizlik proqram
- Təhsil və elm software
- Video software
- Web inkişaf proqram
Populyar proqram
Antergos 1 Dec 16
Boot-Repair-Disk 20 Feb 15
Simple Scan 2 Dec 17
Apricity OS 12 Jan 17
Xfburn 17 Feb 15
GTK VNC Viewer 2 Jun 15
Unity Linux 15 Apr 15
Şərhlər tapılmadı