1.解压sdk
2.将sdk中目录assets、libs、res、src目录下的文件都复制到相应的文件夹内,乐变的内容必须复制到com.excelliance.open这个包之下
3.配置mainfest文件
①添加权限
②添加application,需要配置全名,而且乐变的代码必须放在包名com.excelliance.open之下
③将所有lb_target_pkgname替换为您的包名
④替换MainChId的值
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="partment.update.application" >
<!-- 如下内容放到AndroidManifest.xml的<application>标签的外面 -->
<!-- lebian sdk permission begin -->
<uses-permission android:name="android.permission.GET_DETAILED_TASKS" />
<uses-permission android:name="android.permission.REORDER_TASKS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<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_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
<uses-permission android:name="android.permission..INTERACT_ACROSS_USERS_FULL"/>
<!-- lebian sdk permission end -->
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:name="com.excelliance.open.LBApplication">
<!-- 如下内容放到AndroidManifest.xml的<application>标签的里面 -->
<!-- 将manifest中所有的lb_target_pkgname替换为您的包名 -->
<!-- 将manifest中所有的lb_target_pkgname替换为您的包名 -->
<!-- 将manifest中所有的lb_target_pkgname替换为您的包名 -->
<!-- lebian sdk components begin -->
<meta-data android:name="ClientChId" android:value="demo" />
<meta-data android:name="MainChId" android:value="67316" />
<activity android:name="MainActivity"
android:theme="@style/Lebian.Theme.NoTitleBar.Fullscreen"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<service
android:name="com.excelliance.lbsdk.debug.LBSdkCrashReportService"
android:exported="false"
android:process=":lebian.bugreport" >
<intent-filter>
<action android:name="com.excelliance.lbsdk.debug.action.CRASH_REPORT" />
<action android:name="com.excelliance.kxqp.platform.action.CRASH_REPORT" />
</intent-filter>
</service>
<receiver
android:name="com.excelliance.lbsdk.base.BGReceiver"
android:process=":lebian.base">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
<intent-filter>
<action android:name="com.excelliance.open.action.appstate" />
</intent-filter>
<intent-filter>
<action android:name="com.excelliance.open.action.queryUpdate" />
</intent-filter>
<intent-filter>
<action android:name="com.excelliance.open.action.ss" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MEDIA_MOUNTED" />
<data android:scheme="file" />
</intent-filter>
</receiver>
<service
android:exported="true"
android:name="com.excelliance.lbsdk.base.BaseService"
android:process=":lebian.base" >
<intent-filter>
<action android:name="com.excelliance.lbsdk.action.BaseService" />
</intent-filter>
</service>
<service
android:name="com.excelliance.lbsdk.main.BGService"
android:process=":lebian.dns">
<intent-filter>
<action android:name="com.excelliance.open.action.gameverchk" />
<action android:name="com.excelliance.open.action.apkverchk" />
<action android:name="com.excelliance.open.action.dmchk" />
<action android:name="com.excelliance.open.action.fw" />
<action android:name="com.excelliance.open.action.bwbxdla"/>
</intent-filter>
<intent-filter>
<action android:name="com.excelliance.open.NEXT_CHAPTER" />
<action android:name="com.excelliance.open.action.PLAT_DO" />
</intent-filter>
<intent-filter>
<action android:name="com.excelliance.lbsdk.action.BGService" />
</intent-filter>
</service>
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="partment.update.application:com.excelliance.kxqp.fileprovider"
android:exported="false"
android:process=":lebian.null"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/lebian_file_paths" />
</provider>
<meta-data android:name="lbvmlaunchmode" android:value="HU" />
<activity
android:name="com.excelliance.kxqp.platform.PubTrampolineActivity"
android:theme="@style/Lebian.Theme.TrampolineActivity"
android:taskAffinity=":platform.TrampolineActivity"
android:excludeFromRecents="true"
android:exported="true"
android:process=":lbcore"></activity>
<activity
android:name="com.excelliance.kxqp.platform.TrampolineActivity"
android:theme="@style/Lebian.Theme.TrampolineActivity"
android:taskAffinity=":platform.TrampolineActivity"
android:excludeFromRecents="true"
android:exported="false"
android:process=":lbcore"></activity>
<receiver
android:name="com.excelliance.kxqp.platform.TrampolineReceiver"
android:exported="false"
android:process=":lbcore"></receiver>
<service
android:name="com.excelliance.kxqp.platform.TrampolineService"
android:exported="false"
android:process=":lbcore"></service>
<service
android:name="com.excelliance.kxqp.platform.TrampolineService$EmptyService"
android:exported="false"
android:process=":lbcore"></service>
<service
android:name="com.excelliance.kxqp.platform.JobProxyService"
android:exported="false"
android:permission="android.permission.BIND_JOB_SERVICE"
android:process=":lbcore"></service>
<activity
android:name="com.excelliance.kxqp.platform.ChooserActivity"
android:excludeFromRecents="true"
android:exported="false"
android:finishOnCloseSystemDialogs="true"
android:process=":lbcore"
android:taskAffinity=":platform.settings"
android:theme="@android:style/Theme.Translucent.NoTitleBar"></activity>
<activity
android:name="com.excelliance.kxqp.platform.ChooseTypeAndAccountActivity"
android:exported="false"
android:hardwareAccelerated="true"
android:process=":lbcore"
android:taskAffinity=":platform.settings"
android:theme="@android:style/Theme.Translucent.NoTitleBar"></activity>
<activity
android:name="com.excelliance.kxqp.platform.ChooseAccountTypeActivity"
android:exported="false"
android:hardwareAccelerated="true"
android:process=":lbcore"
android:taskAffinity=":platform.settings"
android:theme="@android:style/Theme.Translucent.NoTitleBar"></activity>
<provider
android:name="com.excelliance.kxqp.platform.PluginManagerProvider"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.PluginManagerProvider"
android:exported="false"
android:process=":lbcore"></provider>
<service
android:name="com.excelliance.kxqp.platform.PluginManagerService"
android:exported="false"
android:process=":lbcore"></service>
<provider
android:name="com.excelliance.lbsdk.LBInitProvider$PCore"
android:authorities="partment.update.application:com.excelliance.kxqp.LBInitProvider.PCore"
android:initOrder="9999"
android:exported="false"
android:process=":lbcore">
</provider>
<provider
android:name="com.excelliance.kxqp.platform.TrampolineProvider"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.TrampolineProvider"
android:exported="true"
android:process=":lbcore">
</provider>
<!--$P00-->
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxy$P00"
android:configChanges="orientation|screenSize"
android:theme="@style/Lebian.Theme.ActivityProxy"></activity>
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxyT$P00"
android:configChanges="orientation|screenSize"
android:theme="@style/Lebian.Theme.ActivityProxyT"></activity>
<service
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ServiceProxy$P00"
android:exported="false"></service>
<provider
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy$P00"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy.P00"
android:exported="false"></provider>
<receiver
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ReceiverProxy$P00"
android:exported="false"></receiver>
<provider
android:name="com.excelliance.lbsdk.LBInitProvider$P00"
android:authorities="partment.update.application:com.excelliance.kxqp.LBInitProvider.P00"
android:initOrder="9999"
android:exported="false">
</provider>
<!--$P01-->
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxy$P01"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P01"
android:theme="@style/Lebian.Theme.ActivityProxy"></activity>
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxyT$P01"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P01"
android:theme="@style/Lebian.Theme.ActivityProxyT"></activity>
<service
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ServiceProxy$P01"
android:exported="false"
android:process=":platform.gameplugin.P01"></service>
<provider
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy$P01"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy.P01"
android:exported="false"
android:process=":platform.gameplugin.P01"></provider>
<receiver
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ReceiverProxy$P01"
android:exported="false"
android:process=":platform.gameplugin.P01"></receiver>
<provider
android:name="com.excelliance.lbsdk.LBInitProvider$P01"
android:authorities="partment.update.application:com.excelliance.kxqp.LBInitProvider.P01"
android:initOrder="9999"
android:exported="false"
android:process=":platform.gameplugin.P01">
</provider>
<!--$P02-->
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxy$P02"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P02"
android:theme="@style/Lebian.Theme.ActivityProxy"></activity>
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxyT$P02"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P02"
android:theme="@style/Lebian.Theme.ActivityProxyT"></activity>
<service
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ServiceProxy$P02"
android:exported="false"
android:process=":platform.gameplugin.P02"></service>
<provider
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy$P02"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy.P02"
android:exported="false"
android:process=":platform.gameplugin.P02"></provider>
<receiver
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ReceiverProxy$P02"
android:exported="false"
android:process=":platform.gameplugin.P02"></receiver>
<provider
android:name="com.excelliance.lbsdk.LBInitProvider$P02"
android:authorities="partment.update.application:com.excelliance.kxqp.LBInitProvider.P02"
android:initOrder="9999"
android:exported="false"
android:process=":platform.gameplugin.P02">
</provider>
<!--$P03-->
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxy$P03"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P03"
android:theme="@style/Lebian.Theme.ActivityProxy"></activity>
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxyT$P03"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P03"
android:theme="@style/Lebian.Theme.ActivityProxyT"></activity>
<service
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ServiceProxy$P03"
android:exported="false"
android:process=":platform.gameplugin.P03"></service>
<provider
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy$P03"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy.P03"
android:exported="false"
android:process=":platform.gameplugin.P03"></provider>
<receiver
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ReceiverProxy$P03"
android:exported="false"
android:process=":platform.gameplugin.P03"></receiver>
<provider
android:name="com.excelliance.lbsdk.LBInitProvider$P03"
android:authorities="partment.update.application:com.excelliance.kxqp.LBInitProvider.P03"
android:initOrder="9999"
android:exported="false"
android:process=":platform.gameplugin.P03">
</provider>
<!--$P04-->
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxy$P04"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P04"
android:theme="@style/Lebian.Theme.ActivityProxy"></activity>
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxyT$P04"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P04"
android:theme="@style/Lebian.Theme.ActivityProxyT"></activity>
<service
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ServiceProxy$P04"
android:exported="false"
android:process=":platform.gameplugin.P04"></service>
<provider
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy$P04"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy.P04"
android:exported="false"
android:process=":platform.gameplugin.P04"></provider>
<receiver
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ReceiverProxy$P04"
android:exported="false"
android:process=":platform.gameplugin.P04"></receiver>
<provider
android:name="com.excelliance.lbsdk.LBInitProvider$P04"
android:authorities="partment.update.application:com.excelliance.kxqp.LBInitProvider.P04"
android:initOrder="9999"
android:exported="false"
android:process=":platform.gameplugin.P04">
</provider>
<!--$P05-->
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxy$P05"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P05"
android:theme="@style/Lebian.Theme.ActivityProxy"></activity>
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxyT$P05"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P05"
android:theme="@style/Lebian.Theme.ActivityProxyT"></activity>
<service
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ServiceProxy$P05"
android:exported="false"
android:process=":platform.gameplugin.P05"></service>
<provider
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy$P05"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy.P05"
android:exported="false"
android:process=":platform.gameplugin.P05"></provider>
<receiver
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ReceiverProxy$P05"
android:exported="false"
android:process=":platform.gameplugin.P05"></receiver>
<provider
android:name="com.excelliance.lbsdk.LBInitProvider$P05"
android:authorities="partment.update.application:com.excelliance.kxqp.LBInitProvider.P05"
android:initOrder="9999"
android:exported="false"
android:process=":platform.gameplugin.P05">
</provider>
<!--$P06-->
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxy$P06"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P06"
android:theme="@style/Lebian.Theme.ActivityProxy"></activity>
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxyT$P06"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P06"
android:theme="@style/Lebian.Theme.ActivityProxyT"></activity>
<service
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ServiceProxy$P06"
android:exported="false"
android:process=":platform.gameplugin.P06"></service>
<provider
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy$P06"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy.P06"
android:exported="false"
android:process=":platform.gameplugin.P06"></provider>
<receiver
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ReceiverProxy$P06"
android:exported="false"
android:process=":platform.gameplugin.P06"></receiver>
<provider
android:name="com.excelliance.lbsdk.LBInitProvider$P06"
android:authorities="partment.update.application:com.excelliance.kxqp.LBInitProvider.P06"
android:initOrder="9999"
android:exported="false"
android:process=":platform.gameplugin.P06">
</provider>
<!--$P07-->
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxy$P07"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P07"
android:theme="@style/Lebian.Theme.ActivityProxy"></activity>
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxyT$P07"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P07"
android:theme="@style/Lebian.Theme.ActivityProxyT"></activity>
<service
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ServiceProxy$P07"
android:exported="false"
android:process=":platform.gameplugin.P07"></service>
<provider
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy$P07"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy.P07"
android:exported="false"
android:process=":platform.gameplugin.P07"></provider>
<receiver
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ReceiverProxy$P07"
android:exported="false"
android:process=":platform.gameplugin.P07"></receiver>
<provider
android:name="com.excelliance.lbsdk.LBInitProvider$P07"
android:authorities="partment.update.application:com.excelliance.kxqp.LBInitProvider.P07"
android:initOrder="9999"
android:exported="false"
android:process=":platform.gameplugin.P07">
</provider>
<!--$P08-->
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxy$P08"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P08"
android:theme="@style/Lebian.Theme.ActivityProxy"></activity>
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxyT$P08"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P08"
android:theme="@style/Lebian.Theme.ActivityProxyT"></activity>
<service
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ServiceProxy$P08"
android:exported="false"
android:process=":platform.gameplugin.P08"></service>
<provider
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy$P08"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy.P08"
android:exported="false"
android:process=":platform.gameplugin.P08"></provider>
<receiver
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ReceiverProxy$P08"
android:exported="false"
android:process=":platform.gameplugin.P08"></receiver>
<provider
android:name="com.excelliance.lbsdk.LBInitProvider$P08"
android:authorities="partment.update.application:com.excelliance.kxqp.LBInitProvider.P08"
android:initOrder="9999"
android:exported="false"
android:process=":platform.gameplugin.P08">
</provider>
<!--$P09-->
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxy$P09"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P09"
android:theme="@style/Lebian.Theme.ActivityProxy"></activity>
<activity
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ActivityProxyT$P09"
android:configChanges="orientation|screenSize"
android:process=":platform.gameplugin.P09"
android:theme="@style/Lebian.Theme.ActivityProxyT"></activity>
<service
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ServiceProxy$P09"
android:exported="false"
android:process=":platform.gameplugin.P09"></service>
<provider
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy$P09"
android:authorities="partment.update.application:com.excelliance.kxqp.platform.proxy.gameplugin.ContentProviderProxy.P09"
android:exported="false"
android:process=":platform.gameplugin.P09"></provider>
<receiver
android:name="com.excelliance.kxqp.platform.proxy.gameplugin.ReceiverProxy$P09"
android:exported="false"
android:process=":platform.gameplugin.P09"></receiver>
<provider
android:name="com.excelliance.lbsdk.LBInitProvider$P09"
android:authorities="partment.update.application:com.excelliance.kxqp.LBInitProvider.P09"
android:initOrder="9999"
android:exported="false"
android:process=":platform.gameplugin.P09">
</provider>
<!-- lebian sdk components end -->
</application>
<supports-screens android:largeScreens="true"
android:smallScreens="true"
android:anyDensity="true"
android:normalScreens="true"/>
</manifest>
4.在需要的地方调用热更新的方法
protected void queryUpdate() {
Log.d("MainActivity", "queryUpdate");
final IQueryUpdateCallback callBack = new IQueryUpdateCallback() {
public void onUpdateResult(int result) {
Log.d("MainActivity", "onResume result=" + result);
if(rt!=null){
rt.setText("result: " +result);
}
}
};
LebianSdk.queryUpdate(this, callBack, null);
}
5.当结果返回2的时候说明sdk集成成功,2:没有更新。后台没有配置,所以会返回2
请求更新结果result说明:
-2:SDK未准备好
-1:请求失败
1:未知错误
2:没有更新
3:有非强更版本
4:有强更版本
tag:自定义标签,服务器可根据该标签自定义升级范围