我基于计时器每隔0.5秒在TextView上设置一些文本.每次,当计时器运行并且设置了文本时,我在控制台中收到此警告消息.
W/StaticLayout:maxLineHeight不应为-1.maxLines:1 lineCount:1
XML代码:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/title_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="12dp"
android:layout_marginRight="12dp"
android:layout_marginTop="12dp"
android:ellipsize="end"
android:maxLines="1"
android:textColor="@color/white"/>
<TextView
android:id="@+id/time_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingEnd="4dp"
android:paddingStart="12dp"
android:textColor="@color/white"
android:textSize="12sp"
tools:text="0:00" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
Java代码:
public void setProgress() {
// setProgress() called every 0.5 seconds
// Hardcoded text
mTimeText.setText("0:05");
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试从支持库的25.3.1版本升级到版本26.X.X,但每次使用较新版本构建项目时都会出现此错误:
Error:(357) Attribute "font" already defined with incompatible format.
Error:(343) Original attribute defined here.
Error:java.util.concurrent.ExecutionException:
com.android.ide.common.process.ProcessException: Error while executing
process /Users/johnsmith/Library/Android/sdk/build-tools/26.0.1/aapt
with arguments {package -f --no-crunch -I ...
Run Code Online (Sandbox Code Playgroud)
我尝试过清洁和重建.我也试过使缓存失效并重新启动Android Studio.
该应用程序可以使用25.3.1支持库的版本构建.我正在使用Android Studio 3.0 Beta 2和3.0.0-beta2Android Gradle插件版本.
向YouTube Android Player API库工程师提交错误:请参阅android-youtube-api标记
在过去一周半的过程中,我注意到这个奇怪的BadParcelableException在我们的应用程序中稳步增长,并将其钉在了Android的Android新版本上.
如果您的应用正在播放YouTube视频,将您的应用带到后台,强制停止Youtube应用并再次恢复您的应用,则会发生此崩溃.在Youtube版本12.19.56上可以重现崩溃.还在较旧的YouTube版本12.05.21上进行了测试,但崩溃并不存在.
堆栈跟踪:
main Exception: Unable to start activity ComponentInfo{com.myapp.MainActivity}:
android.os.BadParcelableException: ClassNotFoundException when unmarshalling: asc
Stack: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.myapp.MainActivity}:
android.os.BadParcelableException: ClassNotFoundException when unmarshalling: asc
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2666)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2727)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1478)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6121)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779) Caused by:
android.os.BadParcelableException: ClassNotFoundException when unmarshalling: asc
at android.os.Parcel.readParcelableCreator(Parcel.java:2536)
at android.os.Parcel.readParcelable(Parcel.java:2462)
at android.os.Parcel.readValue(Parcel.java:2365)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2813)
at android.os.Parcel.readSparseArray(Parcel.java:2068)
at android.os.Parcel.readValue(Parcel.java:2422)
at android.os.Parcel.readArrayMapInternal(Parcel.java:2732)
at android.os.BaseBundle.unparcel(BaseBundle.java:269)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:934)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1208)
at …Run Code Online (Sandbox Code Playgroud) youtube android parcelable badparcelableexception android-youtube-api
我有一个测试,当没有网络连接时应该测试错误信息的可见性,但我不知道如何让它显示?
@RunWith(AndroidJUnit4.class)
@LargeTest
public class PostsActivityTest {
@Rule
public final ActivityRule<PostsActivity> rule = new ActivityRule<>(PostsActivity.class);
PostsActivity postsActivity;
@Before
public void init() {
postsActivity = rule.get();
}
@Test
public void testShouldShowErrorViewOnNetworkError() {
postsActivity.showErrorMsg(); // doesn't work
onView(withId(R.id.error_view)).check(matches(isDisplayed()));
}
Run Code Online (Sandbox Code Playgroud)
在打电话的时候,postsActivity.showErrorMsg();我得到一个崩溃声明android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
这是showErrorMsg()在PostsActivity:
public void showErrorMsg() {
errorView.setVisibility(View.VISIBLE);
}
Run Code Online (Sandbox Code Playgroud)
任何帮助赞赏.谢谢!
编辑:使用runOnUiThread似乎工作.如果这是首选方式,我不知道.
@Test
public void testShouldShowErrorViewOnNetworkError() {
postsActivity.runOnUiThread(new Runnable() {
@Override
public void …Run Code Online (Sandbox Code Playgroud) 我正在尝试实现 Android 一键登录,但无法在此处显示此对话框:
我不断收到消息:com.google.android.gms.common.api.ApiException: 16: Skipping password saving since the user is likely prompted with Android Autofill.
我怎样才能解决这个问题?
代码:
private fun saveCredentials(email: String, password: String) {
val signInPassword = SignInPassword(email, password)
val savePasswordRequest =
SavePasswordRequest.builder().setSignInPassword(signInPassword).build()
// Show the password save dialog
Identity.getCredentialSavingClient(this)
.savePassword(savePasswordRequest)
.addOnFailureListener {e ->
Log.d(TAG, Log.getStackTraceString(e))
}
.addOnSuccessListener { result ->
startIntentSenderForResult(
result.pendingIntent.intentSender,
REQUEST_CODE_SAVE_CREDENTIALS,
null, // fillInIntent
0, // flagsMask
0, // flagsValues
0, // extraFlags
null) // options
}
}
Run Code Online (Sandbox Code Playgroud)
文档:https://developers.google.com/identity/one-tap/android/save-passwords
所以我在访问库中的appcompat图标时遇到了麻烦,我不知道为什么.
// build.gradle
`compile 'com.android.support:appcompat-v7:23.2.0'`
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用此图标: @drawable/abc_ic_clear_mtrl_alpha
// styles.xml
<style name="MyTheme" parent="Theme.AppCompat.Light">
<item name="homeAsUpIndicator">@drawable/abc_ic_clear_mtrl_alpha</item>
</style>
Run Code Online (Sandbox Code Playgroud)
但我得到这个错误: Error:(12, 5) No resource found that matches the given name (at 'homeAsUpIndicator' with value '@drawable/abc_ic_clear_mtrl_alpha').
任何帮助表示赞赏谢谢.
我有一个应用程序在chromebook上遇到了一些问题,并希望停止向这些设备提供该应用程序。防止Chromebook获得应用程序的最佳方法是什么?
从文档看来,似乎有以下解决方案:https : //developer.android.com/topic/arc/manifest.html
1)在Google Play控制台中排除特定设备。
2)通过显式声明将android.hardware.touchscreen声明为安装应用所需的设备来过滤不带触摸屏硬件的设备。
我身上没有Chromebook,因此我无法真正测试。这些是最好的方法吗?
android ×7
chromebook ×1
gradle ×1
icons ×1
parcelable ×1
resources ×1
textview ×1
unit-testing ×1
youtube ×1