我正在开发一个Android库项目,在默认的src/main/AndroidManifest.xml中,MainActivity是启动器活动.
为了别的原因,我创造了产品口味.是的,如果我想在不同的产品口味中触发/显示不同的活动炎,它是完美的.不过,我想保持默认的启动活动从的src/main /文件夹,而登录其他口味的活动为新的发射活动.因此,对于不同的产品风格,我可以有不同的启动器活动,从中我仍然可以在src/main /中启动原始的"启动器"活动.
有人可以告诉我如何实现这一目标吗?非常感谢.
笔记:
if (BuildConfig.FLAVOR.equals("flavorName"))不希望向原始启动器活动添加代码.因为我不想从别人那里修改生产代码(这是一个库项目).
我试过manifestmerger和tools:replace,但好像它不工作intent-filter(我注意到,对于意图过滤器的元素融合政策总是).
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
如果这可能有效,请您指导我如何使其工作?谢谢.
android android-manifest android-intent android-productflavors
我试图从终端创建一个视频,但我不能成功.它像这样给终端带来错误.
adb shell screenrecord /sdcard/screenshotyyyy.mp4
ERROR: unable to create encoder input surface (err=-38)
WARNING: failed at 320x480, retrying at 720x1280
ERROR: unable to create encoder input surface (err=-38)
Run Code Online (Sandbox Code Playgroud) android video-streaming adb video-recording android-4.4-kitkat
试图将我的Android项目升级到CircleCI 2.0.一切都很好,但无法使用模拟器运行Android UI测试.
com.android.builder.testing.api.DeviceException: No connected devices!sdkmanager "system-images;android-22;default;armeabi-v7a" && echo "no" | avdmanager create avd -n test -k "system-images;android-22;default;armeabi-v7a" && (emulator64-arm -avd test -noaudio -no-boot-anim -no-window -accel on) &adb devices 没有返回设备:(使用uiautomator时,takeScreenshot(File storePath)无论我传入什么参数,总是返回false.
我试图给它们之一,new File(dir_name, file_name)或者 new File(file_name)它们都不起作用(当然,如果dir_name不存在,首先是mkdir).
每次它只返回false并且/ data/local/tmp / on模拟器为空.
顺便说一下,我不认为这是一个权限问题,因为尝试类似dumpWindowHierarchy可能会在那里生成转储文件.
在此先感谢您的帮助.
我有一个在OpenStack中运行的Ubuntu Xenial VM,我从https://developer.android.com/studio/index.html下载了最新的Android SDK工具(tools_r25.2.3-linux.zip).一切都配置得很好:
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64ANDROID_HOME=<ANDROID_SDK_PATH>PATH=${PATH}:${ANDROID_HOME}echo "sdk.dir=<ANDROID_SDK_PATH>" > <MY_ANDROID_PROJECT_PATH>/local.properties但是当尝试执行任务:时./gradlew clean,会发生错误:
Preparing "Install Android SDK Build-Tools 25".
Warning: Trying to install into ${ANDROID_HOME}/build-tools/25.0.0/ but package "Android SDK Tools 25.2.4" already exists at ${ANDROID_HOME}. It must be deleted or moved away before installing into a child directory.
Preparing "Install Android SDK Platform 25".
Warning: Trying to install into ${ANDROID_HOME}/platforms/android-25/ but package "Android SDK Tools 25.2.4" already exists at ${ANDROID_HOME}. It must be deleted …Run Code Online (Sandbox Code Playgroud) 我想知道是否可以通过网络连接Android Studio调试器。当前,我在计算机1上生成一个APK,在网络上推送并使用adb进行安装。
现在,我想在我的Android Studio上使用调试器,所以我想可以在另一台计算机上安装的ADB上连接Android Studio吗?如果是,您有教程吗?
我创建了一个架构以更好地理解:
(我不想在计算机1上使用ADB)
谢谢
当我尝试为我的Android项目升级mockito时,从2.8.47升级到2.13.3,我收到一个错误:
Error:Failed to resolve: org.mockito:mockito-core:2.13.3
Run Code Online (Sandbox Code Playgroud)
我所有的gradle配置都是正确的,与2.8.47完美配合(下面我只用最新版本替换mockito版本).
allprojects {
repositories {
jcenter()
mavenCentral()
maven {
url "https://maven.google.com"
}
}
}
ext {
mockitoVersion = "2.13.3"
}
dependencies {
testImplementation "org.mockito:mockito-core:${mockitoVersion}"
}
Run Code Online (Sandbox Code Playgroud)
在进行gradle同步时,你可以在Android Studio的底部看到,有一些日志:
Gradle: Download https://maven.google.com/org/mockito/mockito-core/2.13.3/mockito-core-2.13.3.pom
Run Code Online (Sandbox Code Playgroud)