Itazuraboushi #14
|
@ -3,7 +3,6 @@ package com.example.childguard;
|
|||
import static android.content.ContentValues.TAG;
|
||||
|
||||
import android.content.SharedPreferences;
|
||||
import android.graphics.Bitmap;
|
||||
import android.os.Bundle;
|
||||
import android.preference.PreferenceManager;
|
||||
import android.util.Log;
|
||||
|
@ -12,7 +11,6 @@ import android.view.View;
|
|||
import android.view.ViewGroup;
|
||||
import android.widget.Button;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
|
@ -89,102 +87,95 @@ public class HomeFragment extends Fragment {
|
|||
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getActivity());
|
||||
//QRコード印刷の処理
|
||||
Button bt1 = view.findViewById(R.id.QRprinting);
|
||||
bt1.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
//初回起動かを保存する変数
|
||||
boolean alreadySaved = preferences.getBoolean("alreadySaved", false);
|
||||
//ボタン変数の宣言
|
||||
Button parent = view.findViewById(R.id.QRprinting);
|
||||
Button born = view.findViewById(R.id.QRprinting);
|
||||
//falseのときにFirebaseへの登録
|
||||
if (alreadySaved) {
|
||||
Log.d("HomeFragment", "already printed");
|
||||
//画面遷移&ID受け渡し
|
||||
Toast.makeText(getActivity(),"再印刷",Toast.LENGTH_SHORT).show();
|
||||
QrPrintFragment qrPrintFragment = new QrPrintFragment();
|
||||
replaceFragment(qrPrintFragment);
|
||||
return;
|
||||
} else Log.d("HomeFragment", "not printed yet"); // debug
|
||||
bt1.setOnClickListener(v -> {
|
||||
//初回起動かを保存する変数
|
||||
boolean alreadySaved = preferences.getBoolean("alreadySaved", false);
|
||||
//ボタン変数の宣言
|
||||
Button parent = view.findViewById(R.id.QRprinting);
|
||||
Button born = view.findViewById(R.id.QRprinting);
|
||||
//falseのときにFirebaseへの登録
|
||||
if (alreadySaved) {
|
||||
Log.d("HomeFragment", "already printed");
|
||||
//画面遷移&ID受け渡し
|
||||
Toast.makeText(getActivity(),"再印刷",Toast.LENGTH_SHORT).show();
|
||||
QrPrintFragment qrPrintFragment = new QrPrintFragment();
|
||||
replaceFragment(qrPrintFragment);
|
||||
return;
|
||||
} else Log.d("HomeFragment", "not printed yet"); // debug
|
||||
|
||||
String valueParent = parent.getText().toString();//変数に文字列を代入
|
||||
String valueBorn = born.getText().toString();//変数に文字列を代入
|
||||
Map<String, String> user = new HashMap<>();//mapの宣言
|
||||
String valueParent = parent.getText().toString();//変数に文字列を代入
|
||||
String valueBorn = born.getText().toString();//変数に文字列を代入
|
||||
Map<String, String> user = new HashMap<>();//mapの宣言
|
||||
|
||||
Log.d("HomeFragment", "onClick is called");
|
||||
Log.d("HomeFragment", "onClick is called");
|
||||
|
||||
//mapに入れる
|
||||
user.put("parent", valueParent);
|
||||
user.put("born", valueBorn);
|
||||
//新しいドキュメントにIDを作って追加
|
||||
db.collection("users")
|
||||
.add(user)
|
||||
.addOnSuccessListener(new OnSuccessListener<DocumentReference>() {
|
||||
@Override
|
||||
public void onSuccess(DocumentReference documentReference) {
|
||||
//成功したら
|
||||
//documentReference.getId()でID取得
|
||||
Log.d(TAG, "DocumentSnapshot added with ID: " + documentReference.getId());
|
||||
SharedPreferences.Editor e = preferences.edit();
|
||||
// キー"alreadySaved"の値をtrueにする
|
||||
e.putBoolean("alreadySaved", true);
|
||||
//確定処理
|
||||
e.apply();
|
||||
//画面遷移&ID受け渡し
|
||||
str_key = "" + documentReference.getId();
|
||||
Toast.makeText(getActivity(),"初回登録",Toast.LENGTH_SHORT).show();
|
||||
QrPrintFragment qrPrintFragment = new QrPrintFragment();
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString("STR_KEY",str_key);
|
||||
//値を書き込む
|
||||
qrPrintFragment.setArguments(bundle);
|
||||
replaceFragment(qrPrintFragment);
|
||||
//mapに入れる
|
||||
user.put("parent", valueParent);
|
||||
user.put("born", valueBorn);
|
||||
//新しいドキュメントにIDを作って追加
|
||||
db.collection("users")
|
||||
.add(user)
|
||||
.addOnSuccessListener(new OnSuccessListener<DocumentReference>() {
|
||||
@Override
|
||||
public void onSuccess(DocumentReference documentReference) {
|
||||
//成功したら
|
||||
//documentReference.getId()でID取得
|
||||
Log.d(TAG, "DocumentSnapshot added with ID: " + documentReference.getId());
|
||||
SharedPreferences.Editor e = preferences.edit();
|
||||
// キー"alreadySaved"の値をtrueにする
|
||||
e.putBoolean("alreadySaved", true);
|
||||
//確定処理
|
||||
e.apply();
|
||||
//画面遷移&ID受け渡し
|
||||
str_key = "" + documentReference.getId();
|
||||
Toast.makeText(getActivity(),"初回登録",Toast.LENGTH_SHORT).show();
|
||||
QrPrintFragment qrPrintFragment = new QrPrintFragment();
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString("STR_KEY",str_key);
|
||||
//値を書き込む
|
||||
qrPrintFragment.setArguments(bundle);
|
||||
replaceFragment(qrPrintFragment);
|
||||
|
||||
}
|
||||
})
|
||||
.addOnFailureListener(new OnFailureListener() {
|
||||
@Override
|
||||
public void onFailure(@NonNull Exception e) {
|
||||
//失敗したら
|
||||
Log.w(TAG, "Error adding document", e);
|
||||
}
|
||||
});
|
||||
}
|
||||
})
|
||||
.addOnFailureListener(new OnFailureListener() {
|
||||
@Override
|
||||
public void onFailure(@NonNull Exception e) {
|
||||
//失敗したら
|
||||
Log.w(TAG, "Error adding document", e);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
//bluetooth設定ボタンの処理
|
||||
Button bt2 = view.findViewById(R.id.Bluetooth_setup);
|
||||
bt2.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
replaceFragment(new bluetooth_setupFragment());
|
||||
}
|
||||
});
|
||||
bt2.setOnClickListener(v -> replaceFragment(new bluetooth_setupFragment()));
|
||||
return view;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onResume() {
|
||||
super.onResume();
|
||||
Log.d("HomeFragment", "onResume: called");
|
||||
TextView situationTextView = getView().findViewById(R.id.situation);
|
||||
FrameLayout situation_bg = getView().findViewById(R.id.situation_bg);
|
||||
updateInCarStatus(situationTextView, situation_bg);
|
||||
}
|
||||
public void updateInCarStatus(TextView situationTextView, FrameLayout situation_bg) {
|
||||
SharedPreferences sharedPreferences = getActivity().getSharedPreferences("default", 0);
|
||||
|
||||
Log.d("HomeFragment", "updateInCarStatus: " + sharedPreferences.getBoolean("inCar", false));
|
||||
if (sharedPreferences.getBoolean("inCar", false)) {
|
||||
situationTextView.setText("\n降車状態");
|
||||
situation_bg.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.frame_style, null));
|
||||
} else {
|
||||
situationTextView.setText("\n乗車状態");
|
||||
situation_bg.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.frame_style_orange, null));
|
||||
}
|
||||
|
||||
}
|
||||
// @Override
|
||||
// public void onResume() {
|
||||
// super.onResume();
|
||||
// Log.d("HomeFragment", "onResume: called");
|
||||
// Cargettingonandoff();
|
||||
// TextView situationTextView = getView().findViewById(R.id.situation);
|
||||
// FrameLayout situation_bg = getView().findViewById(R.id.situation_bg);
|
||||
// updateInCarStatus(situationTextView, situation_bg);
|
||||
// }
|
||||
// public void updateInCarStatus(TextView situationTextView, FrameLayout situation_bg) {
|
||||
// SharedPreferences sharedPreferences = getActivity().getSharedPreferences("default", 0);
|
||||
//
|
||||
// Log.d("HomeFragment", "updateInCarStatus: " + sharedPreferences.getBoolean("inCar", false));
|
||||
// if (sharedPreferences.getBoolean("inCar", false)) {
|
||||
// situationTextView.setText("\n降車状態");
|
||||
// situation_bg.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.frame_style, null));
|
||||
// } else {
|
||||
// situationTextView.setText("\n乗車状態");
|
||||
// situation_bg.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.frame_style_orange, null));
|
||||
// }
|
||||
//
|
||||
// }
|
||||
|
||||
//画面遷移メソッド
|
||||
private void replaceFragment(Fragment fragment) {
|
||||
|
@ -199,4 +190,31 @@ public class HomeFragment extends Fragment {
|
|||
// フラグメントトランザクションをコミット
|
||||
transaction.commit();
|
||||
}
|
||||
// public void Cargettingonandoff() {
|
||||
// //共有プリファレンス 全体の準備
|
||||
// SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getActivity());
|
||||
// //車の乗り降りを管理するtrue=乗車、false=降車
|
||||
// boolean zyoukouzyoutai = preferences.getBoolean("car", false);
|
||||
// SharedPreferences.Editor e = preferences.edit();
|
||||
// String get_on = "\n乗車状態";
|
||||
// String get_off = "\n降車状態";
|
||||
// TextView tv = getView().findViewById(R.id.situation);
|
||||
// FrameLayout fl = getView().findViewById(R.id.situation_bg);
|
||||
//
|
||||
// if (zyoukouzyoutai == true) { //乗降状態の判定
|
||||
// //降車状態にする
|
||||
// fl.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.frame_style, null));
|
||||
// tv.setText(get_off);
|
||||
// e.putBoolean("car", false);
|
||||
// e.apply();
|
||||
// } else {
|
||||
// //乗車状態にする
|
||||
// fl.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.frame_style_orange, null));
|
||||
// tv.setText(get_on);
|
||||
// e.putBoolean("car", true);
|
||||
// e.apply();
|
||||
// }
|
||||
//
|
||||
//
|
||||
// }
|
||||
}
|
|
@ -12,7 +12,9 @@ import android.app.NotificationManager;
|
|||
import android.bluetooth.BluetoothAdapter;
|
||||
import android.bluetooth.BluetoothManager;
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.graphics.Color;
|
||||
import android.os.Bundle;
|
||||
import android.os.Vibrator;
|
||||
|
||||
|
@ -24,10 +26,15 @@ import java.util.Date;
|
|||
import java.util.Random;
|
||||
import java.util.UUID;
|
||||
|
||||
import android.preference.PreferenceManager;
|
||||
import android.util.Log;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import androidx.core.content.res.ResourcesCompat;
|
||||
|
||||
import com.google.firebase.firestore.DocumentReference;
|
||||
import com.google.firebase.firestore.DocumentSnapshot;
|
||||
import com.google.firebase.firestore.EventListener;
|
||||
|
@ -40,7 +47,7 @@ public class MainActivity extends AppCompatActivity {
|
|||
BluetoothAdapter bluetoothAdapter;
|
||||
|
||||
public static final String TAG = "InspirationQuote";
|
||||
private DocumentReference mDocRef = FirebaseFirestore.getInstance().document("users/q6t702C8nsXyehckByrr");//現在の位置を取得
|
||||
private DocumentReference mDocRef = FirebaseFirestore.getInstance().document("users/rrVGKi77MAemxvPZrktm");//現在の位置を取得
|
||||
boolean flg = false;
|
||||
|
||||
//↓日付を取得するやつ
|
||||
|
@ -82,11 +89,11 @@ public class MainActivity extends AppCompatActivity {
|
|||
mDocRef.addSnapshotListener(this, new EventListener<DocumentSnapshot>() {
|
||||
@Override
|
||||
public void onEvent(@Nullable DocumentSnapshot documentSnapshot, @Nullable FirebaseFirestoreException e) {
|
||||
Log.d("nt","イベント開始");
|
||||
Log.d("nt", "イベント開始");
|
||||
if (flg && documentSnapshot != null && documentSnapshot.exists()) {
|
||||
|
||||
String parent = documentSnapshot.getString("parent");
|
||||
Log.d("nt","レスポンスを検知しました1");
|
||||
Log.d("nt", "レスポンスを検知しました1");
|
||||
if (parent.equals("s")) {
|
||||
|
||||
//通知のやつ↓
|
||||
|
@ -99,12 +106,12 @@ public class MainActivity extends AppCompatActivity {
|
|||
NotificationManager notificationManager = getSystemService(NotificationManager.class);
|
||||
notificationManager.createNotificationChannel(channel);
|
||||
//通知のやつ↑
|
||||
Log.d("nt","レスポンスを検知しました2");
|
||||
|
||||
Log.d("nt", "レスポンスを検知しました2");
|
||||
|
||||
notifyMain();
|
||||
} else if (e != null) {
|
||||
} else {
|
||||
Log.w(TAG, "Got an exceptiion!", e);
|
||||
Cargettingonandoff();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -147,4 +154,33 @@ public class MainActivity extends AppCompatActivity {
|
|||
ActionBar actionBar = getSupportActionBar();
|
||||
actionBar.setDisplayHomeAsUpEnabled(enableBackButton);
|
||||
}
|
||||
|
||||
public void Cargettingonandoff() {
|
||||
//共有プリファレンス 全体の準備
|
||||
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
|
||||
//車の乗り降りを管理するtrue=乗車、false=降車
|
||||
boolean zyoukouzyoutai = preferences.getBoolean("car", false);
|
||||
SharedPreferences.Editor e = preferences.edit();
|
||||
String get_on = "\n乗車状態";
|
||||
String get_off = "\n降車状態";
|
||||
setContentView(R.layout.fragment_home);
|
||||
TextView tv = findViewById(R.id.situation);
|
||||
FrameLayout fl = findViewById(R.id.situation_bg);
|
||||
|
||||
if (zyoukouzyoutai == true) { //乗降状態の判定
|
||||
//降車状態にする
|
||||
fl.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.frame_style, null));
|
||||
tv.setText(get_off);
|
||||
e.putBoolean("car", false);
|
||||
e.apply();
|
||||
} else {
|
||||
//乗車状態にする
|
||||
fl.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.frame_style_orange, null));
|
||||
tv.setText(get_on);
|
||||
e.putBoolean("car", true);
|
||||
e.apply();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
|
@ -1,21 +1,21 @@
|
|||
package com.example.childguard;
|
||||
|
||||
import android.graphics.Color;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Bundle;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
|
||||
public class QR extends AppCompatActivity {
|
||||
String get_on="乗車状態";
|
||||
String get_off ="降車状態";
|
||||
TextView tv=findViewById(R.id.situation);
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState){
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.fragment_qr);
|
||||
//多分いらないコード
|
||||
//package com.example.childguard;
|
||||
//
|
||||
//import android.graphics.Color;
|
||||
//import android.graphics.drawable.Drawable;
|
||||
//import android.os.Bundle;
|
||||
//import android.widget.TextView;
|
||||
//
|
||||
//import androidx.appcompat.app.AppCompatActivity;
|
||||
//
|
||||
//public class QR extends AppCompatActivity {
|
||||
// String get_on="乗車状態";
|
||||
// String get_off ="降車状態";
|
||||
// TextView tv=findViewById(R.id.situation);
|
||||
// @Override
|
||||
// protected void onCreate(Bundle savedInstanceState){
|
||||
// super.onCreate(savedInstanceState);
|
||||
// setContentView(R.layout.fragment_qr);
|
||||
// //多分いらないコード
|
||||
// findViewById(R.id.camera).setOnClickListener(
|
||||
// v -> {
|
||||
// if(get_on.equals(tv.getText().toString())){
|
||||
|
@ -28,6 +28,6 @@ public class QR extends AppCompatActivity {
|
|||
// }
|
||||
// }
|
||||
// );
|
||||
}
|
||||
|
||||
}
|
||||
// }
|
||||
//
|
||||
//}
|
||||
|
|
|
@ -8,7 +8,8 @@
|
|||
android:layout_height="match_parent"
|
||||
android:orientation="vertical"
|
||||
android:background="@color/white"
|
||||
tools:context=".MainActivity">
|
||||
tools:context=".MainActivity"
|
||||
>
|
||||
|
||||
|
||||
<androidx.fragment.app.FragmentContainerView
|
||||
|
|
|
@ -6,7 +6,8 @@
|
|||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical"
|
||||
tools:context=".HomeFragment">
|
||||
tools:context=".HomeFragment"
|
||||
>
|
||||
|
||||
|
||||
<ScrollView
|
||||
|
@ -14,13 +15,16 @@
|
|||
android:layout_height="0dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="0.0"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintVertical_bias="0.0">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical" >
|
||||
android:orientation="vertical">
|
||||
|
||||
<FrameLayout
|
||||
android:id="@+id/situation_bg"
|
||||
android:layout_width="match_parent"
|
||||
|
|
Loading…
Reference in New Issue
Block a user