2024.5.24
第五十六天
所花时间:2小时
代码量:200+
博客量:1
了解到的知识点:团队作业7
在地图界面现在调用接口时都需要有隐私协议设置,所以这里补充一下
1 package com.example.share; 2 3 import android.annotation.SuppressLint; 4 import android.os.Bundle; 5 import android.view.View; 6 import android.webkit.WebView; 7 import android.webkit.WebViewClient; 8 import androidx.appcompat.app.AppCompatActivity; 9 10 public class PrivacyPolicyActivity extends AppCompatActivity { 11 private WebView webView; 12 13 @SuppressLint("MissingInflatedId") 14 @Override 15 protected void onCreate(Bundle savedInstanceState) { 16 super.onCreate(savedInstanceState); 17 setContentView(R.layout.activity_main); 18 19 // 加载隐私协议页面 20 webView = findViewById(R.id.webView); 21 webView.getSettings().setJavaScriptEnabled(true); 22 webView.setWebViewClient(new WebViewClient()); 23 webView.loadUrl("file:///android_asset/privacy_policy.html"); 24 25 // 检查用户是否同意隐私协议 26 boolean agreedToPrivacyPolicy = checkAgreedToPrivacyPolicy(); 27 28 // 如果用户已同意隐私协议,则启用地图功能 29 if (agreedToPrivacyPolicy) { 30 // 初始化地图 31 initializeMap(); 32 } else { 33 // 如果用户尚未同意隐私协议,则在 WebView 中显示协议内容 34 webView.setVisibility(View.VISIBLE); 35 webView.requestFocus(); 36 } 37 } 38 39 // 检查用户是否已同意隐私协议 40 private boolean checkAgreedToPrivacyPolicy() { 41 // 在这里检查本地存储,数据库或共享首选项中的用户同意状态,并返回相应的布尔值 42 // 这里仅作示例,实际实现可能需要使用 SharedPreferences 或其他方法来存储用户同意状态 43 return true; // 返回 true 表示用户已同意隐私协议,返回 false 表示用户尚未同意 44 } 45 46 // 初始化地图 47 private void initializeMap() { 48 // 在这里初始化地图并开始使用高德地图API 49 } 50 }
<html><body><h1>Privacy Policy</h1><p>发布个人信息保护政策是个人信息控制者遵循公开透明原则的重要体现,是保证个人信息主体知情权的重要手段,还是约束自身行为和配合监督管理的重要机制。个人信息保护政策应清晰、准确、完整地描述个人信息控制者的个人信息处理行为。</p></body></html>
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <WebView android:id="@+id/webView" android:layout_width="match_parent" android:layout_height="match_parent" android:visibility="gone" /> </RelativeLayout>