Articles of android studio 3.0

是否可以在模拟设备上发现并运行第三方Android Instant Apps?

我目前正在尝试了解Android即时应用程序。 由于我没有任何支持它们的真实设备,我使用的是模拟器(来自Android Studio 3.0 Canary 9)。 我可以在我模拟的Nexus 5x(使用Play商店)上成功运行“玩具”即时应用程序( 就像这样 ),所以我相信我的开发环境配置正确。 但是,我很想知道第三方应用程序的发现过程,并了解用户体验是什么样的。 由于缺乏合适的设备,我使用模拟的Chrome浏览器搜索启用了即时应用的网站(如Stack Exchange)。 但这些搜索只给我通常的网站(不是即时应用程序)。 我非常感兴趣地阅读这篇文章 ,因为它似乎表明这应该有效。 但是,这些答案似乎对我没有帮助。 我在澳大利亚,应该是支持Instant Apps的国家之一 。 正如在一个答案中所建议的那样,我尝试发送应该在电子邮件中的即时应用程序中打开然后单击它们的链接,但它仍然只是将我发送到浏览器链接。 关于DALvalidation的答案很有意思,但在浏览器中打开链接时似乎不适用? API 24和API 26模拟设备(两者都包括Play商店)目前处于不同的状态,可能是因为我一直在尝试各种技巧来使其工作。 (TLDR:没有什么对我有用。) 在API 24模拟设备上,如果我输入adb shell pm list packages grep “com.google.android.instantapps.supervisor”那么它输出package:com.google.android.instantapps.supervisor作为一个答案建议(但它仍然没有不行。 API 24设备已安装Google Play services for Instant Apps (version 1.9-sdk-155682639) 。 API 24设备在屏幕顶部显示“闪电”通知,说“开发模式有效”: URLs will be routed to Dev Manager in order […]

Android Studio 3.0 annotationProcessor

我尝试构建项目后出现以下错误: Error:android-apt plugin is incompatible with the Android Gradle plugin. Please use ‘annotationProcessor’ configuration instead. 我尝试在每次implementation后添加annotationProcessor ‘…..’但没有成功摆脱错误。 将android studio升级到最新版本(3.0)后会发生这种情况。 编辑: 在defaultConfig中添加includeCompileClasspath true无效: javaCompileOptions { annotationProcessorOptions { includeCompileClasspath true } } 有解决方案?

当我尝试安装android studio并运行我的虚拟设备时,我使用Ubuntu 17.4它会给出这些错误

任何人都可以帮忙吗? 我不能在Ubuntu上运行这个Android虚拟设备吗? 2:24 PM Executing tasks: [:app:assembleDebug] 2:24 PM Emulator: libGL error: unable to load driver: i965_dri.so 2:24 PM Emulator: libGL error: driver pointer missing 2:24 PM Emulator: libGL error: failed to load driver: i965 2:24 PM Emulator: libGL error: unable to load driver: i965_dri.so 2:24 PM Emulator: libGL error: driver pointer missing 2:24 PM […]

使用Android Studio 3.0 Java 8内置function替换Retrolambda

在我的项目中,我使用的是受欢迎的图书馆retrolambda 。 我刚刚下载了新的Android Studio 3.0 Canary 1。 我已经更新了我的项目以使用Gradle等新版本。一切都很好。 Android Studio 3中的新function是为了支持某些Java8function而构建的。 新的AS3建议删除retrolambda并使用这些function。 我删除了retrolambda,Gradle构建成功但是应用程序崩溃了这个错误(在有lambda的地方) E/UncaughtException: java.lang.NoSuchMethodError: No static method lambda$replace$2 我在我的项目中使用RxJava2。 我不确定这与它有关,但在我看来,Java8的内置function似乎无法正常工作。 也许我需要在“某个地方”设置一些东西? 我的项目设置 我的Gradle文件 根项目 dependencies { classpath ‘com.android.tools.build:gradle:3.0.0-alpha1’ classpath ‘com.google.gms:google-services:3.0.0’ //classpath ‘me.tatarka:gradle-retrolambda:3.6.1’ } 应用模块 buildscript { repositories { jcenter() } dependencies { classpath ‘com.jakewharton.hugo:hugo-plugin:1.2.1’ classpath ‘com.jakewharton:butterknife-gradle-plugin:8.5.1’ } } repositories { mavenCentral() maven { url […]

Android Studio 3中反应生成的资源问题

我最近升级到Android Studio 3 gradle plugin: 3.0.0-beta2 gradle: 4.1 在我们的项目中,我们使用:react-native“:”0.46.4“与codepush插件 。 建造: gradlew assembleStagingDebug 工作得很好,但一旦我尝试建立生产: gradlew assembleProductionRelease 我得到一个错误,该错误是由processProductinoReleaseResources任务中的react创建的资源引起的: Issues: – ERROR: /Users/user/react/android/app/build/intermediates/res/merged/production/release/drawable-hdpi/node_modules_reactnavigation_src_views_assets_backicon.png uncompiled PNG file passed as argument. Must be compiled first into .flat file. – ERROR: failed parsing overlays at com.android.builder.internal.aapt.v2.AaptV2Jni.buildException(AaptV2Jni.java:154) 在我对这个问题的征服中,我尝试了禁用proguard,如: buildTypes { release { debuggable true minifyEnabled false shrinkResources false } debug { […]

无法在Android Studio 3.0 Canary 1下编译

我尝试在AS 3.0 Canary 1下编译我的Android项目(它在AS 2.3.2稳定版本上运行正常)但失败并出现以下错误: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ‘:app:packageInstantRunResourcesUatGoogleDebug’. > com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor; * Try: Run with –info or –debug option to get more log output. * Exception is: org.gradle.api.tasks.TaskExecutionException: Execution failed for task ‘:app:packageInstantRunResourcesUatGoogleDebug’. at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:98) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:68) at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:60) at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54) at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58) at […]

