SDK接入配置
<h1>SDK接入配置</h1>
<h2>1. 准备工作</h2>
<ul>
<li>在【灰鲸网络】官网注册账号申请应用并选择要接入的广告类型,拿到相应的广告参数</li>
<li>解压我们提供的压缩包,放入app的libs工程中,并添加所需的其他配置项</li>
</ul>
<h2>3. 集成步骤</h2>
<h3>3.1 添加 SDK 依赖</h3>
<p>groovy</p>
<pre><code>dependencies {
implementation fileTree(include: ['*.jar', '*.aar'], dir: 'libs')
implementation 'com.squareup.okhttp3:okhttp:3.8.0'
implementation 'com.google.code.gson:gson:2.8.0'
}</code></pre>
<p><em><strong>加入 AndroidX 或者 Android Support V4 依赖支持库(二选一)</strong></em></p>
<p>groovy</p>
<pre><code>dependencies {
//AndroidX
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
//Android support v4
implementation 'com.android.support:support-v4:23.0.+'
}</code></pre>
<h3>3.2 更新 AndroidManifest.xml</h3>
<p><em><strong>权限声明</strong></em></p>
<p>xml</p>
<pre><code>&lt;!--联⽹权限--&gt;
&lt;uses-permission android:name=&quot;android.permission.INTERNET&quot; /&gt;
&lt;!--检测当前⽹络状态是2G、3G、4G还是WiFi--&gt;
&lt;uses-permission android:name=&quot;android.permission.ACCESS_NETWORK_STATE&quot; /&gt;
&lt;!--获取设备标识IMEI。⽤于标识⽤户--&gt;
&lt;uses-permission android:name=&quot;android.permission.READ_PHONE_STATE&quot; /&gt;
&lt;!--读写存储权限--&gt;
&lt;uses-permission android:name=&quot;android.permission.READ_EXTERNAL_STORAGE&quot; /&gt;
&lt;uses-permission
android:name=&quot;android.permission.WRITE_EXTERNAL_STORAGE&quot;
tools:node=&quot;replace&quot; /&gt;
&lt;!--获取MAC地址,⽤于标识⽤户--&gt;
&lt;uses-permission android:name=&quot;android.permission.CHANGE_WIFI_STATE&quot; /&gt;
&lt;uses-permission android:name=&quot;android.permission.ACCESS_WIFI_STATE&quot; /&gt;
&lt;!--安装应⽤权限--&gt;
&lt;uses-permission android:name=&quot;android.permission.REQUEST_INSTALL_PACKAGES&quot; /&gt;
&lt;!--定位权限,不强制要求--&gt;
&lt;uses-permission android:name=&quot;android.permission.ACCESS_COARSE_LOCATION&quot; /&gt;
&lt;uses-permission android:name=&quot;android.permission.ACCESS_FINE_LOCATION&quot; /&gt;
&lt;application &gt;
&lt;!--穿山甲--&gt;
&lt;provider android:name=&quot;com.bytedance.sdk.openadsdk.TTFileProvider&quot;
android:authorities=&quot;${applicationId}.TTFileProvider&quot; android:exported=&quot;false&quot;
android:grantUriPermissions=&quot;true&quot;&gt;
&lt;meta-data android:name=&quot;android.support.FILE_PROVIDER_PATHS&quot;
android:resource=&quot;@xml/file_paths&quot; /&gt;
&lt;/provider&gt;
&lt;provider android:name=&quot;com.bytedance.sdk.openadsdk.multipro.TTMultiProvider&quot;
android:authorities=&quot;${applicationId}.TTMultiProvider&quot; android:exported=&quot;false&quot; /&gt;
&lt;!--广点通sdk--&gt;
&lt;provider android:name=&quot;com.qq.e.comm.GDTFileProvider&quot;
android:authorities=&quot;${applicationId}.gdt.fileprovider&quot; android:exported=&quot;false&quot;
android:grantUriPermissions=&quot;true&quot;&gt;
&lt;meta-data android:name=&quot;android.support.FILE_PROVIDER_PATHS&quot;
android:resource=&quot;@xml/gdt_file_path&quot; /&gt;
&lt;/provider&gt;
&lt;/application&gt;</code></pre>
<h3>3.3 混淆配置</h3>
<p>`</p>
<pre><code>-dontwarn com.beizi.fusion.**
-dontwarn com.beizi.ad.**
-keep class com.beizi.fusion.** {*; }
-keep class com.beizi.ad.** {*; }
-ignorewarnings
-dontwarn com.baidu.mobads.sdk.api.**
-keepclassmembers class * extends android.app.Activity{
public void(android.view.View);
}
-keepclassmembers enum *{
public static []values();
public static valueOf(java.lang.String);
}
-keep class com.baidu.mobads.**{*;}
-keep class com.style.widget.**{*;}
-keep class com.component.**{*;}
-keep class com.baidu.ad.magic.flute.**{*;}
-keep class com.baidu.mobstat.forbes.**{*;}
-keep class org.chromium.** {*;}
-keep class org.chromium.** { *; }
-keep class aegon.chrome.** { *; }
-keep class com.kwai.**{ *; }
-keep class com.kwad.**{ *; }
-dontwarn com.kwai.**
-dontwarn com.kwad.**
-dontwarn com.ksad.**
-dontwarn aegon.chrome.**
-keepattributes Signature
-keepattributes Annotation
-dontwarn sun.misc.**
-keep class com.google.gson.examples.android.model.**{&lt;fields&gt;; }
-keep class * implements com.google.gson.TypeAdapterFactory
-keep class * implements com.google.gson.JsonSerializer
-keep class * implements com.google.gson.JsonDeserializer
-keep class com.bytedance.sdk.openadsdk.** { *; }
-keep public interface com.bytedance.sdk.openadsdk.downloadnew.** {*;}
-keep class com.pgl.sys.ces.** {*;}
-keep class com.bytedance.embed_dr.** {*;}
-keep class com.bytedance.embedapplog.** {*;}
-keep class com.meishu.sdk.**{*;}
-dontwarn com.octopus.ad.**
-keep class com.octopus.ad.** {*;}
-keep class com.hj.octopus.** {*;}
-keep class com.hj.ks.** {*;}
-keep class com.hj.gdt.** {*;}
-keep class com.hj.sig.** {*;}
-keep class com.hj.octopusn.** {*;}
-keep class com.hzhj.openads.** {*;}`</code></pre>