Commit 8b9ece91 authored by Gavin An's avatar Gavin An

gradle 업

parent 2f6c7177
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.USE_FULL_SCREEN_INTENT"/>
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.USE_FULL_SCREEN_INTENT"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
......
package com.example.notitest
import android.Manifest
import android.annotation.SuppressLint
import android.app.Notification
import android.app.NotificationChannel
import android.app.NotificationManager
import android.app.PendingIntent
import android.content.*
import android.content.pm.PackageManager
import android.graphics.Color
import android.os.Build
import android.os.Bundle
import android.widget.ArrayAdapter
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.core.app.ActivityCompat
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
import androidx.databinding.DataBindingUtil
......@@ -59,10 +63,10 @@ class MainActivity : AppCompatActivity() {
intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
val pendingIntent = PendingIntent.getActivity(
baseContext, 0,
intent, PendingIntent.FLAG_UPDATE_CURRENT
intent, PendingIntent.FLAG_IMMUTABLE
)
val builder = NotificationCompat.Builder(this, "alarmTest")
val ticker = "${packageId};${tel}"
val ticker = getTicker(packageId, tel)
builder.apply {
setSmallIcon(R.drawable.ic_settings)
setTicker(ticker)
......@@ -72,9 +76,32 @@ class MainActivity : AppCompatActivity() {
setAutoCancel(true)
setContentIntent(pendingIntent)
}
if (ActivityCompat.checkSelfPermission(
this,
Manifest.permission.POST_NOTIFICATIONS
) != PackageManager.PERMISSION_GRANTED
) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.POST_NOTIFICATIONS), 0)
}
return
}
alarmMgr.notify(Random.nextInt(10000000), builder.build())
}
private fun getTicker(packageId: String, tel: String): String {
if (packageId.isNotEmpty().and(tel.isNotEmpty())) {
return "${packageId};${tel}"
}
if (packageId.isNotEmpty()) {
return packageId
}
if (tel.isNotEmpty()) {
return tel
}
return ""
}
fun clearEt() {
binding.etNotiText1.text?.clear()
binding.etNotiText2.text?.clear()
......
......@@ -5,7 +5,7 @@ buildscript {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:8.2.1'
classpath 'com.android.tools.build:gradle:8.2.2'
classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.22'
}
}
......
......@@ -32,10 +32,10 @@ android {
targetCompatibility JavaVersion.VERSION_17
}
kotlinOptions { jvmTarget = '17' }
lintOptions {
namespace 'com.example.testModuleOne'
lint {
abortOnError false
}
namespace 'com.example.testModuleOne'
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment