老王论坛

标题: TapTap-Unity-安卓应用上架流程-个人开发者 [打印本页]

作者: 3055303804    时间: 2024-1-27 20:05
标题: TapTap-Unity-安卓应用上架流程-个人开发者
本帖最后由 3055303804 于 2024-1-27 22:44 编辑 6 |  e0 u5 b3 T- [( i( }) [(欢迎访问老王论坛:laowang.vip)
2 Z) c* p) H! D(欢迎访问老王论坛:laowang.vip)
写在前面
        之前有群友说不太清楚TapTap应用的上架流程,这里以Unity引擎、个人开发者的身份为例子,默认没有软著和版号,不接SDK的情况,给大家仔细唠唠,注意!这不是教程,只是鄙人的片面之言,经验之谈。本人水平有限,文章中有误的内容欢迎大家指出,谢谢!
1.注册TapTap个人开发者账户
        注册TapTap开发者需要1-2天时间认证,所以我们先注册开发者账户,开发者账户审核阶段,我们再对Unity工程进行相关操作,这样更节约时间。
, o: n+ A2 p7 w: K
TapTap开发者入驻页面:https://developer.taptap.cn/developer-apply/
在注册TapTap开发者及之后在该平台上架应用时,请务必仔细阅读平台对物料的要求!
https://article.biliimg.com/bfs/article/6ddaddf3376f70db1b84a3b4cef0e426483438496.png
        在此特别声明一下我们是以个人开发者的身份,没有软著和版号的前提下,只能正式上线试玩版应用,如果你的应用含有内购或者是买断制的游戏,是需要软著和版号的。按照正常流程来说,应该注册企业级开发者,TapTap目前是不支持个人开发者和企业开发者账户之间相互转换的。所以在注册开发者账户之前要确定清楚。
https://article.biliimg.com/bfs/article/9a5cbc8ef69318b83f0a3e9dc1d18ab2483438496.png
                这里的厂商名称必须是中文,XXX工作室这种格式。后面的内容按照要求填写后,等待审核即可。
2.项目打包以及隐私政策弹窗
& w4 }" r) h2 x3 c8 c+ F
  根据国家相关部门规定:
