多SDK合并方法及注意事项(android)

发表于2017-12-24
评论0 5.7k浏览

 

SDK合并方法及注意事项

一、参考文档

1.unityAndroid通信 http://blog.csdn.net/onafioo/article/details/52061858

2.高德地图概述http://lbs.amap.com/api/android-sdk/summary/

3.ShareSDKSMSSDK概述 http://wiki.mob.com/sdk-sms-android-3-0-0/

 

二、遇到的问题及注意事项

 

1.多包合并时,次要的Activity不能执行非静态函数

2.使用markejar打包

3.架包中存在.aar文件的,需要在Build.gradle中引用

1.添加
repositories{
    flatDir{
        dirs
'libs' //就是你放aar的目录地址
   

 

2).dependencies {
    ...........

   
compile name: 'SMSSDK-3.0.0', ext: 'aar'
   
compile name: 'SMSSDKGUI-3.0.0', ext: 'aar'

..........
     }

 

三、合并SDK步骤

1步,使用AndoridStudio创建Android工程,保证包名与Unity的包名一致

 

2步,导入需要的jar

 

3步,配置manifest.xml文件,注意application如果公用的话,查看SDK代码配置apikey方式。
 下列代码都有明确注释
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   
package="com.yxcw.dmm"
   
android:installLocation="preferExternal"
   
android:versionCode="1"
   
android:versionName="1.0">

    <
supports-screens
       
android:anyDensity="true"
       
android:largeScreens="true"
       
android:normalScreens="true"
       
android:smallScreens="true"
       
android:xlargeScreens="true" />

    <
uses-permission android:name="android.permission.READ_CONTACTS" />
    <
uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <
uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <
uses-permission android:name="android.permission.RECEIVE_SMS" />
    <
uses-permission android:name="android.permission.READ_SMS" />
    <
uses-permission android:name="android.permission.GET_TASKS" />
    <
uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
   
<!-- 用于进行网络定位 -->
   
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
   
<!-- 用于获取wifi的获取权限,wifi信息会用来进行网络定位 -->
   
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
   
<!-- 用于访问网络,网络定位需要上网 -->
   
<uses-permission android:name="android.permission.INTERNET" />
   
<!-- 用于读取手机当前的状态 -->
   
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
   
<!-- 用于写入缓存数据到扩展存储卡 -->
   
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
   
<!-- 用于申请调用A-GPS模块 -->
   
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
   
<!-- 用于申请获取蓝牙信息进行室内定位 -->
   
<uses-permission android:name="android.permission.BLUETOOTH" />
    <
uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
    <
uses-permission android:name="android.permission.WAKE_LOCK" />

    <
application
       
android:label="@string/app_name"
       
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
        <
activity
           
android:name=".MainActivity"
            
android:label="@string/app_name">
            <
intent-filter>
                <
action android:name="android.intent.action.MAIN" />

                <
category android:name="android.intent.category.LAUNCHER" />
                <
category android:name="android.intent.category.LEANBACK_LAUNCHER" />
            </
intent-filter>

            <
meta-data
               
android:name="unityplayer.UnityActivity"
               
android:value="true" />
            <
meta-data
               
android:name="unityplayer.ForwardNativeEventsToDalvik"
               
android:value="false" />
        </
activity>
       
<!-- 自定义短信接口 -->
       
<activity android:name=".SMSSDKActivity" />
       
<!-- 自定义地图定位接口 -->
       
<activity android:name=".AMapActivity" />
       
<!-- 自定义第三方授权接口 -->
       
<activity android:name=".AuthorizationActivity" />
       
<!-- 自定义pio搜索接口 -->
       
<activity android:name=".PoiSearchActivity" />
       
<!-- 自定义路径导航接口 -->
       
<activity android:name=".NaviActivity"/>
       
<!-- 自定义地图绘制接口 -->
       
<activity android:name=".DrawMapActivity"/>
           
<!-- smssdk短信 -->
           
<activity
               
android:name="com.mob.tools.MobUIShell"
               
android:configChanges="keyboardHidden|orientation|screenSize"
               
android:theme="@android:style/Theme.Translucent.NoTitleBar"
               
android:windowSoftInputMode="stateHidden|adjustResize" />
           
<!-- 高德service -->
           
<service android:name="com.amap.api.location.APSService" />
            <
activity
               
android:name="com.amap.api.navi.AmapRouteActivity"
               
android:configChanges="orientation|keyboardHidden|screenSize"
               
android:theme="@android:style/Theme.NoTitleBar" />
           
<!-- 高德key -->
           
<meta-data
               
android:name="com.amap.api.v2.apikey"
               
android:value="7d13ed89340292ba088ec582311ca957" />
    </
application>

</
manifest>
 
 需要源码,可加QQ群579825973咨询

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引

标签: