Today's

길을 나서지 않으면 그 길에서 만날 수 있는 사람을 만날 수 없다

모바일 앱(안드로이드)

플레이스토어에 등록한 나의 앱이 삭제 되었다. 어떻게 할 것인가 ? (feat 구글에서 메일 받음)

Billcorea 2021. 9. 27. 21:07
반응형

오늘은 난데없이 구글에서 메일이 하나 왔다. 헉~ 뭔가 ? 열어 보았더니, playstore 에 등록해 두었던 앱 하나가 삭제 되었다는 것이다. 

 

이건 무슨 말인가 ? 앱이 삭제 되다니... 뭐 예전에도 몇개의 앱이 삭제 되었다는 메일을 받은 적이 있어서... ㅋ~ 그다지 놀랍지도 않지만, 이번에는 어떤 이유로 ? 그래서 메일을 첨부 이미지를 열어 보았더니.  두둥~

 

친절하기도 하여라... 앱을 실행했다가 종료하기 위해서 뒤로 가기 버튼을 클릭했을 때, 한번 클릭으로 앱이 종료 되는 것을 막기 위해서 두번 클릭 하라는 안내 문구를 보여 주면서 adsense 을 통해서 광고를 붙였는데, 흠... 그것이 Toast.LENGTH_LONG 을 설정해 두기는 했지만,  저렇게 앱이 종료된 이후에도 Custom Toast 메시지가 남아 있어서 구글에서는 그것을 일부러 저렇게 처리했다고 판단하는 것 같았다. 

 

에구~... 집에 오자마자, 컴터를 켜고 수정을 했다. 

 

반응형
package ......

import android.content.Context;
import android.content.SharedPreferences;
import android.util.Log;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

import androidx.annotation.NonNull;

import com.billcoreatech.boss0426.R;
import com.google.android.gms.ads.AdError;
import com.google.android.gms.ads.AdListener;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.LoadAdError;
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.ResponseInfo;


/**
 *
 */
public class KakaoToast {

    static private AdView mAdView;
    static String TAG = "KakaoToast";
    static SharedPreferences option ;

    public static Toast makeToast(Context context, String body, int duration){
        LayoutInflater inflater;
        inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View v = inflater.inflate(R.layout.view_toast, null);
        TextView text = v.findViewById(R.id.message);
        text.setText(body);
        mAdView = v.findViewById(R.id.adView);
        option = context.getSharedPreferences("option", context.MODE_PRIVATE);
        MobileAds.initialize(context);
        AdRequest adRequest = new AdRequest.Builder().build();

        // 2021.09.27 구글에서 요청사항 반영.... 앱이 종료 되어도 광고가 노출 된다고...
        if (duration == 9) {
            mAdView.setVisibility(View.GONE);
            duration = Toast.LENGTH_SHORT ;
        } else {
            mAdView.loadAd(adRequest);
            mAdView.setVisibility(View.VISIBLE);
        }

        mAdView.setAdListener(new AdListener(){
            @Override
            public void onAdLoaded() {
                super.onAdLoaded();
                Log.e(TAG, "onAdLoaded");
            }
            @Override
            public void onAdClosed() {
                super.onAdClosed();
                Log.e(TAG, "onAdClosed");
            }

            @Override
            public void onAdOpened() {
                Log.e(TAG, "onAdOpened");
            }

            @Override
            public void onAdClicked() {
                super.onAdClicked();
                Log.e(TAG, "onAdClicked");
            }
            @Override
            public void onAdImpression() {
                super.onAdImpression();
                Log.e(TAG, "onAdImpression");
            }

            @Override
            public void onAdFailedToLoad(@NonNull LoadAdError error) {
                super.onAdFailedToLoad(error);
                String errorDomain = error.getDomain();
                int errorCode = error.getCode();
                String errorMessage = error.getMessage();
                ResponseInfo responseInfo = error.getResponseInfo();
                AdError cause = error.getCause();
                Log.i(TAG,"------------------------------------");
                Log.i(TAG, "error=" + error.toString());
                Log.i(TAG, "errorDomain=" + errorDomain);
                Log.i(TAG, "errorCode=" + errorCode);
                Log.i(TAG, "errorMessage=" + errorMessage);
                Log.i(TAG, "responseInfo=" + responseInfo.getResponseId());
                Log.i(TAG, "responseInfo=" + responseInfo.getMediationAdapterClassName());
                Log.i(TAG,"------------------------------------");
            }
        });

        Toast toast = new Toast(context);
        toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
        toast.setView(v);
        toast.setDuration(duration);
        return toast;
    }
}

Custom Toast 을 호출할 때 duration 에 9을 전달하고 전달 받은 경우에만, mAdview 을 보여주지 않는 방식으로 ...

 

화면 layout 설계는 다음과 같이.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    android:layout_width="300dp"
    android:layout_height="400dp"
    android:gravity="center"
    android:orientation="vertical"
    android:padding="10dp"
    android:weightSum="4">

        <TextView
            android:id="@+id/message"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="2"
            android:background="@drawable/background_text"
            android:gravity="center"
            android:text="@string/msgAdView"
            android:textColor="@color/design_default_color_primary_dark"
            android:textSize="24sp" />

        <com.google.android.gms.ads.AdView
            android:id="@+id/adView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="2"
            ads:adSize="BANNER"
            ads:adUnitId="@string/adUnitId" />
</LinearLayout>

디자인 모드에서 보면 ...

custom Toast 을 위한 화면 예시

이렇게 Custom Toast 용 class 을 만들고 필요할 때 마다 호출해서 광고가 들어간 alert 을 발생 시킬 수 있게 구현 했는데...

KakaoToast.makeToast(getApplicationContext(), getString(R.string.msgBackPress), Toast.LENGTH_LONG).show();

activity에서 호출은 이런식으로 구현을 한다.  그렇게 하면 나만의 Toast 창이 사용되고, 그 안에 광고를 넣거나 하는 것도 쉽게 될 수 있다.

 

 

이렇게 해서 수정은 완성된 것 같다.  그래서 이제 다시 playstore 에 다시 등록을 요청 하였다.  

 

 

사용자는 몇 안되는 앱 때문에 구글도 고생이 많다. 

ㅋㅋㅋ

 

언제쯤 다시 앱이 게시 되었다는 메일을 받게될 것인가 ???

 

https://play.google.com/store/apps/details?id=com.billcoreatech.boss0426 

 

아래는 이앱에 대한 간략한 설명... 그리고 또한 이 앱은 일본어, 영어, 베트남어 로 지원되도록 구현해 두었다.

 

https://billcorea.tistory.com/25

 

우연히 사장 앱은.

 이 앱은 정말 작은 가게를 어쩌다 우연히 운영하게 되었을 때 물론 요새는 POS도 잘 들어가 있기는 하지만, 그것도 여의치 않을 떄 가게를 찾는 사람들은 들어오고, 가격 계산은 잘 안되고 할 때

billcorea.tistory.com

살아 돌아오길(?) 바라며... 링크를 걸어 본다.

반응형