https://article.biliimg.com/bfs/article/ad7e1d39ceaf482868b5d074e3b5e6b9483438496.png; _, {; I$ i# ?# d% w(欢迎访问老王论坛:laowang.vip)
https://article.biliimg.com/bfs/article/2c3cb34c04966c110e151b39c6521bdd483438496.png
说人话就是你的应用在访问用户设备权限和信息的时候,需要以弹窗等显著形式告诉用户。所以我们要在应用启动时增加一个类似于弹窗的功能,用户同意后才能跳转到我们的应用。        具体操作如下:
  s( k& T( O! ?) p9 n
        Project Settings=>Player=>Publishing Settings=>Custom Main Manifest  勾选
https://article.biliimg.com/bfs/article/ebc55a79c76e0d4bc52e9349ee00942c483438496.png
        勾选之后,Unity编辑器会在Assets/Plugins/Andorid文件夹下生成AndroidManifest.xml文件,如图:
https://article.biliimg.com/bfs/article/1accafeadcc85cf2427daae512c65b4c483438496.png
打开文件并修改代码,下面是修改之后的代码块:9 L& E8 ~( N/ i' [$ ]0 s(欢迎访问老王论坛:laowang.vip)
<?xml version="1.0" encoding="utf-8"?>: f. G2 @, @* l(欢迎访问老王论坛:laowang.vip)
<!-- GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN-->, c0 }% g: Q8 P9 U" V3 G(欢迎访问老王论坛:laowang.vip)
<manifest% q9 x2 p6 ~0 V/ k(欢迎访问老王论坛:laowang.vip)
    xmlns:android="http://schemas.android.com/apk/res/android"  h0 u) t* [3 Q% _6 k! @* b+ T(欢迎访问老王论坛:laowang.vip)
    package="com.unity3d.player". K  H- J8 I; s9 @2 W& e(欢迎访问老王论坛:laowang.vip)
    xmlns:tools="http://schemas.android.com/tools">
$ `0 c" t; S/ L) @(欢迎访问老王论坛:laowang.vip)
        <application>' W4 A" o  A9 X: ^3 |0 n(欢迎访问老王论坛:laowang.vip)
                <activity android:name="com.unity3d.player.PrivacyActivity">
1 r7 a, S' ^: u. c) z2 [                        <intent-filter>7 W  L4 y. Q1 S& J% N  Y2 U(欢迎访问老王论坛:laowang.vip)
                                <action android:name="android.intent.action.MAIN" />5 c* h. l: x/ d' `# x(欢迎访问老王论坛:laowang.vip)
                                <category android:name="android.intent.category.LAUNCHER" />
7 {. h' D6 n" j+ k: ~  x$ V5 O                        </intent-filter>
, a. E  D1 X" T+ v8 h/ X  H8 [2 L                        <meta-data android:name="useLocalHtml" android:value="false" />. A* d6 _* ^: x0 _; I9 r8 ?# b(欢迎访问老王论坛:laowang.vip)
                        <meta-data android:name="privacyUrl" android:value="https://blog.csdn.net/final5788" />7 U0 Q8 A4 c( ~0 F(欢迎访问老王论坛:laowang.vip)
                </activity>- {, }; l1 D6 w7 U9 \0 S8 S# l(欢迎访问老王论坛:laowang.vip)
                <activity android:name="com.unity3d.player.UnityPlayerActivity". B/ x$ l; N. s" U+ ~(欢迎访问老王论坛:laowang.vip)
                  android:theme="@style/UnityThemeSelector">

# y1 o7 K+ C* b- s- h                        <meta-data android:name="unityplayer.UnityActivity" android:value="true" />
' t  v% t4 }/ J5 D9 P  ]                </activity>( m5 G  H) q/ z& {0 Z(欢迎访问老王论坛:laowang.vip)
        </application>
! s# m+ V3 e+ f        <uses-permission android:name="android.permission.INTERNET"/>: Q2 {/ R- b, W) }. r) d4 n(欢迎访问老王论坛:laowang.vip)
</manifest>
        继续创建文件目录Android/com/unity3d/player,在player文件下下创建PrivacyActivity.java文件,如图:8 s( g3 }. g8 r# u(欢迎访问老王论坛:laowang.vip)
https://article.biliimg.com/bfs/article/b123ed83488007cb2c3266154f86a332483438496.png
PrivacyActivity.java文件代码如下:
package com.unity3d.player;/ k' i$ v) s6 F& t(欢迎访问老王论坛:laowang.vip)
import android.app.Activity;
: _. h  _7 I# U( Z- e8 U  Kimport android.app.AlertDialog;
! J$ u8 x9 }9 G, K$ {  [import android.content.DialogInterface;: G' B" w8 A9 S% y7 I" \. q, z(欢迎访问老王论坛:laowang.vip)
import android.content.Intent;1 P" R/ {* ^2 j7 z7 G(欢迎访问老王论坛:laowang.vip)
import android.content.SharedPreferences;
8 z4 D. j& m" o4 s1 B6 bimport android.content.pm.ActivityInfo;
5 h6 L$ G% f) @) Jimport android.content.pm.PackageManager;
7 j1 n+ R  w% ?" ~( D# {( ]import android.os.Bundle;
7 W0 j' q: T& Q. W4 Aimport android.webkit.WebResourceError;
' u6 @, y: t% i7 X% j2 T( K: t8 ^import android.webkit.WebResourceRequest;0 u: k/ Q& I7 q8 D(欢迎访问老王论坛:laowang.vip)
import android.webkit.WebView;
" K3 ?( L2 G9 @/ Mimport android.webkit.WebViewClient;
/ r; ]7 @0 O2 c2 B : }1 A/ n( M0 W* D/ h7 m(欢迎访问老王论坛:laowang.vip)
public class PrivacyActivity extends Activity implements DialogInterface.OnClickListener {! x6 g, d" H+ M  y6 |3 M, k/ w(欢迎访问老王论坛:laowang.vip)
    boolean useLocalHtml = true;
2 K, y7 |2 V% _1 n2 C    String privacyUrl = "https://blog.csdn.net/final5788";
' `" `% E8 e+ \# o    final String htmlStr = "欢迎使用本游戏,在使用本游戏前,请您充分阅读并理解<a href=\"https://blog.csdn.net/final5788\">《用户协议》</a>和<a href=\"https://blog.csdn.net/final5788\">《隐私政策》</a>各条\n" +8 t) P0 L" x% z(欢迎访问老王论坛:laowang.vip)
            "款,了解我们对于个人信息的处理规则和权限申请的目的,特别提醒您注意前述协议中关于\n" +2 g: Y) W- ~2 s5 H8 J(欢迎访问老王论坛:laowang.vip)
            "我们免除自身责任,限制您的权力的相关条款及争议解决方式,司法管辖等内容。我们将严\n" +2 V6 g( s7 _4 a, A(欢迎访问老王论坛:laowang.vip)
            "格遵守相关法律法规和隐私政策以保护您的个人隐私。为确保您的游戏体验,我们会向您申请以下必要权限,您可选择同意或者拒绝,拒绝可能会导致无法进入本游戏。同时,我们会根据本游戏中相关功能的具体需要向您申请非必要的权限,您可选择同意或者拒绝,拒绝可能会导致部分游戏体验异常。其中必要权限包括:设备权限(必要):读取唯一设备标识 (AndroidID、mac),生成帐号、保存和恢复游戏数据,识别异常状态以及保障网络及运营安全。存储权限(必要):访问您的存储空间,以便使您可以下载并保存内容、图片存储及上传、个人设置信息缓存读写、系统及日志文件创建。\n";
8 c5 b7 V! M7 K- C. m% t! \
4 P, P0 I5 j1 S# m# S9 v" I; R    @Override% b8 \, l- o9 I* x/ D(欢迎访问老王论坛:laowang.vip)
    protected void onCreate(Bundle savedInstanceState) {% o+ r  y% `; M$ ~7 w(欢迎访问老王论坛:laowang.vip)
        super.onCreate(savedInstanceState);. N9 G/ w7 k! e, S(欢迎访问老王论坛:laowang.vip)

7 Q1 H4 k. l, F5 q% @- j        ActivityInfo actInfo = null;% r8 d+ @3 n( k" x$ \(欢迎访问老王论坛:laowang.vip)
        try {! [8 h+ ], Y  e0 |6 n, p(欢迎访问老王论坛:laowang.vip)
            //获取AndroidManifest.xml配置的元数据2 `" |6 T5 B9 y) g! P8 `8 n(欢迎访问老王论坛:laowang.vip)
            actInfo = this.getPackageManager().getActivityInfo(getComponentName(), PackageManager.GET_META_DATA);
6 n) B" S5 Y" V7 n2 d            useLocalHtml = actInfo.metaData.getBoolean("useLocalHtml");
+ J9 t- z; B) C4 \" s4 k            privacyUrl = actInfo.metaData.getString("privacyUrl");
# P; g2 c+ L6 m5 j8 Y' }' D( H) h' h; T        } catch (PackageManager.NameNotFoundException e) {
7 E: s# }4 s7 ]            e.printStackTrace();# s, _0 O3 G- x, [& _(欢迎访问老王论坛:laowang.vip)
        }
