Articles of java的

在Firebase侦听器中设置Singleton属性值

我目前正在测试Firebase以及我计划在整个应用程序生命周期中使用的Singleton模型。 我现在陷入了一些似乎非常微不足道的事情,但我无法理解我的生活。 我有一个我使用的模型样本:firebase中的书签。 public class BookSingleton { private static BookSingleton model; private ArrayList bookmarks = new ArrayList(); public static BookSingleton getModel() { if (model == null) { throw new IllegalStateException(“The model has not been initialised yet.”); } return model; } public ArrayList theBookmarkList() { return this.bookmarks; } public void setBookmarks(ArrayList bookmarks){ this.bookmarks = bookmarks; } […]

如何重新抛出exception

在我的onCreate()中,我设置了一个UncaughtException处理程序,如下所示: Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() { @Override public void uncaughtException(Thread thread, Throwable throwable) { Log.e(getMethodName(2), “uncaughtException”, throwable); android.os.Process.killProcess(android.os.Process.myPid()); } }); 它工作正常,但我想恢复系统向用户显示强制关闭对话框的默认行为。 如果我尝试用throw throwable替换KillProcess()调用,编译器会抱怨我需要用try / catch包围它。 如果我用try / catch包围它: Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() { @Override public void uncaughtException(Thread thread, Throwable throwable) { try { Log.e(getMethodName(2), “uncaughtException”, throwable); throw throwable; } catch (Exception e) { } finally { } } }); […]

在Android Studio中包含Java模块作为依赖项时错误的Java编译器

我的Android Studio项目中有一个java模块,它是Android模块的依赖项。 我在构建时出现问题,出现以下exception。 Error:Execution failed for task ‘:myApplication:preDexDebug’. > com.android.ide.common.internal.LoggedErrorException: Failed to run command: /Applications/Android Studio.app/sdk/build-tools/android-4.4W/dx –dex –output ~/myapplication-app-android/dev/biketracks-app-android/bikeTracks/build/intermediates/pre-dexed/debug/coreUtilities-6ee7e0aafa5a6db72b2acb078f065e51c43124c2.jar ~/myapplication-app-android/dev/myapplication-app-android/libs/coreUtilities/build/libs/coreUtilities.jar Error Code: 1 Output: UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000) at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472) at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406) at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388) at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251) at com.android.dx.command.dexer.Main.processClass(Main.java:665) at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634) at com.android.dx.command.dexer.Main.access$600(Main.java:78) at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572) at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284) at […]

水平或垂直翻转位图图像

通过使用此代码,我们可以旋转图像: public static Bitmap RotateBitmap(Bitmap source, float angle) { Matrix matrix = new Matrix(); matrix.postRotate(angle); return Bitmap.createBitmap(source, 0, 0, source.getWidth(), source.getHeight(), matrix, true); } 但是,我们如何水平或垂直翻转图像?

错误“在Junit测试中没有公共TestCase(String name)或TestCase()

