NLDClient-yudde/ProjectNLD/Assets/Plugins/Android/com.unity3d.player/PrivacyActivity.java

81 lines
2.8 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package com.unity3d.player;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.webkit.WebView;
//
//这段代码用于在用户第一次启动应用时显示隐私政策界面,用户可以选择同意或拒绝隐私政策
//如果用户同意隐私政策则进入Unity Activity否则退出应用
//请将AndroidManifest中的默认启动Activity设置为PrivacyActivity
//
public class PrivacyActivity extends Activity implements DialogInterface.OnClickListener {
final String privacyContent = "欢迎使用本游戏,在使用前,清充分阅读并理解以下内容";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if(GetPrivacyAccept()){
//如果用户已经同意隐私政策则直接进入Unity Activity
EnterUnityActivity();
return;
}
ShowPrivacyDialog();
}
private void ShowPrivacyDialog(){
WebView webView = new WebView(this);
webView.loadData(privacyContent, "text/html", "utf-8");
AlertDialog.Builder privacyDialog = new AlertDialog.Builder(this);
privacyDialog.setCancelable(false);
privacyDialog.setTitle("隐私政策");
privacyDialog.setView(webView);
privacyDialog.setPositiveButton("同意", this);
privacyDialog.setNegativeButton("拒绝", this);
privacyDialog.create().show();
}
@Override
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case AlertDialog.BUTTON_POSITIVE://点击同意按钮
SetPrivacyAccept(true);//设置已经同意隐私政策
EnterUnityActivity();//进入Unity Activity
break;
case AlertDialog.BUTTON_NEGATIVE://点击拒绝按钮
finish();
break;
default:
break;
}
}
private void EnterUnityActivity() {
Intent unityAct = new Intent();
unityAct.setClassName(this, "com.unity3d.player.UnityPlayerActivity");
this.startActivity(unityAct);
}
private void SetPrivacyAccept(boolean isAccept) {
//设置已经同意隐私政策
//这里可以使用SharedPreferences保存用户的选择
SharedPreferences.Editor prefs = this.getSharedPreferences("PlayerPrefs", MODE_PRIVATE).edit();
prefs.putBoolean("PrivacyAccept", isAccept);
prefs.apply();
}
private boolean GetPrivacyAccept() {
//获取用户是否同意隐私政策
SharedPreferences prefs = this.getSharedPreferences("PlayerPrefs", MODE_PRIVATE);
return prefs.getBoolean("PrivacyAccept", false);
}
}