' Z' _  q1 ^  p( @) M
# k# W+ E5 z3 m3 k9 j1 W        //如果已经同意过隐私协议则直接进入Unity Activity& |. l) t* O+ R(欢迎访问老王论坛:laowang.vip)
        if (GetPrivacyAccept()){
0 E2 j& }. S0 b            EnterUnityActivity();
2 _2 U0 |# t$ ]. A. k- U8 b# o8 g            return;
& n* v2 ^+ L! z2 @; F        }* E9 Z+ {2 e7 t/ b* l- X(欢迎访问老王论坛:laowang.vip)
        ShowPrivacyDialog();//弹出隐私协议对话框
( R$ O" C! M/ l9 w8 s    }
6 O/ E6 R+ O3 t, ` ) B2 r3 `, L, E' k8 O9 w7 P. {(欢迎访问老王论坛:laowang.vip)
    @Override
9 |5 i; E3 q7 F$ z    public void onClick(DialogInterface dialogInterface, int i) {  n* q: Z$ f6 y. Z(欢迎访问老王论坛:laowang.vip)
        switch (i){# X3 y% i! N7 z3 i' A(欢迎访问老王论坛:laowang.vip)
            case AlertDialog.BUTTON_POSITIVE://点击同意按钮) r8 q! g/ Y+ t: x+ }& @0 \2 |(欢迎访问老王论坛:laowang.vip)
                SetPrivacyAccept(true);3 N( Z- \( y9 o! Y# P; i3 o(欢迎访问老王论坛:laowang.vip)
                EnterUnityActivity();//启动Unity Activity/ W) f# w  ^  M0 s* ?6 O! y7 l7 o6 y; O(欢迎访问老王论坛:laowang.vip)
                break;2 _' V4 Y# l: x* _. u+ ?) E(欢迎访问老王论坛:laowang.vip)
            case AlertDialog.BUTTON_NEGATIVE://点击拒绝按钮,直接退出App3 s) I; G# {1 h( F7 Z0 n(欢迎访问老王论坛:laowang.vip)
                finish();! K/ l$ \5 V* n  y, P  W1 f3 X(欢迎访问老王论坛:laowang.vip)
                break;
. X( h3 b( x" ]: M0 O        }
- P3 w! d0 p* @2 |    }7 V: |1 n0 m. a$ p, E8 z(欢迎访问老王论坛:laowang.vip)
    private void ShowPrivacyDialog(){
) }$ Y4 B' F0 e  @6 U: Y3 M/ G        WebView webView = new WebView(this);5 @/ S: T% v  F! M(欢迎访问老王论坛:laowang.vip)
        if (useLocalHtml){$ m5 k( @: p- J* Y% J, y(欢迎访问老王论坛:laowang.vip)
            webView.loadDataWithBaseURL(null, htmlStr, "text/html", "UTF-8", null);
  p/ n# J7 c% M        }else{
2 `4 u; H, [! n/ t! }            webView.loadUrl(privacyUrl);2 |: ^: b) a3 I" }(欢迎访问老王论坛:laowang.vip)
            webView.setWebViewClient(new WebViewClient(){) s. o' G& |5 L4 r' \(欢迎访问老王论坛:laowang.vip)
                @Override2 z6 _0 |% v/ \5 `(欢迎访问老王论坛:laowang.vip)
                public boolean shouldOverrideUrlLoading(WebView view, String url) {& h1 K5 @* b+ ~5 K3 }+ \: s(欢迎访问老王论坛:laowang.vip)
                    view.loadUrl(url);
9 }5 p9 e. k. ]( H5 ?                    return true;: |. I) ]0 |% E! t, ?: u" b(欢迎访问老王论坛:laowang.vip)
                }
2 k. ^) E& k7 p. Q + i4 z9 C1 f9 M* O(欢迎访问老王论坛:laowang.vip)
                @Override
, V1 y: g' y9 J6 M$ e2 F% \                public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {
9 _% N; b$ w' i! y8 j! z4 }8 a                    view.reload();7 Y+ i. x0 s2 e7 z" D" l0 r5 W+ r( k(欢迎访问老王论坛:laowang.vip)
                }
2 A" s* U2 Q3 P
+ X4 j2 G/ o% {! }- @7 m                @Override' k9 z2 l. O2 ~0 o(欢迎访问老王论坛:laowang.vip)
                public void onPageFinished(WebView view, String url) {
5 O; O# [: U3 Z0 C" |* Y; A                    super.onPageFinished(view, url);) W( h1 |1 \& M+ c(欢迎访问老王论坛:laowang.vip)
                }
: e: N% F8 j' S& U            });* H3 P/ T; h: g, L7 g- _(欢迎访问老王论坛:laowang.vip)
        }" k0 \/ W7 W9 Q8 O(欢迎访问老王论坛:laowang.vip)

2 N6 B# [* n0 `1 ^+ T" Q- w        AlertDialog.Builder privacyDialog = new AlertDialog.Builder(this);
1 h2 |2 N3 @! g; \+ J5 [        privacyDialog.setCancelable(false);
/ p2 O% a7 c& m        privacyDialog.setView(webView);
1 p8 B$ d' I5 i        privacyDialog.setTitle("User Terms & Privacy");3 H7 Z+ L) m0 {(欢迎访问老王论坛:laowang.vip)
        privacyDialog.setNegativeButton("Exit",this);5 \0 x9 H+ }3 n4 M  z1 o(欢迎访问老王论坛:laowang.vip)
        privacyDialog.setPositiveButton("Agree",this);- y6 c% Q$ F+ @6 ]& J0 ?5 y(欢迎访问老王论坛:laowang.vip)
        privacyDialog.create().show();. M6 N* @+ q  f: t. x9 K3 {(欢迎访问老王论坛:laowang.vip)
    }. I- `8 U9 O+ @: R$ V(欢迎访问老王论坛:laowang.vip)
//启动Unity Activity4 q0 T  u" j" Z. F- r(欢迎访问老王论坛:laowang.vip)
    private void EnterUnityActivity(){# v0 g! y" j0 f0 }: {(欢迎访问老王论坛:laowang.vip)
        Intent unityAct = new Intent();
, W- Z4 g3 k/ s( h        unityAct.setClassName(this, "com.unity3d.player.UnityPlayerActivity");
1 e/ Q7 }1 a0 S6 H4 S' S$ c        this.startActivity(unityAct);3 q6 s3 L6 L0 a( H, `+ W6 P(欢迎访问老王论坛:laowang.vip)
    }
