hch
2024-10-26 e3438cb6c6a4668966eb9e28b109a6916382bf73
0312 国内quicksdk初版
11个文件已修改
5个文件已删除
12个文件已添加
486 ■■■■ 已修改文件
Channel/Android/tqxbqy/AndroidManifest.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Channel/Android/tqxbqy/debug/libs/library-debug-tqxbqy.aar 补丁 | 查看 | 原始文档 | blame | 历史
Channel/Android/tqxbqy/deps.gradle 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Channel/Android/tqxbqy/release/libs/library-release-tqxbqy.aar 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/build.gradle 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/channel/tqxbqy/AndroidManifest.xml 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/channel/tqxbqy/build.gradle 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/channel/tqxbqy/config.properties 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/channel/tqxbqy/deps.gradle 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/channel/tqxbqy/java/com/secondworld/sdk/BtGameApp.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/channel/tqxbqy/java/com/secondworld/sdk/BtGameMain.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/channel/tqxbqy/java/com/secondworld/sdk/BtGamePlatform.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/gradle.properties 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/gradle/wrapper/gradle-wrapper.properties 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/library/build.gradle 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/library/libs/alipay.aar 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/library/libs/humesdk-1.0.0.aar 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/library/libs/smsdk.aar 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/library/libs/unionapylibrary.aar 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/library/libs/unity-classes.jar 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/library/libs/wxlibrary.aar 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/library/src/main/java/com/secondworld/sdk/UnityPlayerActivity.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/library/src/main/java/com/secondworld/sdk/utils/StaticDefine.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/plugins/quick/java/com/secondworld/sdk/SplashActivity.java 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/plugins/quick/res/drawable/qk_game_loading.xml 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/plugins/quick/res/layout/qk_game_view_loading.xml 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/plugins/quick/res/values/qk_game_style.xml 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SdkProject/plugins/quick/res/values/strings.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Channel/Android/tqxbqy/AndroidManifest.xml
New file
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN-->
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.unity3d.player"
    xmlns:tools="http://schemas.android.com/tools">
    <application>
        <activity android:name="com.secondworld.sdk.SplashActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
         <activity android:name="com.secondworld.sdk.GameActivity"
                  android:theme="@style/UnityThemeSelector">
            <meta-data android:name="unityplayer.UnityActivity" android:value="true" />
         </activity>
    </application>
</manifest>
Channel/Android/tqxbqy/debug/libs/library-debug-tqxbqy.aar
Binary files differ
Channel/Android/tqxbqy/deps.gradle
New file
@@ -0,0 +1,4 @@
//此脚本为渠道的第三方远程依赖库配置,会复制到unity中用于构建
dependencies {
}
Channel/Android/tqxbqy/release/libs/library-release-tqxbqy.aar
Binary files differ
SdkProject/build.gradle
@@ -6,7 +6,7 @@
        maven { url 'https://jitpack.io' }
    }
    dependencies {
        classpath "com.android.tools.build:gradle:4.1.1"
        classpath "com.android.tools.build:gradle:7.3.0"
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module deps.gradle files
    }
SdkProject/channel/tqxbqy/AndroidManifest.xml
New file
@@ -0,0 +1,50 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.secondworld.sdk">
    <uses-permission android:name="android.permission.GET_TASKS" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
    <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
    <application
        android:name=".BtGameApp"
        android:allowBackup="true"
        android:usesCleartextTraffic="true"
        android:label="@string/app_name"
        tools:replace="android:name">
        <meta-data
            android:name="unityplayer.ForwardNativeEventsToDalvik"
            android:value="true" />
        <meta-data android:name="channelID" android:value="quicksdk_channel"/>
        <activity android:name="com.secondworld.sdk.SplashActivity" android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <provider
            android:name="android.support.v4.content.FileProvider"
            android:authorities="quicksdk_packName.Provider"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/filepaths" />
        </provider>
    </application>
