2016-08-30 13 views
3

現在、私はまもなく開始する最終年度の大学プロジェクトの計画/研究段階に入っています。Android GPSグループ化

私はアンドロイドアプリケーションをGPS /トラッキングに集中させたいと考えています。目的は、さまざまなデバイスにユーザーをグループ化することです。 1人のユーザがパスワードを生成し、その後他のユーザが使用してグループを作成することができます。このグループの誰もが、Googleマップ上のそれぞれの場所を見ることができます。

私の質問は、このようなアプリを作成するために必要なのでしょうか?私はアンドロイドの開発に経験はありません。私はJavaとPythonを十分に理解しています。

自分自身の理解から、サーバーとデータベースであるGoogle Maps APIが必要だと思います。

すべての記事/チュートリアルやアドバイスをいただければ幸いです。 Androidの側から

答えて

1

  • GPSによる位置情報を取得するために、あなたはGoogleApiClientを使用することをお勧めします。これにより、Wi-Fiをローカライズに使用しているためGPSが特定の場所で利用できなくても、良いロケーション結果が得られます。このチュートリアルをチェックアウト : http://www.androidhive.info/2015/02/android-location-api-using-google-play-services/

  • は、サーバーへの接続を処理するには、Retrofitまたは少なくともUnirestを使用することに興味があるかもしれません。これらは、サーバーへのリクエストに役立つライブラリーです。

  • マップの場合、Google MapsまたはOpenStreetMapを使用できます。両側から

  • サーバに何かを送り、あなたには、いくつかのシリアル化ツールを使用することもできます応答を受信するために。 JSONを使用して通信し、その目的でたとえばGSONを使用することを検討してください。これをウェブ上で使用するためのチュートリアルがたくさんあります。たとえば、次のようにサーバ側からhttp://www.javacreed.com/simple-gson-example/

  • Spring Boot Frameworkをチェックしてください。それは本当に強力なフレームワークです。それは初心者にはあまりにも多すぎるかもしれませんが、とにかくそれを知ることは良いことです。メンテナンスのためのコードを簡単に作成することができます。メソッドを作成し、@RequestMapping("/players")で注釈を付けることができます。

  • jOOQは、タイプセーフなSQLクエリを作成する可能性があります。しかし、それを持っている必要はありませんが、それは物事をより簡単にするでしょう。

  • おそらく小規模なアプリケーションですが、データベース接続プールを使用することができます。例:HikariCP

  • データベース:データベースエンジンを選択する必要があります。とPostGISプラグインを使用することをお勧めします。これらのプラグインを使用すると、たとえば、ある人から他の人までの距離を簡単に計算できるからです。それはあなたのために地球の湾曲を処理します。一般的に、ロケーションデータを格納するのに便利です。

あなたのコンピュータ上ですべてを生かしたり、クラウドコンピューティングサービスプロバイダを使用することができます。たとえば、Amazon Web Servicesは、EC2インスタンスとPostgreSQLのようなリレーショナルデータベースを提供し、無料の層を提供するため、限定された使用期間と限られた時間で無料でサービスを利用できます。彼らはまた、学生に親切です。チェックアウトはGitHub Student Developer Packです。

+0

詳細@Defozoあなたの詳細な答えをありがとう、私はこれらのすべてを見ていきます。私が達成しようとしているものに対して、無作為に生成されたパスワードを使ってデバイスを効率的に接続する方法はありますか、それとも、デバイスを接続してお互いの場所を見るより良い方法でしょうか? – colin

+1

まあ、それはあなたが達成しようとしているものによって異なります。場所を他のユーザーと共有する目的は何ですか?彼らはリンクを共有することで接続できますか?または、パスワードを実生活で渡す必要がありますか? – Defozo

+0

私は、人がアプリに行くことができ、グループを作成することができます、その人はその後、グループに参加することができます友人にグループにパスワードを与えることができます。私たちは人々がグループに参加して、その場所が地図上に現れ、人々を追跡することができます。たとえば、お友達と出かけて迷子になった場合は、アプリに移動して場所を確認してもう一度見つけることができます。私の計画では、グループを作成するとランダムなパスワード/キーが生成され、それを他のユーザーが互いに接続するために使用できるということでした。ただ、これは貧しいアプローチであるか、より良いものになるだろうか? – colin