[Unity实战][只需一步]Unity的打包andriod隐私协议,包通过审查[完美通过,不用导出安卓项目]

Posted 学生董格

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Unity实战][只需一步]Unity的打包andriod隐私协议,包通过审查[完美通过,不用导出安卓项目]相关的知识,希望对你有一定的参考价值。

Unity的打包安卓隐私协议,包通过审查[完美通过,不用导出安卓项目]

接下一篇文章:跳过UnityLogo/启动屏

跳过UnityLogo/启动屏

1.背景

日前,国家互联网信息办公室发布新修订的《移动互联网应用程序信息服务管理规定》(以下简称新《规定》)。新《规定》自2022年8月1日起施行。

本规定所称应用程序信息服务,是指通过应用程序向用户提供文字、图片、语音、视频等信息制作、复制、发布、传播等服务的活动,包括即时通讯、新闻资讯、知识问答、论坛社区、网络直播、电子商务、网络音视频、生活服务等类型。

划重点:

一、应用程序提供者

1、应用程序提供者通过应用程序提供互联网新闻信息服务的,应当取得互联网新闻信息服务许可,禁止未经许可或者超越许可范围开展互联网新闻信息服务活动。

2、应用程序提供者应当对信息内容呈现结果负责,不得生产传播违法信息,自觉防范和抵制不良信息。应用程序提供者应当建立健全信息内容审核管理机制,建立完善用户注册、账号管理、信息审核、日常巡查、应急处置等管理措施,配备与服务规模相适应的专业人员和技术能力。

3、应用程序提供者不得通过虚假宣传、捆绑下载等行为,通过机器或者人工刷榜、刷量、控评等方式,或者利用违法和不良信息诱导用户下载。

4、应用程序提供者处理个人信息应当遵循合法、正当、必要和诚信原则,具有明确、合理的目的并公开处理规则,遵守必要个人信息范围的有关规定,规范个人信息处理活动,采取必要措施保障个人信息安全,不得以任何理由强制要求用户同意个人信息处理行为,不得因用户不同意提供非必要个人信息,而拒绝用户使用其基本功能服务。

5、应用程序提供者应当坚持最有利于未成年人的原则,关注未成年人健康成长,履行未成年人网络保护各项义务,依法严格落实未成年人用户账号真实身份信息注册和登录要求,不得以任何形式向未成年人用户提供诱导其沉迷的相关产品和服务,不得制作、复制、发布、传播含有危害未成年人身心健康内容的信息。

二、应用程序分发平台

应用程序分发平台应当在上线运营三十日内向所在地省、自治区、直辖市网信部门备案。办理备案时,应当提交以下材料:

(一)平台运营主体基本情况;

(二)平台名称、域名、接入服务、服务资质、上架应用程序类别等信息;

(三)平台取得的经营性互联网信息服务许可或者非经营性互联网信息服务备案等材料;

(四)本规定第五条要求建立健全的相关制度文件;

(五)平台管理规则、服务协议等。

2.unity调整

unity打包安卓后,由于对接sdk等获取隐私权限,需要把隐私协议提前,所以我想到的一个好的办法,替换activity的java文件(unity2020使用)

3.核心代码

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.content.res.Configuration;
import android.graphics.PixelFormat;
import android.os.Bundle;
import android.text.SpannableString;
import android.text.method.LinkMovementMethod;
import android.text.util.Linkify;
import android.view.Gravity;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.os.Process;
import android.widget.TextView;
import android.widget.Toast;

public class LaunchActivity extends Activity 
    Boolean anInt = false;
    @Override
    protected void onCreate(Bundle savedInstanceState) 

        super.onCreate(savedInstanceState);
        SharedPreferences base = getSharedPreferences("base",MODE_PRIVATE);
        anInt = base.getBoolean("isFirstStart",true);

        if (anInt==true)
            final SpannableString s =
                    new SpannableString("\\n" +
                            "\\n" +
                            "       更新时间:【2022】年【08】月【03】日\\n" +
                            "\\n" +
                            "       欢迎使用本游戏,在使用本游戏前,请您充分阅读并理解《用户协议》https://blog.csdn.net/ 和《隐私政策》https://blog.csdn.net/ 各条款      " +
                            "\\n");
            Linkify.addLinks(s, Linkify.WEB_URLS);
            TextView tv = new TextView(this);
            tv.setMovementMethod(LinkMovementMethod.getInstance());
            tv.setText(s);

            AlertDialog.Builder dialog=new AlertDialog.Builder(LaunchActivity.this);
            dialog.setTitle("               欢迎使用我们的游戏              ");  //设置标题
            //dialog.setMessage("");  //设置内容
            dialog.setView(tv); //设置内容
            dialog.setCancelable(false);  //是否可以取消
            dialog.setNegativeButton("拒绝", new DialogInterface.OnClickListener() 
                @Override
                public void onClick(DialogInterface dialogInterface, int i) 
                    //Toast toast = Toast.makeText(getApplicationContext(), "您需要同意使用条款和隐私政策才能继续游戏", Toast.LENGTH_SHORT);
                    //toast.setGravity(Gravity.CENTER, 0, 0);
                    //toast.show();
                    // 关闭
                    android.os.Process.killProcess(android.os.Process.myPid());
                
            );

            dialog.setPositiveButton("同意", new DialogInterface.OnClickListener() 
                @Override
                public void onClick(DialogInterface dialog, int which) 
                    SharedPreferences.Editor editor = base.edit();
                    editor.putBoolean("isFirstStart",false);
                    editor.commit();
                    StartGame();
                
            );

            dialog.show();
        else
            StartGame();
        
    
    private void StartGame()
        Intent intent = new Intent();
        intent.setClass(LaunchActivity.this, UnityPlayerActivity.class);
        startActivity(intent);
    

3.项目

github

4.参考

csdn

使用Unity自带的打包工具

ity版本:Unity2018 v2.0(Unity 5.x 以上都可以)

目的:在Unity的编辑模式下,就可以自行对Unity的图片打包成图集。

第一步:先将Unity的图集打包工具的模式设置为Always Enables(Legacy Sprite Packer)。

Edit -> Project Setting -> Editor -> Sprite Packer -> Mode -> Always Enabled(Legacy Sprite Packer)

技术分享图片

第二步:对想要打成一个图集的所有Sprite设置同一个Tag。

 技术分享图片

 

注意:图片不能放在Resources文件中,否则Unity不会对其进行打包

 

 

第三步:打开图集打包工具窗口进行打包   

              Window -> 2D -> Sprite Packer

 技术分享图片

 

 引用一段代码:

 技术分享图片

该段代码的作用是 在把图片移到Unity目录下的时候 会将Packing Tag设置为该目录文件名

 

 

 

 

以上是关于[Unity实战][只需一步]Unity的打包andriod隐私协议,包通过审查[完美通过,不用导出安卓项目]的主要内容,如果未能解决你的问题,请参考以下文章

Unity实战篇 |Unity 打包exe 实现隐藏窗口标题栏隐藏最小化最大化关闭按钮

Unity实战篇 |Unity 打包exe 实现隐藏窗口标题栏隐藏最小化最大化关闭按钮

Unity自动打包Apk

码蚁君AR实战-圣诞礼物EasyAR+Unity

码蚁君AR实战-圣诞礼物EasyAR+Unity

使用Unity自带的打包工具