diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index f872505..f677df0 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -74,8 +74,15 @@ android:label="グループ一覧" android:theme="@style/AppTheme.NoActionBar"> + + + + + + @@ -83,8 +90,7 @@ - - + \ No newline at end of file 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 d5c271d..ac5e45a 100644 --- a/app/src/main/java/com/example/cosmosclient/app/Cosmos.java +++ b/app/src/main/java/com/example/cosmosclient/app/Cosmos.java @@ -1,14 +1,15 @@ package com.example.cosmosclient.app; import android.app.Application; +import android.content.ComponentCallbacks; +import android.content.res.Configuration; +import android.util.Log; import com.example.cosmosclient.entities.AreaInformation; import com.example.cosmosclient.entities.Group; -import com.example.cosmosclient.entities.Location; import android.content.SharedPreferences; -import java.util.HashMap; - +import java.util.Collection; import java.util.HashMap; public class Cosmos extends Application { @@ -17,6 +18,78 @@ private HashMap groups = new HashMap<>(); private String uId=null; private HashMap areaInfo = new HashMap<>(); + private String TAG = Cosmos.class.getSimpleName(); + + public Cosmos() { + super(); + Log.d(TAG, " Constructor"); + } + + @Override + public void onCreate() { + Log.d(TAG, " onCreate"); + super.onCreate(); + } + + @Override + public void onTerminate() { + Log.d(TAG, " onTerminate"); + super.onTerminate(); + } + + @Override + public void onConfigurationChanged(Configuration newConfig) { + Log.d(TAG, " onConfigurationChanged"); + super.onConfigurationChanged(newConfig); + } + + @Override + public void onLowMemory() { + Log.d(TAG, " onLowMemory"); + super.onLowMemory(); + } + + @Override + public void onTrimMemory(int level) { + Log.d(TAG, " onTrimMemory"); + super.onTrimMemory(level); + } + + @Override + public void registerComponentCallbacks(ComponentCallbacks callback) { + Log.d(TAG, " registerComponentCallbacks"); + super.registerComponentCallbacks(callback); + } + + @Override + public void unregisterComponentCallbacks(ComponentCallbacks callback) { + Log.d(TAG, " unregisterComponentCallbacks"); + super.unregisterComponentCallbacks(callback); + } + + @Override + public void registerActivityLifecycleCallbacks(ActivityLifecycleCallbacks callback) { + Log.d(TAG, " registerActivityLifecycleCallbacks"); + super.registerActivityLifecycleCallbacks(callback); + } + + @Override + public void unregisterActivityLifecycleCallbacks(ActivityLifecycleCallbacks callback) { + Log.d(TAG, " unregisterActivityLifecycleCallbacks"); + super.unregisterActivityLifecycleCallbacks(callback); + } + + @Override + public void registerOnProvideAssistDataListener(OnProvideAssistDataListener callback) { + Log.d(TAG, " registerOnProvideAssistDataListener"); + super.registerOnProvideAssistDataListener(callback); + } + + @Override + public void unregisterOnProvideAssistDataListener(OnProvideAssistDataListener callback) { + Log.d(TAG, " unregisterOnProvideAssistDataListener"); + super.unregisterOnProvideAssistDataListener(callback); + } //token処理 public void setToken(String token){ @@ -54,6 +127,10 @@ return groups.get(gId); } + public Collection getGroups() { + return groups.values(); + } + //uId処理 public void setuId(String uId){ SharedPreferences prefData = getSharedPreferences("pref_data", MODE_PRIVATE); diff --git a/app/src/main/java/com/example/cosmosclient/services/CosmosBackgroundService.java b/app/src/main/java/com/example/cosmosclient/services/CosmosBackgroundService.java new file mode 100644 index 0000000..d194049 --- /dev/null +++ b/app/src/main/java/com/example/cosmosclient/services/CosmosBackgroundService.java @@ -0,0 +1,348 @@ +package com.example.cosmosclient.services; + +import android.Manifest; +import android.app.IntentService; +import android.app.Notification; +import android.app.NotificationChannel; +import android.app.NotificationManager; +import android.app.PendingIntent; +import android.content.Intent; +import android.content.Context; +import android.content.pm.PackageManager; +import android.content.res.Configuration; +import android.graphics.Color; +import android.location.Location; +import android.location.LocationListener; +import android.location.LocationManager; +import android.os.Build; +import android.os.Bundle; +import android.os.IBinder; +import android.provider.Settings; +import android.support.annotation.Nullable; +import android.support.annotation.RequiresApi; +import android.support.v4.app.ActivityCompat; +import android.util.Log; + +import com.example.cosmosclient.R; +import com.example.cosmosclient.app.Cosmos; +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.resources.GroupsRest; + +import java.io.FileDescriptor; +import java.io.IOException; +import java.io.PrintWriter; +import java.util.TimeZone; +import java.util.Timer; +import java.util.TimerTask; + +import retrofit2.Call; +import retrofit2.Callback; +import retrofit2.Response; +import retrofit2.Retrofit; +import retrofit2.converter.jackson.JacksonConverterFactory; + + +public class CosmosBackgroundService extends IntentService implements LocationListener { + private Context context; + private LocationManager locationManager; + private static final int MinTime = 1000;/*最小時間間隔*/ + private static final float MinDistance = 1;/*最小距離間隔*/ + private boolean isServiceRunning = false; //サービスが起動しているかを確認 + private String TAG = CosmosBackgroundService.class.getSimpleName(); + + public CosmosBackgroundService() { + super("CosmosBackgroundService"); + Log.d(TAG, "Constructor"); + } + + @Override + public void setIntentRedelivery(boolean enabled) { + Log.d(TAG, "setIntentRedelivery"); + super.setIntentRedelivery(enabled); + } + + @Override + public void onCreate() { + Log.d(TAG, "onCreate"); + super.onCreate(); + context = getApplicationContext(); + // LocationManager インスタンス生成 + locationManager = (LocationManager) getSystemService(LOCATION_SERVICE); + } + + @Override + public void onStart(@Nullable Intent intent, int startId) { + Log.d(TAG, "onStart"); + super.onStart(intent, startId); + } + + @RequiresApi(api = Build.VERSION_CODES.O) + @Override + public int onStartCommand(Intent intent, int flags, int startId) { + Log.d(TAG, "onStartCommand"); + if(!isServiceRunning) { + int requestCode = 0; + String channelId = "default"; + String title = context.getString(R.string.app_name); + PendingIntent pendingIntent = + PendingIntent.getActivity(context, requestCode, + intent, PendingIntent.FLAG_UPDATE_CURRENT); + // ForegroundにするためNotificationが必要、Contextを設定 + NotificationManager notificationManager = + (NotificationManager) context. + getSystemService(Context.NOTIFICATION_SERVICE); + // Notification Channel 設定 + NotificationChannel channel = new NotificationChannel( + channelId, title, NotificationManager.IMPORTANCE_DEFAULT); + channel.setDescription("Silent Notification"); + // 通知音を消さないと毎回通知音が出てしまう + // この辺りの設定はcleanにしてから変更 + channel.setSound(null, null); + // 通知ランプを消す + channel.enableLights(false); + channel.setLightColor(Color.BLUE); + // 通知バイブレーション無し + channel.enableVibration(false); + if (notificationManager != null) { + notificationManager.createNotificationChannel(channel); + Notification notification = new Notification.Builder(context, channelId) + .setContentTitle(title) + // 本来なら衛星のアイコンですがandroid標準アイコンを設定 + .setSmallIcon(android.R.drawable.btn_star) + .setContentText("GPS") + .setAutoCancel(true) + .setContentIntent(pendingIntent) + .setWhen(System.currentTimeMillis()) + .build(); + + // startForeground + startForeground(1, notification); + } + + startGPS(); + Timer timer = new Timer(); + TimerTask task = new TimerTask() { + @Override + public void run() { + startUpdateRequest(); + } + }; + //timer.scheduleAtFixedRate(定期的に実行したいタスク,初回のタスク実行までの時間(ms),実行するタスクの間隔(ms)); + timer.scheduleAtFixedRate(task, 10000, 30000); + isServiceRunning = true; + } + + return START_NOT_STICKY; + } + + @RequiresApi(api = Build.VERSION_CODES.O) + @Override + protected void onHandleIntent(Intent intent) { + Log.d(TAG, "onHandleIntent"); + } + + protected void startGPS() { + Log.d(TAG, "startGPS"); + final boolean gpsEnabled + = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER); + + if (!gpsEnabled) { + // GPSを設定するように促す + enableLocationSettings(); + } + + if (locationManager != null) { + try { + if (ActivityCompat.checkSelfPermission(this, + Manifest.permission.ACCESS_FINE_LOCATION) != + PackageManager.PERMISSION_GRANTED) { + return; + } +// Log.d(TAG, "requestLocationUpdates:"); + + locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, + MinTime, MinDistance, this); + } catch (Exception e) { +// Log.d(TAG, "Exception:"); + + e.printStackTrace(); + } + } else { + } + } + + @Override + public void onDestroy() { + Log.d(TAG, "onDestroy"); + super.onDestroy(); + } + + @Override + public void onConfigurationChanged(Configuration newConfig) { + Log.d(TAG, "onConfigurationChanged"); + super.onConfigurationChanged(newConfig); + } + + @Override + public void onLowMemory() { + Log.d(TAG, "onLowMemory"); + super.onLowMemory(); + } + + @Override + public void onTrimMemory(int level) { + Log.d(TAG, "onTrimMemory"); + super.onTrimMemory(level); + } + + @Nullable + @Override + public IBinder onBind(Intent intent) { + Log.d(TAG, "onBind"); + return super.onBind(intent); + } + + @Override + public boolean onUnbind(Intent intent) { + Log.d(TAG, "onUnbind"); + return super.onUnbind(intent); + } + + @Override + public void onRebind(Intent intent) { + Log.d(TAG, "onRebind"); + super.onRebind(intent); + } + + @Override + public void onTaskRemoved(Intent rootIntent) { + Log.d(TAG, "onTaskRemoved"); + super.onTaskRemoved(rootIntent); + } + + @Override + protected void dump(FileDescriptor fd, PrintWriter writer, String[] args) { + Log.d(TAG, "dump"); + super.dump(fd, writer, args); + } + + @Override + public void onLocationChanged(Location location) { +// Log.d(TAG, "onLocationChanged"); + Log.d(TAG, "lat:" + location.getLatitude()); + Log.d(TAG, "lon:" + location.getLongitude()); + + } + + @Override + public void onStatusChanged(String provider, int status, Bundle extras) { + Log.d(TAG, "onStatusChanged"); + } + + @Override + public void onProviderEnabled(String provider) { + Log.d(TAG, "onProviderEnabled"); + } + + @Override + public void onProviderDisabled(String provider) { + Log.d(TAG, "onProviderDisabled"); + + } + + private void startUpdateRequest() { + final Cosmos app = (Cosmos) getApplication(); + if(app.getuId() != null) { + final String uId, token; + uId = app.getuId(); + token = app.getToken(); + + //retrofitの処理 + final Retrofit retrofit = new Retrofit.Builder() + .baseUrl("http://nitta-lab-www.is.konan-u.ac.jp/cosmos/rest/") + .addConverterFactory(JacksonConverterFactory.create()) + .build(); + //interfaceから実装を取得 + final GroupsRest getGroupsService = retrofit.create(GroupsRest.class); + final GroupsRest getRequestsService = retrofit.create(GroupsRest.class); + + //API呼び出しのための値入力 + final Call call = getGroupsService.getGroups(uId, token); + + //サーバからデータ受け取り + call.enqueue(new Callback() { + //成功時 + @Override + public void onResponse(Call call, Response response) { + if (response.isSuccessful()) { + final GroupListResponse groupListresult = response.body(); + Log.d(TAG, "GroupListResponseグループ情報通信取得しました"); + + new Thread(new Runnable() { + public void run() { + for (GroupJson groupJson : groupListresult.getGroups()) { + app.setGroup(new Group(groupJson)); + if (groupJson.getRequestHash() != app.getGroup(groupJson.getgId()).getRequestHash()) { + //RequestList取得するための必要な情報 + final String gId = groupJson.getgId(); + final boolean detail = true; + int quantity = 20; + + final Call requestsListByGidCall = getRequestsService.getRequestsListByGid(gId, token, detail, quantity); + Response requestListResponse; + try { + requestListResponse = requestsListByGidCall.execute(); + if (requestListResponse.isSuccessful()) { + TimeZone.setDefault(TimeZone.getTimeZone("Asia/Tokyo")); + RequestList requestList = requestListResponse.body(); + app.getGroup(groupJson.getgId()).setRequestList(requestList); + app.getGroup(groupJson.getgId()).setRequestHash(groupJson.getRequestHash()); + Log.d(TAG, groupJson.getName() + "のRequestListを取得しました"); + } else { + // onFailure + try { + System.out.println(requestListResponse.errorBody().string()); + } catch (IOException e) { + e.printStackTrace(); + } + + //onFailureでキャッチできないエラーの処理 + Log.d(TAG, groupJson.getName() + "の通信エラー"); + } + } catch (IOException e) { + e.printStackTrace(); + Log.d(TAG, groupJson.getName() + "のRequestListの取得失敗しました"); + } + } + } + } + }).start(); + } else { + //onFailureでキャッチできないエラー用 + Log.d(TAG, "GroupListResponseグループ情報通信エラー"); + } + } + + //失敗時 + @Override + public void onFailure(Call call, Throwable t) { + t.printStackTrace(); + Log.d(TAG, "GroupListResponseグループ情報取得失敗"); + } + }); + } else { + Log.d(TAG, "app.getuId()がnull"); + } + + } + + private void enableLocationSettings() { + Intent settingsIntent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS); + settingsIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + startActivity(settingsIntent); + } + +} diff --git a/app/src/main/java/com/example/cosmosclient/services/CosmosBootReceiver.java b/app/src/main/java/com/example/cosmosclient/services/CosmosBootReceiver.java new file mode 100644 index 0000000..20ae4d2 --- /dev/null +++ b/app/src/main/java/com/example/cosmosclient/services/CosmosBootReceiver.java @@ -0,0 +1,55 @@ +package com.example.cosmosclient.services; + +import android.Manifest; +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.content.pm.PackageManager; +import android.os.Build; +import android.support.annotation.RequiresApi; +import android.support.v4.content.ContextCompat; +import android.util.Log; + +public class CosmosBootReceiver extends BroadcastReceiver { + private static final int REQUEST_MULTI_PERMISSIONS = 101; + private String TAG = CosmosBootReceiver.class.getSimpleName(); + + @Override + public void onReceive(Context context, Intent intent) { + Log.d(TAG, "onReceive"); + // Android 6, API 23以上でペーミッションの確認 + if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction()) && Build.VERSION.SDK_INT >= 23) { + checkMultiPermissions(context); + } else{ + // サービスの起動 + startService(context); + } + } + + // 位置情報許可の確認、外部ストレージのPermissionにも対応できるようにしておく + private void checkMultiPermissions(Context context){ + // 位置情報の Permission + int permissionLocation = ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION); + + // 位置情報の Permission が許可されているか確認 + if (permissionLocation == PackageManager.PERMISSION_GRANTED) { + // 許可済 + startService(context); + } else{ + // 未許可 + } + } + + //serviceをスタートさせる + private void startService(final Context context) { + final Thread thread = new Thread() { + @RequiresApi(api = Build.VERSION_CODES.O) + public void run() { + // サービスの起動 + Intent intentservice = new Intent(context, CosmosBackgroundService.class); + context.startForegroundService(intentservice); + } + }; + thread.start(); + } +} diff --git a/app/src/main/java/com/example/cosmosclient/services/CosomosBackgroundService.java b/app/src/main/java/com/example/cosmosclient/services/CosomosBackgroundService.java deleted file mode 100644 index 68a3f40..0000000 --- a/app/src/main/java/com/example/cosmosclient/services/CosomosBackgroundService.java +++ /dev/null @@ -1,276 +0,0 @@ -package com.example.cosmosclient.services; - -import android.Manifest; -import android.app.IntentService; -import android.app.Notification; -import android.app.NotificationChannel; -import android.app.NotificationManager; -import android.app.PendingIntent; -import android.content.Intent; -import android.content.Context; -import android.content.pm.PackageManager; -import android.graphics.Color; -import android.location.Location; -import android.location.LocationListener; -import android.location.LocationManager; -import android.os.Build; -import android.os.Bundle; -import android.provider.Settings; -import android.support.annotation.RequiresApi; -import android.support.v4.app.ActivityCompat; -import android.util.Log; - -import com.example.cosmosclient.R; -import com.example.cosmosclient.app.Cosmos; -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.resources.GroupsRest; - -import java.io.IOException; -import java.util.TimeZone; -import java.util.Timer; -import java.util.TimerTask; - -import retrofit2.Call; -import retrofit2.Callback; -import retrofit2.Response; -import retrofit2.Retrofit; -import retrofit2.converter.jackson.JacksonConverterFactory; - - -public class CosomosBackgroundService extends IntentService implements LocationListener { - private Context context; - private LocationManager locationManager; - private static final int MinTime = 1000;/*最小時間間隔*/ - private static final float MinDistance = 1;/*最小距離間隔*/ - - public CosomosBackgroundService() { - super("CosomosBackgroundService"); - } - - @Override - public void onCreate() { - super.onCreate(); -// Log.d("debug", "onCreate"); - context = getApplicationContext(); - // LocationManager インスタンス生成 - locationManager = (LocationManager) getSystemService(LOCATION_SERVICE); - } - - @RequiresApi(api = Build.VERSION_CODES.O) - @Override - public int onStartCommand(Intent intent, int flags, int startId) { - -// Log.d("debug", "onStartCommand"); - int requestCode = 0; - String channelId = "default"; - String title = context.getString(R.string.app_name); - PendingIntent pendingIntent = - PendingIntent.getActivity(context, requestCode, - intent, PendingIntent.FLAG_UPDATE_CURRENT); - // ForegroundにするためNotificationが必要、Contextを設定 - NotificationManager notificationManager = - (NotificationManager) context. - getSystemService(Context.NOTIFICATION_SERVICE); - // Notification Channel 設定 - NotificationChannel channel = new NotificationChannel( - channelId, title, NotificationManager.IMPORTANCE_DEFAULT); - channel.setDescription("Silent Notification"); - // 通知音を消さないと毎回通知音が出てしまう - // この辺りの設定はcleanにしてから変更 - channel.setSound(null, null); - // 通知ランプを消す - channel.enableLights(false); - channel.setLightColor(Color.BLUE); - // 通知バイブレーション無し - channel.enableVibration(false); - if (notificationManager != null) { - notificationManager.createNotificationChannel(channel); - Notification notification = new Notification.Builder(context, channelId) - .setContentTitle(title) - // 本来なら衛星のアイコンですがandroid標準アイコンを設定 - .setSmallIcon(android.R.drawable.btn_star) - .setContentText("GPS") - .setAutoCancel(true) - .setContentIntent(pendingIntent) - .setWhen(System.currentTimeMillis()) - .build(); - - // startForeground - startForeground(1, notification); - } - - startGPS(); - Timer timer = new Timer(); - TimerTask task = new TimerTask() { - @Override - public void run() { - startUpdateRequest(); - } - }; - //timer.scheduleAtFixedRate(定期的に実行したいタスク,初回のタスク実行までの時間(ms),実行するタスクの間隔(ms)); - timer.scheduleAtFixedRate(task, 10000, 300000); - - return START_NOT_STICKY; - } - - @RequiresApi(api = Build.VERSION_CODES.O) - @Override - protected void onHandleIntent(Intent intent) { -// Log.d("debug", "onHandleIntent"); - } - - protected void startGPS() { - Log.d("debug", "startGPS"); - final boolean gpsEnabled - = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER); - - if (!gpsEnabled) { - // GPSを設定するように促す - enableLocationSettings(); - } - - if (locationManager != null) { - try { - if (ActivityCompat.checkSelfPermission(this, - Manifest.permission.ACCESS_FINE_LOCATION) != - PackageManager.PERMISSION_GRANTED) { - return; - } -// Log.d("debug", "requestLocationUpdates:"); - - locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, - MinTime, MinDistance, this); - } catch (Exception e) { -// Log.d("debug", "Exception:"); - - e.printStackTrace(); - } - } else { - } - } - - @Override - public void onDestroy() { -// Log.d("debug", "onDestroy"); - super.onDestroy(); - } - - @Override - public void onLocationChanged(Location location) { -// Log.d("debug", "onLocationChanged"); - Log.d("debug", "lat:" + location.getLatitude()); - Log.d("debug", "lon:" + location.getLongitude()); - - } - - @Override - public void onStatusChanged(String provider, int status, Bundle extras) { - - } - - @Override - public void onProviderEnabled(String provider) { - - } - - @Override - public void onProviderDisabled(String provider) { - - } - - private void startUpdateRequest() { - final Cosmos app = (Cosmos) getApplication(); - if(app.getuId() != null) { - final String uId, token; - uId = app.getuId(); - token = app.getToken(); - - //retrofitの処理 - final Retrofit retrofit = new Retrofit.Builder() - .baseUrl("http://nitta-lab-www.is.konan-u.ac.jp/cosmos/rest/") - .addConverterFactory(JacksonConverterFactory.create()) - .build(); - //interfaceから実装を取得 - final GroupsRest getGroupsService = retrofit.create(GroupsRest.class); - final GroupsRest getRequestsService = retrofit.create(GroupsRest.class); - - //API呼び出しのための値入力 - final Call call = getGroupsService.getGroups(uId, token); - - //サーバからデータ受け取り - call.enqueue(new Callback() { - //成功時 - @Override - public void onResponse(Call call, Response response) { - if (response.isSuccessful()) { - final GroupListResponse groupListresult = response.body(); - Log.d("debug", "GroupListResponseグループ情報通信取得しました"); - - new Thread(new Runnable() { - public void run() { - for (GroupJson groupJson : groupListresult.getGroups()) { - app.setGroup(new Group(groupJson)); - if (groupJson.getRequestHash() != app.getGroup(groupJson.getgId()).getRequestHash()) { - //RequestList取得するための必要な情報 - final String gId = groupJson.getgId(); - final boolean detail = true; - int quantity = 20; - - final Call requestsListByGidCall = getRequestsService.getRequestsListByGid(gId, token, detail, quantity); - Response requestListResponse; - try { - requestListResponse = requestsListByGidCall.execute(); - if (requestListResponse.isSuccessful()) { - TimeZone.setDefault(TimeZone.getTimeZone("Asia/Tokyo")); - RequestList requestList = requestListResponse.body(); - app.getGroup(groupJson.getgId()).setRequestList(requestList); - app.getGroup(groupJson.getgId()).setRequestHash(groupJson.getRequestHash()); - Log.d("debug", groupJson.getName() + "のRequestListを取得しました"); - } else { - // onFailure - try { - System.out.println(requestListResponse.errorBody().string()); - } catch (IOException e) { - e.printStackTrace(); - } - - //onFailureでキャッチできないエラーの処理 - Log.d("debug", groupJson.getName() + "の通信エラー"); - } - } catch (IOException e) { - e.printStackTrace(); - Log.d("debug", groupJson.getName() + "のRequestListの取得失敗しました"); - } - } - } - } - }).start(); - } else { - //onFailureでキャッチできないエラー用 - Log.d("debug", "GroupListResponseグループ情報通信エラー"); - } - } - - //失敗時 - @Override - public void onFailure(Call call, Throwable t) { - t.printStackTrace(); - Log.d("debug", "GroupListResponseグループ情報取得失敗"); - } - }); - } else { - Log.d("debug", "app.getuId()がnull"); - } - - } - - private void enableLocationSettings() { - Intent settingsIntent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS); - settingsIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - startActivity(settingsIntent); - } - -} diff --git a/app/src/main/java/com/example/cosmosclient/views/SigninActivity.java b/app/src/main/java/com/example/cosmosclient/views/SigninActivity.java index 5a1198d..b5cfe59 100644 --- a/app/src/main/java/com/example/cosmosclient/views/SigninActivity.java +++ b/app/src/main/java/com/example/cosmosclient/views/SigninActivity.java @@ -1,16 +1,11 @@ package com.example.cosmosclient.views; -import android.app.Notification; -import android.app.NotificationChannel; -import android.app.NotificationManager; import android.content.Context; import android.Manifest; -import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.os.Build; import android.os.Handler; -import android.os.HandlerThread; import android.support.annotation.NonNull; import android.support.annotation.RequiresApi; import android.support.v4.app.ActivityCompat; @@ -25,13 +20,11 @@ import android.widget.EditText; import android.widget.Toast; -import com.example.cosmosclient.MainActivity; import com.example.cosmosclient.R; import com.example.cosmosclient.app.Cosmos; -import com.example.cosmosclient.entities.AreaInformation; import com.example.cosmosclient.entities.SigninResponse; import com.example.cosmosclient.resources.UsersRest; -import com.example.cosmosclient.services.CosomosBackgroundService; +import com.example.cosmosclient.services.CosmosBackgroundService; import java.util.ArrayList; @@ -297,7 +290,7 @@ Thread thread = new Thread() { @RequiresApi(api = Build.VERSION_CODES.O) public void run() { - intentservice = new Intent(SigninActivity.this, CosomosBackgroundService.class); + intentservice = new Intent(SigninActivity.this, CosmosBackgroundService.class); startForegroundService(intentservice); }