【发布时间】:2018-02-20 19:34:36
【问题描述】:
我正在尝试在 DropBox Android SDK 中运行示例“DBRoulette”:
https://www.dropbox.com/developers-v1/core/sdks/android
当我在 Android Studio (Build --> Rebuild Project) 中构建项目时,我没有收到任何错误,但是当我尝试在我的设备上运行代码时(来自 Android Studio)我收到错误:
“找不到属性‘android:testOnly’”
我可以看到这条线:
android:testOnly="true"
在“AndroidManifest.xml”文件中,但据我了解,我无法编辑此文件并将其更改为testOnly=false。
有什么问题?为什么会出现此错误?
(如果很重要,我使用的是 Gradle-4.5.1)
这是我收到的完整构建消息:
Information:Gradle tasks [:app:assembleDebug]
D:\AndroidProjects\DropboxSDK-1.6.3\DBRouletteTest\app\build\intermediates\manifests\instant-run\debug\AndroidManifest.xml
Error:(12) error: attribute 'android:testOnly' not found.
Error:(12) attribute 'android:testOnly' not found.
Error:failed processing manifest.
Error:java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Information:BUILD FAILED in 0s
Information:6 errors
Information:0 warnings
Information:See complete output in console
这里是 AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.dropbox.android.sample"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="3" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application
android:debuggable="true"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:testOnly="true" >
<activity
android:name="com.dropbox.android.sample.DBRoulette"
android:configChanges="orientation|keyboard"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.dropbox.client2.android.AuthActivity"
android:configChanges="orientation|keyboard"
android:launchMode="singleTask" >
<intent-filter>
<!-- Change this to be db- followed by your app key -->
<data android:scheme="db-CHANGE_ME" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<provider
android:name="com.android.tools.ir.server.InstantRunContentProvider"
android:authorities="com.dropbox.android.sample.com.android.tools.ir.server.InstantRunContentProvider"
android:multiprocess="true" />
</application>
</manifest>
【问题讨论】:
-
顺便说一句,与问题本身无关,根据the page 顶部的警告,该示例应用程序适用于 Dropbox API v1,该应用程序现已停用。您应该改用the Dropbox API v2 Java SDK。还有an example Android for that。
标签: android android-studio sdk runtime dropbox