cocos creator android 穿山甲打包

https://mp.weixin.qq.com/s/-0H36WDyDcGy4hCEL-CXmw

0、核心思路:

js可以调用java的静态方法,jsb函数

java也可以调用js的方法

 

1、创建libs文件夹,并copy  open_ad_sdk.aar

注意要在studio内创建libs目录(project视角)!后面的操作也是,每操作一步,File->sync project with gradle files

如果发现 有问题

打开项目主工程(通常是app module)的build.gradle
将compileSdkVersion指定为28

android {
    //编译版本号
    compileSdkVersion 28
    .....................
}
 

2、用android studio打开项目,在Gradle Scripts下的 build.gradle(Module:cyboss),注意有多个同名文件

在dependencies{

下copy 

implementation('com.android.support:support-v4:24.2.0')

}

在 defaultConfig添加

ndk { // 设置支持的 SO 库构架,注意这里要根据你的实际情况来设置 abiFilters ‘armeabi-v7a’, ‘arm64-v8a’, ‘x86’, ‘x86_64’, ‘arm64-v8a’ abiFilters 'armeabi-v7a' }

3、AndroidManifest 配置 permission 和  provider

provider 放在<application>标签内

4、AppActivity.java 需要引用

import android.content.Intent;
import android.content.res.Configuration;
import com.bytedance.sdk.openadsdk.TTAdConfig;
import com.bytedance.sdk.openadsdk.TTAdConstant;
import com.bytedance.sdk.openadsdk.TTAdManager;
import com.bytedance.sdk.openadsdk.TTAdSdk;

5、遇到未定义的类型,也需要引用

import com.bytedance.sdk.openadsdk.TTAdNative;

6、JS内调用java的静态方法

jsb方法,可以调用java类里面的静态方法

反过来也可以

7、xml配置

android:name="org.cocos2dx.javascript.MyApplication"

放在applicaiton 标签的第一个

 

8、express模版广告

AdSlot adSlot = new AdSlot.Builder()
        .setCodeId(codeId)
        .setSupportDeepLink(true)
        .setImageAcceptedSize(1080, 1920)
        .setRewardAmount(1)  //奖励的数量
        //模板广告需要设置期望个性化模板广告的大小,单位dp,激励视频场景,只要设置的值大于0即可
        .setExpressViewAcceptedSize(500,500)
        .setUserID("5081714")//用户id,必传参数
        .setOrientation(orientation) //必填参数,期望视频的播放方向:TTAdConstant.HORIZONTAL 或 TTAdConstant.VERTICAL
        .build();

激励视频等可能是模版类型的广告,参数需要使用express;

9、android resource link问题

关闭项目,重启

 

10、MyApplicaiton.java

package org.cocos2dx.javascript;

import android.app.Application;

public class MyApplication extends Application {
    
    @Override
    public void onCreate(){
        super.onCreate();

        //穿山甲SDK初始化
        //强烈建议在应用对应的Application#onCreate()方法中调用,避免出现content为null的异常
        TTAdManagerHolder.init(this);
    }
}

 

11、TTAdManagerHolder.java  从sdk demo 内 copy进来

12、AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.orgngt.cyboss.yyh"
    android:installLocation="auto">

    <uses-feature android:glEsVersion="0x00020000" />

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
    <uses-permission android:name="android.permission.GET_TASKS" /> <!-- 可选,向开发者声明获取定位后,才可慎重添加此权限,
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值