</manifest>
SdkProject/channel/tqxbqy/build.gradle
New file
@@ -0,0 +1,4 @@
//当前脚本为渠道的差异化配置
dependencies {
//    implementation project(path: ':quick')
}
SdkProject/channel/tqxbqy/config.properties
New file
@@ -0,0 +1 @@
PLUGINS=quick
SdkProject/channel/tqxbqy/deps.gradle
New file
@@ -0,0 +1 @@
//此脚本为渠道的第三方远程依赖库配置,会复制到unity中用于构建
SdkProject/channel/tqxbqy/java/com/secondworld/sdk/BtGameApp.java
New file
@@ -0,0 +1,21 @@
package com.secondworld.sdk;
public class BtGameApp extends QuickApp {
    @Override
    public void onCreate() {
        super.onCreate();
    }
    @Override
    protected PlatformDiff getPlatform() {
        return new BtGamePlatform();
    }
    @Override
    protected Class<? extends GameActivityProxy> getMainProxy() {
        return BtGameMain.class;
    }
}
SdkProject/channel/tqxbqy/java/com/secondworld/sdk/BtGameMain.java
New file
@@ -0,0 +1,104 @@
package com.secondworld.sdk;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.support.annotation.NonNull;
import android.view.KeyEvent;
import com.quicksdk.QuickSDK;
import com.quicksdk.Sdk;
import com.secondworld.sdk.utils.LogUtil;
public class BtGameMain extends GameActivityProxy {
    @Override
    public void onCreate(Activity activity) {
        super.onCreate(activity);
//        LogUtil.i("SdkManager", "BtGameMain onCreate");
//        QuickSdkMgr.I.requestPermissions(activity);
        //QuickSdkMgr.I.init(activity);
        com.quicksdk.Sdk.getInstance().onCreate(activity);
        LogUtil.d("BtGameMain", "启动的是 BtGameMain!");
        PlatformDiff.I.OnCreate(GameAppProxy.app.getApplicationContext());
    }
    @Override
    public void onStart() {
        super.onStart();
        com.quicksdk.Sdk.getInstance().onStart(activity);
    }
    @Override
    public void onRestart() {
        super.onRestart();
        com.quicksdk.Sdk.getInstance().onRestart(activity);
    }
    @Override
    public void onPause() {
        super.onPause();
        com.quicksdk.Sdk.getInstance().onPause(activity);
    }
    @Override
    public void onResume() {
        super.onResume();
        com.quicksdk.Sdk.getInstance().onResume(activity);
    }
    @Override
    public void onStop() {
        super.onStop();
        com.quicksdk.Sdk.getInstance().onStop(activity);
    }
    @Override
    public void onDestroy() {
        super.onDestroy();
        com.quicksdk.Sdk.getInstance().onDestroy(activity);
    }
    @Override
    public void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
        com.quicksdk.Sdk.getInstance().onNewIntent(intent);
    }
    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        QuickSdkMgr.I.onActivityResult(activity, requestCode);
        com.quicksdk.Sdk.getInstance().onActivityResult(activity, requestCode, resultCode, data);
    }
    @Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
        QuickSdkMgr.I.onRequestPermissionsResult(activity, requestCode, grantResults, permissions);
    }
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            if (QuickSDK.getInstance().isShowExitDialog()) {
                Sdk.getInstance().exit(activity);
            } else {
                // 游戏调用自身的退出对话框,点击确定后,调用quick的exit接口
                new AlertDialog.Builder(activity).setTitle("退出").setMessage("是否退出游戏?").setPositiveButton("确定", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface arg0, int arg1) {
                        Sdk.getInstance().exit(activity);
                    }
                }).setNegativeButton("取消", null).show();
            }
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }
}
SdkProject/channel/tqxbqy/java/com/secondworld/sdk/BtGamePlatform.java
New file
@@ -0,0 +1,66 @@
package com.secondworld.sdk;
import android.Manifest;
import android.content.Context;
public class BtGamePlatform extends PlatformDiff {
    @Override
    public String platformName() {
        return "hygame";
    }
    @Override
    public  String platformProductCode()  {
        return "42726078771331573814376577516900";
    }
    @Override
    public  String platformProductKey() {
        return "28288976";
    }
    @Override
    public void CreateRoleEvent(String roleID)
    {
    }
    //mount单位为分
    @Override
    public void PayEvent(String title, String goodsID, double mount)
    {
    }
    @Override
    public void PrePayEvent(String title, String goodsID, double mount)
    {
    }
    @Override
    public void OnCreate(Context var0)
    {
    }
    @Override
    public String[] platformPermission()
    {
        return new String[] { Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_PHONE_STATE};
        //return new String[] {};
    }
    @Override
    public void LoginSuccess()
    {
    }
    @Override
    public void StartRequestPermission()
    {
    }
}
SdkProject/gradle.properties
@@ -18,4 +18,4 @@
## Automatically convert third-party libraries to use AndroidX
android.enableJetifier=false
#当前构建的渠道名称
CHANNEL_NAME=mlgtgame_quick
CHANNEL_NAME=tqxbqy
SdkProject/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-all.zip
SdkProject/library/build.gradle
@@ -1,6 +1,7 @@
plugins {
    id 'com.android.library'
}
def rootPath = rootProject.getRootDir().getAbsolutePath()
def channelPath = "${rootPath}/channel/${CHANNEL_NAME}"
@@ -32,21 +33,20 @@
def channelJavaFiles = getAllFiles(new ArrayList<File>(), "${channelPath}/java")
android {
    compileSdkVersion 28
    buildToolsVersion "28.0.3"
    compileSdkVersion 30
    buildToolsVersion "30.0.0"
    defaultConfig {
        minSdkVersion 21
        //noinspection ExpiredTargetSdkVersion
        targetSdkVersion 28
        targetSdkVersion 30
        versionCode 1
        multiDexEnabled true
        versionCode 6
        versionName "6.0"
        versionName "1.0"
//        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        consumerProguardFiles "consumer-rules.pro"
        multiDexEnabled true
    }
    flavorDimensions "version"
    productFlavors {
@@ -62,9 +62,10 @@
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
        sourceCompatibility JavaVersion.VERSION_11
        targetCompatibility JavaVersion.VERSION_11
    }
    packagingOptions {exclude 'META-INF/rxjava.properties'}
    lintOptions {
        checkReleaseBuilds false
        abortOnError false
@@ -183,8 +184,8 @@
}
dependencies {
    implementation 'com.android.support:support-annotations:28.0.0'
    testImplementation 'junit:junit:4.13.2'
//    implementation 'com.android.support:support-annotations:28.0.0'
//    testImplementation 'junit:junit:4.13.2'
    //noinspection GradleCompatible
//    implementation 'com.android.support:appcompat-v7:28.0.0'
SdkProject/library/libs/alipay.aar
Binary files differ
SdkProject/library/libs/humesdk-1.0.0.aar
Binary files differ
SdkProject/library/libs/smsdk.aar
Binary files differ
SdkProject/library/libs/unionapylibrary.aar
Binary files differ
SdkProject/library/libs/unity-classes.jar
Binary files differ
SdkProject/library/libs/wxlibrary.aar
Binary files differ
SdkProject/library/src/main/java/com/secondworld/sdk/UnityPlayerActivity.java
@@ -1,4 +1,3 @@
// GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN
package com.secondworld.sdk;
import android.app.Activity;
@@ -12,8 +11,10 @@
import android.view.Window;
import android.view.WindowManager;
import android.os.Process;
import com.unity3d.player.IUnityPlayerLifecycleEvents;
import com.unity3d.player.UnityPlayer;
public class UnityPlayerActivity extends Activity implements IUnityPlayerLifecycleEvents
{
@@ -50,9 +51,8 @@
        moveTaskToBack(true);
    }
    // When Unity player quited kill process
    // Callback before Unity player process is killed
    @Override public void onUnityPlayerQuitted() {
        Process.killProcess(Process.myPid());
    }
    @Override protected void onNewIntent(Intent intent)
@@ -79,27 +79,27 @@
    @Override protected void onStop()
    {
        super.onStop();
        mUnityPlayer.pause();
        mUnityPlayer.onStop();
    }
    @Override protected void onStart()
    {
        super.onStart();
        mUnityPlayer.resume();
        mUnityPlayer.onStart();
    }
    // Pause Unity
    @Override protected void onPause()
    {
        super.onPause();
        mUnityPlayer.pause();
        mUnityPlayer.onPause();
    }
    // Resume Unity
    @Override protected void onResume()
    {
        super.onResume();
        mUnityPlayer.resume();
        mUnityPlayer.onResume();
    }
    // Low Memory Unity
@@ -143,8 +143,8 @@
    }
    // Pass any events not handled by (unfocused) views straight to UnityPlayer
    @Override public boolean onKeyUp(int keyCode, KeyEvent event)     { return mUnityPlayer.injectEvent(event); }
    @Override public boolean onKeyDown(int keyCode, KeyEvent event)   { return mUnityPlayer.injectEvent(event); }
    @Override public boolean onTouchEvent(MotionEvent event)          { return mUnityPlayer.injectEvent(event); }
    /*API12*/ public boolean onGenericMotionEvent(MotionEvent event)  { return mUnityPlayer.injectEvent(event); }
    @Override public boolean onKeyUp(int keyCode, KeyEvent event)     { return mUnityPlayer.onKeyUp(keyCode, event); }
    @Override public boolean onKeyDown(int keyCode, KeyEvent event)   { return mUnityPlayer.onKeyDown(keyCode, event); }
    @Override public boolean onTouchEvent(MotionEvent event)          { return mUnityPlayer.onTouchEvent(event); }
    @Override public boolean onGenericMotionEvent(MotionEvent event)  { return mUnityPlayer.onGenericMotionEvent(event); }
}
SdkProject/library/src/main/java/com/secondworld/sdk/utils/StaticDefine.java
@@ -6,7 +6,7 @@
public interface StaticDefine {
    String UnityGameObjectName = "SDKUtility";
    String UnityHandleFuncName = "HandleSdkMessage";
    String UnityGameObjectName = "ynmbxxjUtil";
    String UnityHandleFuncName = "HandleMsgWithSDK";
}
SdkProject/plugins/quick/java/com/secondworld/sdk/SplashActivity.java
@@ -1,21 +1,21 @@
package com.secondworld.sdk;
import android.content.Intent;
import android.graphics.Color;
import com.quicksdk.QuickSdkSplashActivity;
public class SplashActivity extends QuickSdkSplashActivity {
    @Override
    public int getBackgroundColor() {
        return Color.WHITE;
    }
    @Override
    public void onSplashStop() {
        Intent intent = new Intent(this, GameActivity.class);
        startActivity(intent);
        this.finish();
    }
}
package com.secondworld.sdk;
import android.content.Intent;
import android.graphics.Color;
import com.quicksdk.QuickSdkSplashActivity;
public class SplashActivity extends QuickSdkSplashActivity {
    @Override
    public int getBackgroundColor() {
        return Color.WHITE;
    }
    @Override
    public void onSplashStop() {
        //闪屏结束后,跳转到游戏界面
        Intent intent = new Intent(this, GameActivity.class);
        startActivity(intent);
        this.finish();
    }
}
SdkProject/plugins/quick/res/drawable/qk_game_loading.xml
@@ -1,30 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
    android:oneshot="false" >
    <item
        android:drawable="@drawable/qk_game_load01"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load02"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load03"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load04"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load05"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load06"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load07"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load08"
        android:duration="50"/>
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
    android:oneshot="false" >
    <item
        android:drawable="@drawable/qk_game_load01"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load02"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load03"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load04"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load05"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load06"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load07"
        android:duration="50"/>
    <item
        android:drawable="@drawable/qk_game_load08"
        android:duration="50"/>
</animation-list>
SdkProject/plugins/quick/res/layout/qk_game_view_loading.xml
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical" >
    <ImageView
        android:id="@+id/qk_img_loading"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:scaleType="center"
        android:src="@drawable/qk_game_loading" />
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical" >
    <ImageView
        android:id="@+id/qk_img_loading"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:scaleType="center"
        android:src="@drawable/qk_game_loading" />
</LinearLayout>
SdkProject/plugins/quick/res/values/qk_game_style.xml
@@ -1,15 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- 自定义loading dialog -->
    <style name="qk_game_style_loading" parent="android:style/Theme.Dialog">
        <item name="android:windowFrame">@null</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowBackground">@drawable/qk_game_loadbg</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:windowContentOverlay">@null</item>
    </style>
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- 自定义loading dialog -->
    <style name="qk_game_style_loading" parent="android:style/Theme.Dialog">
        <item name="android:windowFrame">@null</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowBackground">@drawable/qk_game_loadbg</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:windowContentOverlay">@null</item>
    </style>
</resources>
SdkProject/plugins/quick/res/values/strings.xml
New file
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">QuickSDK</string>
    <string name="action_settings">Settings</string>
</resources>