Compare commits

..
Author SHA1 Message Date
it232115 f0f6563f8a Zxingライブラリ導入 2023-12-22 12:18:16 +09:00
it232115 87f05224a4 QRカメラ起動 2023-12-22 12:16:40 +09:00
12 changed files with 24 additions and 162 deletions

No files matched your search

+1 -4
View File
@@ -1,13 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="testRunner" value="GRADLE" />
<option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleJvm" value="jbr-17" />
<option name="gradleJvm" value="#GRADLE_LOCAL_JAVA_HOME" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
+2 -1
View File
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="jbr-17" project-jdk-type="JavaSDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_17">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
+1 -2
View File
@@ -33,9 +33,8 @@ dependencies {
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.5.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
implementation 'com.journeyapps:zxing-android-embedded:4.3.0'
}
-2
View File
@@ -2,8 +2,6 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.VIBRATE" />
<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
@@ -1,19 +1,12 @@
package com.example.childguard;
import android.content.SharedPreferences;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import androidx.core.content.res.ResourcesCompat;
import androidx.fragment.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.TextView;
/**
* A simple {@link Fragment} subclass.
@@ -68,26 +61,4 @@ public class HomeFragment extends Fragment {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_home, container, false);
}
@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));
}
}
}
@@ -1,16 +1,8 @@
package com.example.childguard;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.core.app.NotificationCompat;
import androidx.core.app.NotificationManagerCompat;
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.content.Context;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.os.Vibrator;
import com.google.android.material.bottomnavigation.BottomNavigationView;
@@ -20,16 +12,6 @@ public class MainActivity extends AppCompatActivity {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//通知のやつ↓
int importance = NotificationManager.IMPORTANCE_DEFAULT;
NotificationChannel channel = new NotificationChannel("CHANNEL_ID", "サンプルアプリ", importance);
channel.setDescription("説明・説明 ここに通知の説明を書くことができる");
NotificationManager notificationManager = getSystemService(NotificationManager.class);
notificationManager.createNotificationChannel(channel);
//通知のやつ↑
BottomNavigationView bottomNavigationView = findViewById(R.id.nav_view);
@@ -52,29 +34,4 @@ public class MainActivity extends AppCompatActivity {
});
}
//↓通知のやつ
public void notifyTest() {
((Vibrator)getSystemService(Context.VIBRATOR_SERVICE)).vibrate(1000);
NotificationCompat.Builder builder = new NotificationCompat
.Builder(this, "CHANNEL_ID")
.setSmallIcon(android.R.drawable.ic_menu_info_details)
.setContentTitle("タイトル")
.setContentText("メッセージ・メッセージ")
.setPriority(NotificationCompat.PRIORITY_DEFAULT);
NotificationManagerCompat notificationManager = NotificationManagerCompat.from(this);
if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.POST_NOTIFICATIONS) != PackageManager.PERMISSION_GRANTED) {
// TODO: Consider calling
// ActivityCompat#requestPermissions
// here to request the missing permissions, and then overriding
// public void onRequestPermissionsResult(int requestCode, String[] permissions,
// int[] grantResults)
// to handle the case where the user grants the permission. See the documentation
// for ActivityCompat#requestPermissions for more details.
return;
}
notificationManager.notify(R.string.app_name, builder.build());
}
}
@@ -1,33 +0,0 @@
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())){
tv.setText(get_off);
findViewById(R.id.situation_bg).setBackgroundColor(Color.parseColor("#dcdcdc"));
}
else {
tv.setText(get_on);
findViewById(R.id.situation_bg).setBackgroundColor(Color.parseColor("#ff4500"));
}
}
);
}
}
@@ -1,6 +1,6 @@
package com.example.childguard;
import android.content.SharedPreferences;
import android.content.Intent;
import android.os.Bundle;
import androidx.fragment.app.Fragment;
@@ -9,7 +9,9 @@ import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import com.google.zxing.integration.android.IntentIntegrator;
import com.google.zxing.integration.android.IntentResult;
/**
* A simple {@link Fragment} subclass.
@@ -52,37 +54,18 @@ public class QRFragment extends Fragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
mParam1 = getArguments().getString(ARG_PARAM1);
mParam2 = getArguments().getString(ARG_PARAM2);
new IntentIntegrator(getActivity()).initiateScan();//QRカメラ起動
}
}
//QRカメラから受け取った引数の処理
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_qr, container, false);
Button cameraButton = view.findViewById(R.id.camera);
// Init shared preferences
SharedPreferences sharedPreferences = getActivity().getSharedPreferences("default", 0);
SharedPreferences.Editor editor = sharedPreferences.edit();
cameraButton.setOnClickListener(v -> {
Log.d("QRFragment", "onClick: called");
if (!sharedPreferences.getBoolean("inCar", false)) {
editor.putBoolean("inCar", true);
} else {
editor.putBoolean("inCar", false);
}
editor.apply();
});
return view;
return inflater.inflate(R.layout.fragment_qr, container, false);
}
}
@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#ffa500"/>
<corners android:radius="25dp"/>
</shape>
+8 -9
View File
@@ -7,8 +7,8 @@
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".HomeFragment">
<FrameLayout
android:id="@+id/situation_bg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/frame_style"
@@ -26,7 +26,6 @@
android:textColor="@color/black"
android:textAlignment="center"/>
<TextView
android:id="@+id/situation"
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_marginTop="10dp"
@@ -49,9 +48,9 @@
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginTop="20dp"
android:text="切断中"
android:textSize="30dp"
android:textSize="25dp"
android:textColor="@color/black"
android:textAlignment="center"/>
<ImageView
@@ -73,21 +72,21 @@
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:background="@drawable/frame_style_button">
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_height="match_parent"
android:layout_marginLeft="20dp"
android:layout_marginTop="75dp"
android:layout_marginRight="20dp"
android:backgroundTint="#778899"
android:text="QRコード印刷"
android:textColor="@color/white"
android:textSize="40dp" />
android:textSize="40dp"
android:backgroundTint="#778899"/>
<!--<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
+4 -6
View File
@@ -6,11 +6,9 @@
tools:context=".QRFragment">
<!-- TODO: Update blank fragment layout -->
<Button
android:id="@+id/camera"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="@string/hello_blank_fragment" />
</FrameLayout>
-1
View File
@@ -2,5 +2,4 @@
<resources>
<color name="black">#FF000000</color>
<color name="white">#FFFFFFFF</color>
<color name="orange">#FF4500</color>
</resources>