' f/ m! H" G9 K- W- P! ?//保存同意隐私协议状态0 z" Q! f  }: O) R/ x. S(欢迎访问老王论坛:laowang.vip)
    private void SetPrivacyAccept(boolean accepted){
( Y9 w0 o. M' X' H* H; F! y6 C        SharedPreferences.Editor prefs = this.getSharedPreferences("PlayerPrefs", MODE_PRIVATE).edit();
/ l0 |3 c1 I+ v        prefs.putBoolean("PrivacyAccepted", accepted);! _# E/ k( n* H1 {(欢迎访问老王论坛:laowang.vip)
        prefs.apply();# L0 I: s! M# d2 o. L(欢迎访问老王论坛:laowang.vip)
    }- ?7 Z* J0 [0 ?, m; L8 g- T" G$ d(欢迎访问老王论坛:laowang.vip)
    private boolean GetPrivacyAccept(){
1 J8 h9 O6 i+ ]: _7 e        SharedPreferences prefs = this.getSharedPreferences("PlayerPrefs", MODE_PRIVATE);
; K+ ?7 R- q: o        return prefs.getBoolean("PrivacyAccepted", false);
" U1 b' E4 U. A! k2 ^  G    }
' D' B' F* Y! E. @) ~}8 y% t' \2 f3 h* R' L& |(欢迎访问老王论坛:laowang.vip)
        接下来,我们用Unity编辑器自带的打包功能,将项目打包成一个后缀名为apk的文件,Unity打包到安卓平台需要安装的一些支持,我在这里就不过多赘述了。在打包之前,我们要根据TapTap的官方文档对项目进行一些设置,具体如下:
7 R" Z" V  h$ U, A( r
https://article.biliimg.com/bfs/article/6451d6fe7c8200afafbe44d8cae69e5b483438496.png
: o- a, g5 ^4 `0 O; B: C) whttps://article.biliimg.com/bfs/article/e5c8a1c75e8a7677339f6080b20722e5483438496.png
5 g- J' z' b+ W# u7 ]% b
        Project Settings=>Player=>Other Settings=>Configuration=>Scripting Backend  切换成 IL2CPP。
        Target Architectures =>ARMv7、ARM64  同时勾选
) D* r* _5 c* V* o! X& D2 }
        打包成功后会生成一个后缀名为apk的文件,接下来就可以开始应用上架的流程了。
; F! M* }: h# T+ x: g# Y4 N
https://article.biliimg.com/bfs/article/7ed22b7e323c885d3021b28f8f2e8edc483438496.png
3.创建应用并正式发布
        特别声明:
        以下只是个人认为比较重要或易错的部分应用上架流程,不是全部流程!!!
进入厂商资料页面:
https://article.biliimg.com/bfs/article/3745c10bfc1f26c9b15ae4890d82d930483438496.png
        根据要求填写,这里的厂商网址,我填的我Github的个人主页。
        下面我们可以开始创建应用了:
https://article.biliimg.com/bfs/article/0205c631153d7c47ecafb51faed11bcd483438496.png
        这里创建的应用仅限中国大陆地区。# o/ X5 |' m4 d3 `7 D(欢迎访问老王论坛:laowang.vip)
https://article.biliimg.com/bfs/article/7b381eb94fedcf4761a5ee57465ab21b483438496.png
        后续资料正常按要求填写,这里补充几点需要注意的地方:
       所有物料必须按照要求上传,不要抱有侥幸心理,不符合要求会被官方打回!!7 x/ G6 S2 X& d( Z$ L$ t' B3 A( I(欢迎访问老王论坛:laowang.vip)
https://article.biliimg.com/bfs/article/a6e13e57d3b46e586dae8d73f96cd1ea483438496.png6 f3 q( U: `, U(欢迎访问老王论坛:laowang.vip)
https://article.biliimg.com/bfs/article/6ca08628d769b6e4d3d3155e7ed6ae07483438496.png
        这里的详情页不能是游戏内的截图!可以参考官方在右侧给出的截图:: L' h9 ^' x1 _5 f(欢迎访问老王论坛:laowang.vip)
https://article.biliimg.com/bfs/article/eff18b4aa3fd1aec8007dc384d2c3005483438496.png
        试玩版应用也可以分测试和正式等几个阶段,我的个人建议是先进入测试阶段,让玩家测一测你上架应用中的一些Bug由于不同移动设备硬件参数不同,导致UI适配、帧率表现出与理想不一致的问题。! _& S! |4 [+ B0 Z$ x  ~; k(欢迎访问老王论坛:laowang.vip)
https://article.biliimg.com/bfs/article/3e430dc88e096832e8ecb77b95624261483438496.png
        将应用状态更改成正式上线(试玩版)时,隐私政策链接是必填的。$ U* U( q9 E, X# i1 v8 u- z# v(欢迎访问老王论坛:laowang.vip)
https://article.biliimg.com/bfs/article/2a7228496021d5e9f524fe315c48e67c483438496.png
        说人话就是要根据自己的应用写一篇隐私政策的小作文,然后把小作文的网址填进去。
        参考官方文档:
; ^) p6 \/ T; n/ r. ~' N1 U5 I
https://article.biliimg.com/bfs/article/635c45e44a70348a37c3ee4172bca2d3483438496.png
       参考链接: http://www.oga.org.cn/newsinfo/1688274.html
        打开后页面如下,点击下载链接后会下载隐私政策的模板文献,然后根据自己应用的实际情况修改即可:
& K& z: P: t6 E7 P9 |& O5 T. F(欢迎访问老王论坛:laowang.vip)
https://article.biliimg.com/bfs/article/3c1bc529229a0896df484c9e3f142cae483438496.png
        不过我本人比较笨懒,所以给大家推荐一个自动生成隐私政策文献的工具:
$ G$ E6 ~4 B3 d2 E& [2 y" r' G
https://toolbox.yolo.blue/privacy-policy-gen ,填写对应信息之后即可生成相关隐私政策文献。
https://article.biliimg.com/bfs/article/5fc0897603ef42ab83679fb5d7140f8f483438496.png
        由于我们个人开发者可能没有官网,所以可以把生成好的隐私政策文献转移到有道云笔记,并将其笔记进行分享,分享之后得到的链接填入上方即可,2024/1/25亲测有效。
https://article.biliimg.com/bfs/article/5a737cafabaf338e18609c199a7537f3483438496.png
3 c" P( M: e3 \1 q: P0 {https://article.biliimg.com/bfs/article/6757423ec7293eabb1dd84f9173126e2483438496.png
        点击网页最下方的状态修改按钮,打开状态修改页面:
https://article.biliimg.com/bfs/article/1cbbd1ff7f637ecb8eea58b203247c9e483438496.png* A6 R! M( i, c0 F1 U9 V8 E, ?(欢迎访问老王论坛:laowang.vip)
https://article.biliimg.com/bfs/article/c994c36570daffff6f4ac0c4a864ea89483438496.png
        根据自己的实际情况选择应用的发布状态和时间,然后再提交审核。到此整个试玩版应用的上架流程就介绍完了,等待审核通过就可以在TapTap平台下载你上架的应用了(其实发布测试的时候用户就可在TapTap上试玩你上架的应用)。  J' T: H8 M' e6 y: O0 T(欢迎访问老王论坛:laowang.vip)
4.个人总结
       以上文章内容有遗漏关键点或者错误的地方欢迎大家在评论区指出哦!
        个人认为TapTap上架应用主要是得把隐私政策弹窗和隐私政策链接搞定,因为普通小白可能没接触过这一方面,我个人认为TapTap应用上架的流程还是有点繁琐的,不过.........
https://article.biliimg.com/bfs/article/c358f27b7e606e36c60d53d6770bcda8483438496.png
就当我没说吧,溜了...............
! \/ r8 P$ U# Z3 [+ Y  U5 l(欢迎访问老王论坛:laowang.vip)

作者: 3055303804    时间: 2024-1-27 20:30
由于没有正确显示图片,完整图文版,参考下面链接% x/ A; Z3 i: _' `(欢迎访问老王论坛:laowang.vip)
https://www.bilibili.com/read/cv30208255/  `! U  ^4 }. z# m( w(欢迎访问老王论坛:laowang.vip)

作者: navebayes    时间: 2024-1-28 00:00
基础50可读性60排版45内容75其他30总计260
作者: 3055303804    时间: 2024-1-28 00:14
navebayes 发表于 2024-1-28 00:00
. b. i3 A/ N  g4 a/ ~基础50可读性60排版45内容75其他30总计260

9 \+ f2 r( o) x4 R1 s1 r3 n; v6 Q& h9 X+ Z大佬,你给我那么多币,谢谢大佬,谢谢
作者: navebayes    时间: 2024-1-28 00:41
3055303804 发表于 2024-1-28 00:143 e% b8 a$ \( z/ }- K(欢迎访问老王论坛:laowang.vip)
大佬,你给我那么多币,谢谢大佬,谢谢
; K+ B. x* \- o; j(欢迎访问老王论坛:laowang.vip)
知识换取奖励,这个是芝士计划的初衷 这是你应得的+ s: I$ r/ e  Q7 W4 F(欢迎访问老王论坛:laowang.vip)
如果感兴趣的话,可以写一下更具体的游戏制作相关的东西
作者: 3055303804    时间: 2024-1-28 03:12
navebayes 发表于 2024-1-28 00:41
9 n) u% t0 x' z" ~6 T知识换取奖励,这个是芝士计划的初衷 这是你应得的" `' N, {7 A' p8 _8 W(欢迎访问老王论坛:laowang.vip)
如果感兴趣的话,可以写一下更具体的游戏制作相关的东 ...

- x+ k4 K7 y1 m" E9 w多谢大佬,我会不定期分享一些开发方面的小技巧,并同时制作下一部游戏,多谢!
作者: zxasd1989520    时间: 2024-1-28 08:29
赞一下  
作者: DA梦初觉    时间: 2024-1-28 09:06
TapTap确实是国内很不错的找游戏app了以前还可以在上面找到一些国外的游戏,还能碰到老外
作者: 1213564999    时间: 2024-1-28 14:28
啊?这是我在这个软件上该看到的东西吗
作者: navebayes    时间: 2024-1-30 12:16
1213564999 发表于 2024-1-28 14:28
4 _3 {# U7 r  e6 [: }9 T' S5 n啊?这是我在这个软件上该看到的东西吗
! S9 q- {& @3 s" d(欢迎访问老王论坛:laowang.vip)
板块置顶的芝士计划可以了解一下喵
+ Z% P/ u( \9 W! W
作者: 77879311    时间: 2024-1-30 12:31
学废了
作者: 2673835003    时间: 2024-2-4 06:18
隐私和用户协议必须加进去吗,如果仅仅是测试,需要加吗
作者: 3055303804    时间: 2024-2-4 12:29
2673835003 发表于 2024-2-4 06:180 X0 K" |+ T  _% Q(欢迎访问老王论坛:laowang.vip)
隐私和用户协议必须加进去吗,如果仅仅是测试,需要加吗

' V. ]' R5 }/ v; C8 W9 C1 w必须加,我说的很清楚,你可以看评论区我置顶的链接。我B站有视频的版本




欢迎光临 老王论坛 (https://laowang897ejh.xyz/) Powered by Discuz! X3.4