android studio 导入模块SDK 以及该模块中继承application的类与原工程继承application的类存在冲突 解决方法
android studio 导入模块SDK 以及该模块中继承application的类与原工程继承application的类存在冲突 解决方法
- 导入某修改后的海康视频SDK(老师给的),并修改相关文件
- 问题1:错误:需要常量表达式
- 问题2:video模块中的继承application的类与主工程中继承application的类发生冲突
新导入的工程可能存在路径问题,不太懂,后续明白会补充。总之需要先Rebuild Project然后可正常运行。
导入某修改后的海康视频SDK(老师给的),并修改相关文件
选择准备好的模块:File-New-import Module导入模块
给新模块改新名字,本例用video
引入依赖关系:File-Project Structure-app-Dependencies-Module dependency
选择video,然后点击两个OK分别找到APP和video模块的 清单文件AndroidManifest.xml和 build.gradle文件
准备修改这四个文件
修改本工程APP的AndroidManifest.xml
添加语句xmlns:tools="http://schemas.android.com/tools"
添加语句tools:replace="android:icon,android:theme,android:name" 也可能添加
tools:replace=“android:icon,android:theme”
具体要看和video demo重复的地方
修改video模块的AndroidManifest.xml
注释代码<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" />
现在的版本已经不支持把它写在清单文件,应写在build.gradle中,本例不用改动其他只需注释该部分
修改本工程APP的build.gradle文件
在dependencies中加入模块的依赖关系compile project(':video')
修改video模块的build.gradle文件
注释apply plugin: 'com.android.application'
更正为apply plugin: 'com.android.library'
注释applicationId "com.hikvision.sdk.demo"
原代码:
apply plugin: 'com.android.application'android {compileSdkVersion 23buildToolsVersion "23.0.3"defaultConfig {``applicationId "com.hikvision.sdk.demo"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}}lintOptions {abortOnError false}
}dependencies {compile fileTree(include: ['*.jar'], dir: 'libs')// compile project(':ivms_8700_sdk_library')
}
更正后:
//apply plugin: 'com.android.application'
apply plugin: 'com.android.library'android {compileSdkVersion 28buildToolsVersion "28.0.3"defaultConfig {//applicationId "com.hikvision.sdk.demo"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}}lintOptions {abortOnError false}
}dependencies {compile fileTree(include: ['*.jar'], dir: 'libs')// compile project(':ivms_8700_sdk_library')
}
问题1:错误:需要常量表达式
Compilation failed; see the compiler error output for details.
**解决方法:**点击错误,进入代码,按Alt + Enter选择Replace ‘switch ’with 'if解决
问题2:video模块中的继承application的类与主工程中继承application的类发生冲突
此时程序只调用主APP的继承application的类,而video中的没有调用,导致视频SDK没有初始化
- 找不到包
**解决方法:**让主程序的类不再继承application,去继承video模块中的继承了application的类,清单文件不变,还是先调用主程序的类,这样video模块中的类也会自动执行
简言之:原本applicationOne和applicationTwo 继承application,现在applicationOne继承applicationTwo,applicationTwo还是继承application,主清单中不变还是调applicationOne
- 改正后出现了找不到.so文件的问题
**解决方法:**把video模块中的三个.so文件复制到主程序libs中
D:\Android\newnewnew\HTDJC3.41\video\src\main\jniLibs\armeabi-v7a
D:\Android\newnewnew\HTDJC3.41\app\libs\x86
rebuild工程 重新运行
android studio 导入模块SDK 以及该模块中继承application的类与原工程继承application的类存在冲突 解决方法相关推荐
- Android Studio导入第三方sdk
1.下载好第三方sdk 2.切换为Project 3.将jar包和.so文件加入项目的libs文件夹下 4.打开该项目的build.gradle文件加入以下代码并重新build项目 sourceSet ...
- 使用 Android Studio 跑新浪微博SDK Demo遇到的问题及解决
概述 这是新浪微博官方 Android SDK Demo 使用 Android Studio 导入.编译并运行通过的版本. 源码:WeiboSdkDemo 官方项目请点击: weibo_android ...
- Android Studio 导入 Android 系统模块并编译和调试
FAQ: AS导入系统模块源码,并且能够编译调试,正常查看java doc ???? Android AOSP基础(五)Android Studio调试系统源码的三种方式 http://liuwang ...
- 使用Android Studio导入安卓源码
1 背景 这篇文章主要说明的是用它来看源码的相关配置(该实例依据官方源码进行配置说明).在android源码中发现有一个development/tools/idegen目录,查了一下发现是生成IDE的 ...
- Android AOSP基础(四)Source Insight和Android Studio导入系统源码
本文首发于微信公众号「刘望舒」 关联系列 Android AOSP基础系列 Android系统启动系列 前言 在上一篇文章Android AOSP基础(三)Android系统源码的整编和单编中,我们对 ...
- Android笔记 - android studio导入源码
前提 安装好android studio 拉好代码并并编译OK 编译源码idegen模块及生成AS配置文件(*.ipr) 在开始编译idegen模块前,需要先全局编译出out目录及相关文件吧,我们通过 ...
- Android studio导入第三方库的各种方法和eclipse的导入方式对比
1.1.Eclipse IDE 短信SDK使用项目依赖的方式完成集成.具体步骤如下: 1.复制"SMSSDK"目录到您自己项目的同一目录下,并将其导入到Eclipse中(查看视频教 ...
- Android studio接入高德SDK(1)--获取地址信息
1.创建一个Empty Activity 的应用项目 a.File->New->New Project b.选择Phone and Table -> Empty Activity - ...
- Android Studio导入Eclipse项目的两种方法
Android Studio导入Eclipse项目有两种方法,一种是直接把Eclipse项目导入Android Studio,另一种是在Eclipse项目里面进行转换,然后再导入Android Stu ...
最新文章
- Unity之Math等方法的使用
- 使用Nacos项目jar包启动抛出的yml异常
- php 实现两变量值对换,PHP互换两个变量值的方法(不用第三变量)
- uv4:you are not logged in as an administrator
- 2021新乡市铁一中高考成绩查询,2021铁一中中考录取分数线预测
- React中最基础的jsx语法
- socket.io html5 聊天,WebSocket探讨之——socket.io搭建多聊天室
- Skype协议分析[0]_安装Skype
- SaaSpace:最好的免费网络安全工具
- 区块链开发用什么语言好?
- AngularJs $http.post 数据后台获取不到数据问题 的解决过程
- 手机微信wifi怎么连接到服务器地址,出门在外用手机流量太贵,教你一招,用微信就能连接附近wifi...
- Matlab图像处理笔记--图像修复
- 新买的显示器怎么测试软件,新买的电视如何检测屏幕?记住这个方法
- 安装Windows11体验WSA,安装常用Android应用测试
- sis防屏蔽程序_屏蔽机房设计方案知识
- EPICS记录参数--Event记录(event)
- 国网专家教你秒懂各种输电线路
- 张宇1000题线性代数 第八章 相似理论
- xshell 使用pem文件登录