Commit 997b3fd1 authored by Gavin An's avatar Gavin An

전화번호 추가 및 텍스트 붙여넣기 양쪽 다 추가

parent a9b64313
Pipeline #19 failed with stages
......@@ -16,7 +16,6 @@
<option value="$PROJECT_DIR$/testModuleTwo" />
</set>
</option>
<option name="resolveModulePerSourceSet" value="false" />
</GradleProjectSettings>
</option>
</component>
......
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="KotlinJpsPluginSettings">
<option name="version" value="1.6.21" />
</component>
</project>
\ No newline at end of file
......@@ -8,7 +8,7 @@
</map>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="corretto-11" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
......
......@@ -27,7 +27,7 @@ class MainActivity : AppCompatActivity() {
setPackageAutoComplete()
}
fun sendNotification(title: String?, contentData: String?, packageId: String?) {
fun sendNotification(title: String?, contentData: String?, packageId: String?, tel: String?) {
val alarmMgr = NotificationManagerCompat.from(this)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
val channel = NotificationChannel("alarmTest", "myNoti", NotificationManager.IMPORTANCE_HIGH)
......@@ -42,16 +42,17 @@ class MainActivity : AppCompatActivity() {
}
alarmMgr.createNotificationChannel(channel)
createAlarm(title, contentData, packageId, alarmMgr)
createAlarm(title, contentData, packageId?: "", tel?: "", alarmMgr)
} else {
createAlarm(title, contentData, packageId, alarmMgr)
createAlarm(title, contentData, packageId?: "", tel?: "", alarmMgr)
}
}
private fun createAlarm(
title: String?,
contentData: String?,
packageId: String?,
packageId: String = "",
tel: String = "",
alarmMgr: NotificationManagerCompat
) {
val intent = Intent(baseContext, MainActivity::class.java)
......@@ -61,9 +62,10 @@ class MainActivity : AppCompatActivity() {
intent, PendingIntent.FLAG_UPDATE_CURRENT
)
val builder = NotificationCompat.Builder(this, "alarmTest")
val ticker = "${packageId};${tel}"
builder.apply {
setSmallIcon(R.drawable.ic_settings)
setTicker(packageId ?: "")
setTicker(ticker)
setContentTitle(title ?: "")
setContentText(contentData ?: "")
priority = NotificationCompat.PRIORITY_DEFAULT
......@@ -80,7 +82,7 @@ class MainActivity : AppCompatActivity() {
binding.etPackageId2.text?.clear()
}
fun setClipBoardToText() {
fun setClipBoardToText1() {
val cb: ClipboardManager = getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
if (cb.hasPrimaryClip()) {
if (cb.primaryClipDescription!!.hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN)) {
......@@ -89,20 +91,33 @@ class MainActivity : AppCompatActivity() {
}
}
fun setClipBoardToText2() {
val cb: ClipboardManager = getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
if (cb.hasPrimaryClip()) {
if (cb.primaryClipDescription!!.hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN)) {
binding.etNotiText2.setText(cb.primaryClip?.getItemAt(0)?.coerceToText(this))
}
}
}
private fun setPackageAutoComplete() {
val packageList = mutableListOf<String>()
packageList.add("com.samsung.android.spay")
packageList.add("com.android.mms")
packageList.add("com.samsung.android.messaging")
packageList.add("viva.republica.toss")
packageList.add("com.shinhan.sbanking")
packageList.add("com.kakao.talk")
packageList.add("com.finnq.f1") // 핀크
packageList.add("com.IBK.SmartPush.app")
packageList.add("com.kbstar.starpush") // KB 스타알림
packageList.add("com.kbcard.kbkookmincard") // KB 국민카드
packageList.add("com.kbstar.kbbank") // KB 스타뱅킹
packageList.add("com.nhn.android.search") // 네이버
packageList.add(Variable.SAMSUNG_PAY)
packageList.add(Variable.LG_PAY)
packageList.add(Variable.MESSAGE_SAMSUNG_NOTIFY)
packageList.add(Variable.TOSS_NOTIFY)
packageList.add(Variable.SHINHAN_SOL_BANK_NOTIFY)
packageList.add(Variable.KAKAO_TALK_NOTIFY)
packageList.add(Variable.FINNQ_NOTIFY) // 핀크
packageList.add(Variable.I_ONE_BANK_PUSH_NOTIFY) // i-ONE 알림
packageList.add(Variable.KB_STAR_PUSH_NOTIFY) // KB 스타알림
packageList.add(Variable.KB_CARD_NOTIFY) // KB 국민카드
packageList.add(Variable.KB_STAR_BANK_NOTIFY) // KB 스타뱅킹
packageList.add(Variable.NAVER_NOTIFY) // 네이버
packageList.add(Variable.WOORI_BANK_NOTIFY)
packageList.add(Variable.WOORI_CARD_NOTIFY)
packageList.add(Variable.WOORI_ONE_NOTIFY)
packageList.add(Variable.PAYCO_NOTIFY)
binding.etPackageId1.apply {
setAdapter(ArrayAdapter(this@MainActivity, R.layout.support_simple_spinner_dropdown_item, packageList))
}
......
package com.example.notitest
class Variable {
companion object {
const val SAMSUNG_PAY = "com.samsung.android.spay"
const val LG_PAY = "com.lge.lgpay"
const val SHINHAN_SOL_BANK_NOTIFY = "com.shinhan.sbanking" // 신한 쏠(SOL)
const val SHINHAN_SOL_BANK_ALARM_NOTIFY = "com.shinhan.smartcaremgr" // SOL 알리미
const val SHINHAN_FAN_CARD_NOTIFY = "com.shcard.smartpay" // 신한플레이
const val WOORI_BANK_NOTIFY = "com.wooribank.smart.npib" // 우리 WON 뱅킹
const val WOORI_ONE_NOTIFY = "com.wr.alrim" // 우리은행 원터치알림
const val WOORI_CARD_NOTIFY = "com.wooricard.smartapp" // 우리 WON 카드
const val KAKAO_TALK_NOTIFY = "com.kakao.talk" // 카카오톡
const val KAKAO_BANK_NOTIFY = "com.kakaobank.channel" // 카카오뱅크
const val KB_STAR_PUSH_NOTIFY = "com.kbstar.starpush" // KB 스타알림
const val KB_CARD_NOTIFY = "com.kbcard.kbkookmincard" // KB 국민카드
const val KB_STAR_BANK_NOTIFY = "com.kbstar.kbbank" // KB 스타뱅킹
const val NH_BANK_NOTIFY = "nh.smart.banking" // NH 뱅킹
const val NH_CARD_NOTIFY = "nh.smart.card" // NH 농협카드
const val NH_PUSH_NOTIFY = "com.nh.mobilenoti" // NH 스마트알림
const val HANA_BANK_NOTIFY = "com.kebhana.hanapush" // 하나은행
const val HANA_APP_CARD_NOTIFY = "com.hanaskcard.paycla" // 하나카드(앱카드)
const val I_ONE_BANK_NOTIFY = "com.ibk.android.ionebank" // IBK 기업은행
const val I_ONE_BANK_PUSH_NOTIFY = "com.IBK.SmartPush.app" // i-ONE 알림
const val MESSAGE_LG_NOTIFY = "com.android.mms"
const val MESSAGE_SAMSUNG_NOTIFY = "com.samsung.android.messaging"
const val MESSAGE_ANDROID_NOTIFY = "com.google.android.apps.messaging"
const val LINE_PAY_NOTIFY = "jp.naver.line.android"
const val TOSS_NOTIFY = "viva.republica.toss"
const val FINNQ_NOTIFY = "com.finnq.f1"
const val NAVER_NOTIFY = "com.nhn.android.search"
const val PAYCO_NOTIFY = "com.nhnent.payapp"
}
}
\ No newline at end of file
......@@ -25,6 +25,14 @@
name="etPackageId2"
type="String" />
<variable
name="etTel1"
type="String" />
<variable
name="etTel2"
type="String" />
<variable
name="main"
type="com.example.notitest.MainActivity" />
......@@ -42,17 +50,6 @@
android:layout_height="wrap_content"
android:layout_marginHorizontal="10dp">
<androidx.appcompat.widget.AppCompatImageButton
android:id="@+id/iBtnPaste"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_marginTop="40dp"
android:background="@drawable/ic_copy"
android:onClick="@{() -> main.setClipBoardToText()}"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/tvNotiTitle"
android:layout_width="0dp"
......@@ -61,7 +58,7 @@
android:text="@string/alarm_title"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/iBtnPaste" />
app:layout_constraintTop_toTopOf="parent" />
<androidx.appcompat.widget.AppCompatEditText
android:id="@+id/etNotiTitle"
......@@ -81,19 +78,30 @@
android:layout_marginTop="20dp"
android:text="@string/alarm_one"
app:layout_constraintBottom_toTopOf="@id/etNotiText1"
app:layout_constraintLeft_toLeftOf="@id/etNotiText1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/etNotiTitle" />
<androidx.appcompat.widget.AppCompatImageButton
android:id="@+id/iBtnPaste1"
android:layout_width="36dp"
android:layout_height="36dp"
android:background="@drawable/ic_copy"
android:onClick="@{() -> main.setClipBoardToText1()}"
app:layout_constraintBottom_toBottomOf="@id/etNotiText1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@id/etNotiText1" />
<androidx.appcompat.widget.AppCompatEditText
android:id="@+id/etNotiText1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="12dp"
android:hint="@string/alarm_desc"
android:imeOptions="actionDone"
android:text="@={etData1}"
android:textSize="20sp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
android:textSize="16sp"
app:layout_constraintEnd_toStartOf="@id/iBtnPaste1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvNoti1" />
<androidx.appcompat.widget.AppCompatTextView
......@@ -109,20 +117,31 @@
android:id="@+id/etNotiText2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="12dp"
android:hint="@string/alarm_desc"
android:imeOptions="actionDone"
android:text="@={etData2}"
android:textSize="20sp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
android:textSize="16sp"
app:layout_constraintEnd_toStartOf="@id/iBtnPaste2"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvNoti2" />
<androidx.appcompat.widget.AppCompatImageButton
android:id="@+id/iBtnPaste2"
android:layout_width="36dp"
android:layout_height="36dp"
android:background="@drawable/ic_copy"
android:onClick="@{() -> main.setClipBoardToText2()}"
app:layout_constraintBottom_toBottomOf="@id/etNotiText2"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@id/etNotiText2" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btnSend1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:onClick="@{() -> main.sendNotification(etTitle, etData1, etPackageId1)}"
android:onClick="@{() -> main.sendNotification(etTitle, etData1, etPackageId1, etTel1)}"
android:text="@string/send_alarm_one"
android:textSize="12sp"
app:layout_constraintLeft_toLeftOf="parent"
......@@ -133,7 +152,7 @@
android:id="@+id/btnSend2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:onClick="@{() -> main.sendNotification(etTitle, etData2, etPackageId2)}"
android:onClick="@{() -> main.sendNotification(etTitle, etData2, etPackageId2, etTel2)}"
android:text="@string/send_alarm_two"
android:textSize="12sp"
app:layout_constraintLeft_toRightOf="@id/btnSend1"
......@@ -149,8 +168,8 @@
android:textSize="12sp"
android:visibility="@{(etData1.length() > 0 || etData2.length() > 0 || etPackageId1.length() > 0 || etPackageId2.length() > 0) ? View.VISIBLE : View.GONE, default = gone }"
app:layout_constraintLeft_toRightOf="@id/btnSend2"
app:layout_constraintTop_toTopOf="@id/btnSend2"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="@id/btnSend2"
tools:visibility="visible" />
<androidx.appcompat.widget.AppCompatAutoCompleteTextView
......@@ -160,9 +179,9 @@
android:layout_marginTop="20dp"
android:hint="1번 알림 보낼 패키지 id(com.example.test)"
android:text="@={etPackageId1}"
android:textSize="20sp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
android:textSize="16sp"
app:layout_constraintEnd_toStartOf="@id/etTel1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/etNotiText2"
tools:visibility="visible" />
......@@ -173,12 +192,38 @@
android:layout_marginTop="20dp"
android:hint="2번 알림 보낼 패키지 id(com.example.test)"
android:text="@={etPackageId2}"
android:textSize="20sp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
android:textSize="16sp"
app:layout_constraintEnd_toStartOf="@id/etTel2"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/etPackageId1"
tools:visibility="visible" />
<androidx.appcompat.widget.AppCompatAutoCompleteTextView
android:id="@+id/etTel1"
android:layout_width="0dp"
android:layout_height="0dp"
android:hint="1번 알림 보낼 전화번호"
android:text="@={etTel1}"
android:textSize="16sp"
app:layout_constraintBottom_toBottomOf="@id/etPackageId1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/etPackageId1"
app:layout_constraintTop_toTopOf="@id/etPackageId1"
tools:visibility="visible" />
<androidx.appcompat.widget.AppCompatAutoCompleteTextView
android:id="@+id/etTel2"
android:layout_width="0dp"
android:layout_height="0dp"
android:hint="2번 알림 보낼 전화번호"
android:text="@={etTel2}"
android:textSize="16sp"
app:layout_constraintBottom_toBottomOf="@id/etPackageId2"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/etPackageId2"
app:layout_constraintTop_toTopOf="@id/etPackageId2"
tools:visibility="visible" />
</androidx.constraintlayout.widget.ConstraintLayout>
</ScrollView>
......
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