diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
new file mode 100644
index 0000000..681f41a
--- /dev/null
+++ b/.idea/codeStyles/Project.xml
@@ -0,0 +1,116 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ xmlns:android
+
+ ^$
+
+
+
+
+
+
+
+
+ xmlns:.*
+
+ ^$
+
+
+ BY_NAME
+
+
+
+
+
+
+ .*:id
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ .*:name
+
+ http://schemas.android.com/apk/res/android
+
+
+
+
+
+
+
+
+ name
+
+ ^$
+
+
+
+
+
+
+
+
+ style
+
+ ^$
+
+
+
+
+
+
+
+
+ .*
+
+ ^$
+
+
+ BY_NAME
+
+
+
+
+
+
+ .*
+
+ http://schemas.android.com/apk/res/android
+
+
+ ANDROID_ATTRIBUTE_ORDER
+
+
+
+
+
+
+ .*
+
+ .*
+
+
+ BY_NAME
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 37a7509..dfd2c79 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,6 +1,6 @@
-
+
diff --git a/app/src/main/java/com/example/cosmosclient/GPSresources/StoreLocationsMethods.java b/app/src/main/java/com/example/cosmosclient/GPSresources/StoreLocationsMethods.java
index 51c215e..dcf1453 100644
--- a/app/src/main/java/com/example/cosmosclient/GPSresources/StoreLocationsMethods.java
+++ b/app/src/main/java/com/example/cosmosclient/GPSresources/StoreLocationsMethods.java
@@ -45,7 +45,7 @@
Feature childFeature = new Feature();
childFeature.setCode(e.getValue().get(i).getCode());
childFeature.setLocation(e.getValue().get(i).getLocation());
- childFeature.setName(e.getValue().get(i).getName());
+ childFeature.setGenre(e.getValue().get(i).getGenre());
if(nearShops.indexOf(childFeature)==-1){
/*通知に必要な近い店の情報を格納する処理を格納*/
nearShops.add(childFeature);
diff --git a/app/src/main/java/com/example/cosmosclient/app/Cosmos.java b/app/src/main/java/com/example/cosmosclient/app/Cosmos.java
index ede712b..30be5e1 100644
--- a/app/src/main/java/com/example/cosmosclient/app/Cosmos.java
+++ b/app/src/main/java/com/example/cosmosclient/app/Cosmos.java
@@ -4,10 +4,8 @@
import com.example.cosmosclient.entities.AreaInformation;
import com.example.cosmosclient.entities.Group;
-import com.example.cosmosclient.entities.Location;
-import java.util.HashMap;
-
+import java.util.ArrayList;
import java.util.HashMap;
public class Cosmos extends Application {
@@ -16,6 +14,7 @@
private HashMap groups = new HashMap<>();
private String uId=null;
private HashMap areaInfo = new HashMap<>();
+ private ArrayList areaInfoKey= new ArrayList<>();
//token処理
public void setToken(String token){
@@ -64,5 +63,11 @@
public AreaInformation getAreaInfo(int areaId){
return areaInfo.get(areaId);
}
+ public ArrayList AreaInfoGetKey(){
+ for(int key : areaInfo.keySet()){
+ areaInfoKey.add(key);
+ }
+ return areaInfoKey;
+ }
}
diff --git a/app/src/main/java/com/example/cosmosclient/entities/AreaInformation.java b/app/src/main/java/com/example/cosmosclient/entities/AreaInformation.java
index 4a581ac..96b512a 100644
--- a/app/src/main/java/com/example/cosmosclient/entities/AreaInformation.java
+++ b/app/src/main/java/com/example/cosmosclient/entities/AreaInformation.java
@@ -5,14 +5,21 @@
import java.util.HashMap;
public class AreaInformation {
- private Location location = new Location();
+ private CosmosLocation location = new CosmosLocation();
private HashMap> feature = new HashMap<>();
private Time lastUpdated;
- public void setLocation(Location location){
+ public void setLatitude(double latitude) {
+ location.setLatitude(latitude);
+ }
+ public void setLongitude(double longitude) {
+ location.setLongitude(longitude);
+ }
+
+ public void setLocation(CosmosLocation location){
this.location = location;
}
- public Location getLocation(){
+ public CosmosLocation getLocation(){
return this.location;
}
@@ -29,4 +36,5 @@
public Time getLastUpdated() {
return lastUpdated;
}
+
}
diff --git a/app/src/main/java/com/example/cosmosclient/entities/CosmosLocation.java b/app/src/main/java/com/example/cosmosclient/entities/CosmosLocation.java
new file mode 100644
index 0000000..a13d9db
--- /dev/null
+++ b/app/src/main/java/com/example/cosmosclient/entities/CosmosLocation.java
@@ -0,0 +1,24 @@
+package com.example.cosmosclient.entities;
+
+public class CosmosLocation {
+ private double latitude;
+ private double longitude;
+
+ public void setLatitude(double latitude) {
+ this.latitude = latitude;
+ }
+ public double getLatitude() {
+ return latitude;
+ }
+
+ public void setLongitude(double longitude) {
+ this.longitude = longitude;
+ }
+ public double getLongitude() {
+ return longitude;
+ }
+
+ public int hashCode(){
+ return (int)((latitude+90)/0.1)+(int)((longitude/0.1)*1800);
+ }
+}
diff --git a/app/src/main/java/com/example/cosmosclient/entities/Feature.java b/app/src/main/java/com/example/cosmosclient/entities/Feature.java
index 63c3374..7a00f80 100644
--- a/app/src/main/java/com/example/cosmosclient/entities/Feature.java
+++ b/app/src/main/java/com/example/cosmosclient/entities/Feature.java
@@ -1,15 +1,22 @@
package com.example.cosmosclient.entities;
public class Feature {
- private String name;
+ private String genre;
private int code;
- private Location location = new Location();
+ private CosmosLocation location = new CosmosLocation();
- public void setName(String name){
- this.name = name;
+ public void setLatitude(double latitude) {
+ location.setLatitude(latitude);
}
- public String getName(){
- return this.name;
+ public void setLongitude(double longitude) {
+ location.setLongitude(longitude);
+ }
+
+ public String getGenre() {
+ return genre;
+ }
+ public void setGenre(String genre) {
+ this.genre = genre;
}
public void setCode(int code){
@@ -19,10 +26,10 @@
return this.code;
}
- public void setLocation(Location location){
+ public void setLocation(CosmosLocation location){
this.location = location;
}
- public Location getLocation(){
+ public CosmosLocation getLocation(){
return this.location;
}
}
diff --git a/app/src/main/java/com/example/cosmosclient/entities/Location.java b/app/src/main/java/com/example/cosmosclient/entities/Location.java
deleted file mode 100644
index 113b555..0000000
--- a/app/src/main/java/com/example/cosmosclient/entities/Location.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.example.cosmosclient.entities;
-
-public class Location {
- private double latitude;
- private double longitude;
-
- public void setLatitude(double latitude) {
- this.latitude = latitude;
- }
- public double getLatitude() {
- return latitude;
- }
-
- public void setLongitude(double longitude) {
- this.longitude = longitude;
- }
- public double getLongitude() {
- return longitude;
- }
-
- public int hashCode(){
- return (int)((latitude+90)/0.1)+(int)((longitude/0.1)*1800);
- }
-}
diff --git a/app/src/main/java/com/example/cosmosclient/resources/LocationRest.java b/app/src/main/java/com/example/cosmosclient/resources/LocationRest.java
new file mode 100644
index 0000000..0d181ae
--- /dev/null
+++ b/app/src/main/java/com/example/cosmosclient/resources/LocationRest.java
@@ -0,0 +1,20 @@
+package com.example.cosmosclient.resources;
+
+import com.example.cosmosclient.entities.AreaInformation;
+import com.example.cosmosclient.entities.Feature;
+
+import java.util.ArrayList;
+
+import retrofit2.Call;
+import retrofit2.http.GET;
+import retrofit2.http.Query;
+
+
+public interface LocationRest {
+
+ @GET("shops")
+ Call> LocationService(@Query("leftLatitude") String leftLat,
+ @Query("leftLongitude") String leftLon,
+ @Query("rightLatitude") String rightLat,
+ @Query("rightLongitude") String rightLon);
+}
diff --git a/app/src/main/java/com/example/cosmosclient/resources/ShopRest.java b/app/src/main/java/com/example/cosmosclient/resources/ShopRest.java
deleted file mode 100644
index 0d9a51c..0000000
--- a/app/src/main/java/com/example/cosmosclient/resources/ShopRest.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.example.cosmosclient.resources;
-
-import com.example.cosmosclient.entities.Feature;
-
-import retrofit2.Call;
-import retrofit2.http.GET;
-import retrofit2.http.Query;
-
-public interface ShopRest {
-
- @GET("rest")
- Call ShopRequest(@Query("longitude") double longitude,
- @Query("latitude") double latitude,
- @Query("longitudeRange") double longitudeRange,
- @Query("latitudeRange") double latitudeRange,
- @Query("shop") int shop);
-}
diff --git a/app/src/main/java/com/example/cosmosclient/services/CosomosBackgroundService.java b/app/src/main/java/com/example/cosmosclient/services/CosomosBackgroundService.java
index 68a3f40..851eee6 100644
--- a/app/src/main/java/com/example/cosmosclient/services/CosomosBackgroundService.java
+++ b/app/src/main/java/com/example/cosmosclient/services/CosomosBackgroundService.java
@@ -8,6 +8,7 @@
import android.app.PendingIntent;
import android.content.Intent;
import android.content.Context;
+import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.graphics.Color;
import android.location.Location;
@@ -19,16 +20,22 @@
import android.support.annotation.RequiresApi;
import android.support.v4.app.ActivityCompat;
import android.util.Log;
+import android.widget.Toast;
import com.example.cosmosclient.R;
import com.example.cosmosclient.app.Cosmos;
+import com.example.cosmosclient.entities.AreaInformation;
+import com.example.cosmosclient.entities.Feature;
import com.example.cosmosclient.entities.Group;
import com.example.cosmosclient.entities.GroupListResponse;
import com.example.cosmosclient.entities.RequestList;
import com.example.cosmosclient.entities.jsons.GroupJson;
+import com.example.cosmosclient.entities.CosmosLocation;
import com.example.cosmosclient.resources.GroupsRest;
+import com.example.cosmosclient.resources.LocationRest;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.TimeZone;
import java.util.Timer;
import java.util.TimerTask;
@@ -43,8 +50,12 @@
public class CosomosBackgroundService extends IntentService implements LocationListener {
private Context context;
private LocationManager locationManager;
+ private CosmosLocation LOC = new CosmosLocation();
+ private double leftLat,leftLon,rightLat,rightLon; //ここに計算予定
private static final int MinTime = 1000;/*最小時間間隔*/
private static final float MinDistance = 1;/*最小距離間隔*/
+ private int count = 0;
+ private int areacount= 0;
public CosomosBackgroundService() {
super("CosomosBackgroundService");
@@ -159,11 +170,68 @@
}
@Override
- public void onLocationChanged(Location location) {
+ public void onLocationChanged(final Location location) {
// Log.d("debug", "onLocationChanged");
Log.d("debug", "lat:" + location.getLatitude());
Log.d("debug", "lon:" + location.getLongitude());
+ Cosmos app = (Cosmos) getApplication();
+ count = 0;
+ LOC.setLatitude(location.getLatitude());
+ LOC.setLongitude(location.getLongitude());
+ for(int i = 0;i> call = LocationService.LocationService(String.valueOf(leftLat),
+ String.valueOf(leftLon),String.valueOf(rightLat),String.valueOf(rightLon));
+
+ //サーバからデータ受け取り
+ call.enqueue(new Callback>() {
+ //成功時
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ if (response.isSuccessful()) {
+ ArrayList result = response.body();
+ AreaInformation areaList = new AreaInformation();
+ CosmosLocation areaInfo = new CosmosLocation();
+
+ //app/Cosmosに情報保存
+ Cosmos app = (Cosmos) getApplication();
+ app.getAreaInfo(areacount).setLocation(areaInfo);
+
+ } else {
+ //onFailureでキャッチできないエラー用
+ Toast.makeText(CosomosBackgroundService.this,
+ "通信エラー", Toast.LENGTH_LONG).show();
+ }
+ }
+
+ //失敗時
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+ t.printStackTrace();
+ Toast.makeText(CosomosBackgroundService.this,
+ "区画情報の更新に失敗しました", Toast.LENGTH_SHORT).show();
+ }
+ });
+ }
}
@Override