以某种方式使用错误的JDK(?)构建Android应用程序

我最近更新了Android Studio 3的Android项目。我想支持Java 8语言function,因此在build.gradle中添加了以下内容: compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } 然后我在Android 8.0.0设备上运行我的应用程序。 在运行时我看到了 java.lang.NoSuchMethodError: No virtual method keySet()Ljava/util/concurrent/ConcurrentHashMap$KeySetView; in class Ljava/util/concurrent/ConcurrentHashMap; or its super classes (declaration of ‘java.util.concurrent.ConcurrentHashMap’ appears in /system/framework/core-oj.jar) 我收集这是因为keySet()的签名在Java 8中从返回Set更改为返回KeySetView 。 导致exception的行如下所示: for (Long id : mSomeMap.keySet()) KeySetView实现了Set ,它肯定是Iterable ,所以无论这行是被解释为Java 7还是Java 8,我都认为它会以任何方式工作。 我对Java基础知识的理解是粗略的 – 这里发生了什么? 更新 到目前为止,我的不明白是: 虽然Android现在支持一些Java 8语言function,但它的API与Jav​​a 8不同。特别是,Android的ConcurrentHashMap.keySet()返回一个Set ,而ConcurrentHashMap.keySet()的Java […]

Android Studio 3.1 Canary 3上的Gradle sync错误

在将Android Studio更新到3.1 Canary 3之后,嘿同事我刚刚创建了新项目,但是gradle同步失败了: 错误:com.android.tools.idea.gradle.project.model.AndroidModuleModel.getMainArtifact()LCOM /安卓/工具/主意/ gradle产出/项目/模型/ IDE /安卓/ IdeAndroidArtifact; com.android.tools.idea.gradle .project.model.AndroidModuleModel.getMainArtifact()LCOM /安卓/工具/主意/ gradle产出/项目/模型/ IDE /安卓/ IdeAndroidArtifact; 我的gradle文件是: > buildscript { > ext.kotlin_version = ‘1.2.0-rc-39’ > repositories { > google() > jcenter() > maven { url “https://dl.bintray.com/kotlin/kotlin-dev”} > } > dependencies { > classpath ‘com.android.tools.build:gradle:3.1.0-alpha03’ > classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version” > classpath ‘com.google.gms:google-services:3.1.0’ > } } > […]

Android Studio 3 – 可以拍摄屏幕截图或录制屏幕吗?

在最新版本的Android Studio中,android监视器已更改为android profiler。 Android分析器它很棒,但我没有看到任何选项来截取屏幕或记录设备屏幕。 所以我的问题是现在在哪里捕捉选项?

无法解决Android Studio新项目中的com.android.support:appcompat-v7:26.1.0

我知道这个问题: 无法解决:com.android.support:cardview-v7:26.0.0 android 无法解析com.android.support:appcompat-v7:26.1.0 [重复] 我读过这些文件: 迁移到Gradle 3.0.0的Android插件 迁移到Android 8.0 所以我发布这个问题,认为它不是重复的。 我安装了Android Studio 3.0.1。 之前我没有任何以前的版本,我开始了一个新项目。 Gradle文件中的每个设置都是由Android Studio自己设置的,我已经全部检查过了。 这些是文件内容: build.gradle(模块:app) apply plugin: ‘com.android.application’ android { compileSdkVersion 26 defaultConfig { applicationId “com.example.administrator.as301test” minSdkVersion 16 targetSdkVersion 26 versionCode 1 versionName “1.0” testInstrumentationRunner “android.support.test.runner.AndroidJUnitRunner” } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’ } } } dependencies { […]