我是junit test android的初学者。 我正在关注本教程,但收到此错误 junit.framework.AssertionFailedError: Class com.example.projectfortest.test.MainActivityTest has no public constructor TestCase(String name) or TestCase() at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:191) at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:176) at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:554) at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1701) 这是我的代码: public class MainActivityTest extends ActivityInstrumentationTestCase2 { private MainActivity mMainActivity; private TextView mFirstTestText; private String expected, actual; public MainActivityTest(Class activityClass) { super(activityClass); } @Override protected void setUp() throws Exception { super.setUp(); mMainActivity […]

Android一旦呈现就获得webview内容的高度

我试图在渲染后获得webview的高度。 它总是返回null,我尝试过getHeight , getMeasuredHeight , getContentHeight ,它总是返回null。 布局: 活动 public class TestActivity extends MenuActivity { private final static String TAG = “HearingTest”; private String urlTopContent; private WebView topContent; private boolean mMoreInfoTop = true; private int mYdelta = 0; private int mBottomOffset = 0; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.right_hearing_test); String topHtml = this.getString(R.string.top_content); […]

Android:你如何点击其他活动?

我正试图按顺序进入第三个活动。 从主要活动到第二个活动工作正常,但是当我尝试从第二个活动转到第三个活动时,应用程序崩溃了。 这是我的第二个活动的代码: package com.example.helloandroid; import android.app.Activity; //other imports here public class Game extends Activity implements OnClickListener { private static final String TAG = “Matrix”; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.setContentView(R.layout.matrix); View doneButton = findViewById(R.id.done_button); doneButton.setOnClickListener(this); } public void onClick(View v) { switch (v.getId()) { case R.id.done_button: Intent k = new Intent(this, GameTwo.class); […]

Gridview根据滚动视图中的实际高度显示

我想创建一个像表一样的gridview。 例如,网格的大小将增加,这将使gridview更高。 我希望网格视图显示所有内容,并在有其他内容时扩展高度,而不是隐藏额外的内容 怎么实现这个? 谢谢

IntelliJ Idea给出了java.lang.OutOfMemoryError:即使增加堆大小,Java堆空间也会出错

我在IntelliJ Idea上编译我的android项目时反复得到了java.lang.OutOfMemoryError: Java heap space错误。 我通过按照此处的链接增加了我的Java堆空间但是没有解决问题。 有趣的是,有时我的应用程序将编译,并且在其他时候由于Java堆空间错误,应用程序将无法编译。 即使我没有对应用程序进行任何更改,它也会有时编译并且有时会失败。 知道如何解决这个问题吗? 我正在编译一个android项目,可能是由于我拥有的大量资源(可绘制的hdpi,xhdpi,xxhdpi,large-hdpi,large-xhdpi,large-xxhdpi)? 但话说回来,就像我说的那样,它有时会编译,有时则不然。 我每次尝试编译大约10次,幸运的是它会成功一次。 这是错误: 内部错误:(java.lang.OutOfMemoryError)Java堆空间java.lang.OutOfMemoryError:java.util.Arrays.copyOf(Arrays.java:2271)中的Java堆空间,位于com.intellij.util.io.UnsyncByteArrayOutputStream.write( UnsyncByteArrayOutputStream.java:52)位于com.intellij.util.io.IOUtil的java.io.FilterOutputStream.write(FilterOutputStream.java:97)的com.intellij.util.io.DataOutputStream.write(DataOutputStream.java:34)位于org.jetbrains.jps.incremental.storage.OneToManyPathsMapping $ PathCollectionExternalizer.save(OneToManyPathsMapping)的org.jetbrains.jps.incremental.storage.OneToManyPathsMapping $ PathCollectionExternalizer.save(OneToManyPathsMapping.java:87)中的.writeString(IOUtil.java:63) .java:84)在com.intellij的com.intellij.util.io.PersistentHashMap.doAppendData(PersistentHashMap.java:371)的org.jetbrains.jps.incremental.storage.AbstractStateStorage $ 1.append(AbstractStateStorage.java:103) org.jetbrains.jps.incremental.storage中的.util.io.PersistentHashMap.appendData(PersistentHashMap.java:358)。 位于org.jetbrains.jps.incremental.storage.SourceToOutputMappingImpl.appendOutput的Org.jetbrains.jps.incremental.storage.OneToManyPathsMapping.appendData(OneToManyPathsMapping.java:50)中的AbstractStateStorage.appendData(AbstractStateStorage.java:101)(SourceToOutputMappingImpl.java: 50)在org.jetbrains.jps.android的org.jetbrains.jil.builders.impl.BuildOutputConsumerImpl.registerOutputFile(BuildOutputConsumerImpl.java:65)org.jetbrains.jps.android.AndroidResourceCachingBuilder.runPngCaching(AndroidResourceCachingBuilder.java:126)org.jetbrains.jps.android .AndroidResourceCachingBuilder.build(AndroidResourceCachingBuilder.java:48)org.jetbrains.jps.android.AndroidResourceCachingBuilder.build(AndroidResourceCachingBuilder.java:32)at org.jetbrains.jps.incremental.BuildOperations.buildTarget(BuildOperations.java:100)at at org.jetbrains.jps.incremental.IncProjectBuilder.runBuildersForChunk(IncProjectBuilder.java:744)org.jetbrains.jps.incremental.IncProjectBuilder.buildTargetsChunk(IncProjectBuilder.java:770)at Org.jetbrains.jps.incremental.IncProjectBuilder.buildChunkIfAffected(IncProjectBuilder.java:702)org.jetbrains.jps.incremental.IncProjectBuilder.buildChunks(IncProjectBuilder.java:523)org.jetbrains.jps.incremental.IncProjectBuilder.runBuild( IncProjectBuilder.java:314)org.jetbrains.jps.incremental.IncProjectBuilder.build(IncProjectBuilder.java:179)org.jetbrains.jps.cmdline.BuildRunner.runBuild(BuildRunner.java:129)atg.jetbrains.jps .gdline.BuildSession.runBuild(BuildSession.java:220)位于org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:112)org.jetbrains.jps.cmdline.BuildMain $ MyMessageHandler $ 1.run(BuildMain。 java:132)atg.jetbrains.jps.service.impl.SharedThreadPoolImpl $ 1.run(SharedThreadPoolImpl.java:41)at java.util.concurrent.Executors $ runnableAdapter.call(Executors.java:471)at java.util。 concurrent.FutureTask $ Sync.innerRun(FutureTask.java:334)at java.util.concurrent.FutureTask.run(FutureTask.java:166) 提前致谢!

Android Studio – build.gradle中的问题未捕获的转换错误ExecutionException OutOfMemory

我在Android Studio中的Android应用程序遇到了一个奇怪的问题。 一切似乎工作正常,直到今天添加一些新文件并对build.gradle进行一些更新。 我看到的错误消息如下: Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC […]