Articles of java的

将滚动事件从滑动视图传输到ScrollView – 使用ScrollView(如Google Maps)滑动面板

所以我在我的应用程序中使用了Sliding Up Panel Library ,我正在尝试在滑动面板中实现ScrollView 。 由于滑动面板和ScrollView都是由垂直滚动控制的,这导致了一些问题。 一旦面板一直向上滑动,当ScrollView滚动到顶部时,我已经通过切换面板的dragview来部分工作。 我现在面临的问题是,当滚动面板到顶部时,滚动不会像在Google地图中那样传输到ScrollView。 有点难以解释,所以请看这里的video: www.youtube.com/watch?v = 9MUsmQzusX8&feature = youtu.be 这是面板幻灯片监听器: … slidePanel.setEnableDragViewTouchEvents(true); slidePanel.setPanelSlideListener(new SlidingUpPanelLayout.PanelSlideListener() { @Override public void onPanelSlide(View panel, float slideOffset) { // Change the dragview to panelheader when panel is fully expanded // I’m doing this here instead of in onPanelExpanded, // because onPanelExpanded first gets called […]

Android:如何在Emoji View中以编程方式打开软键盘

正如我所看到的,在android上显示默认表情符号的方法是在输入文本上使用以下内容。 android:inputType=”textMultiLine|textShortMessage” 当我搜索时,我无法通过Javafind一种方法。 我想要做的是,当软键盘打开时,让用户选项卡按钮在表情符号视图和普通键盘视图之间切换。 自定义表情符号键盘。 我已经实现了这一点,但是使用Emojis已经在设备上发布kik-kat会更好更轻。 谷歌确实在这些观点之间切换。 在Google Allo上,按下editText切换视图中的表情符号图标。

如何调试“com.android.okhttp”

在android kitkat中,URLConnection的实现已被OkHttp取代,它如何调试呢? OkHttp在这个目录中: external/okhttp/android/main/java/com/squareup/okhttp 当我调用UrlInstance.openConnection().getClass().getName() ,它会显示com.android.okhttp.internal.http.HttpURLConnectionImpl 我该怎么调试呢? 似乎我无法将/android/main/java/com/squareup/okhttp/*与com.android.okhttp.* 当代码执行return streamHandler.openConnection(this); /** * Returns a new connection to the resource referred to by this URL. * * @throws IOException if an error occurs while opening the connection. */ public URLConnection openConnection() throws IOException { return streamHandler.openConnection(this); } 继续前进,但无法深入了解com.squareup.okhttp.HttpHandler#openConnection 下图中调试器中突出显示的线程为灰色。 package com.squareup.okhttp; import java.io.IOException; import java.net.Proxy; import […]

从后台恢复Android应用程序堆栈

让我们说我从主屏幕启动我的应用程序,浏览一些活动,然后我按下主页键并在Gmail应用程序中执行其他操作。 在我检查完邮件后,我再次按主页键退出Gmail应用程序,然后再次单击主屏幕上的应用程序图标返回到该应用程序。 当我回到我的应用程序时,我希望它返回到我所在的最后一个活动,而不是开始一个全新的会话。 我一直试图弄明白这一整天。 我的第一项活动的表现如下: 类别属性LAUNCHER使我的应用程序始终在活动Main开始,所以我不知道如何恢复最后一个活动。 人们告诉我使用共享偏好保存最后一个活动并将其加载到Launch上,但我不认为这样做是因为它不是很优雅。

自定义Lint规则未在eclipse / android studio中列出

我已经创建了自定义android Lint检查规则,当我从命令行运行它时效果很好但Android Studio在使用“Inspect Code”检查它时没有采用该规则。我已经选择了android studio的Inspection Profile中的所有Lint规则。 我做的是 使用自定义lint检查规则创建JAR 将jar放入〜/ .android / lint 当我从命令行运行lint检查时,它可以正常工作。 如下面的输出显示它检查规则。 lint OpenGLLearning Scanning OpenGLLearning: …………………………. Scanning OpenGLLearning (Phase 2): …. res/layout/activity_opengl.xml:8: Error: Edit Text ID Must be starting with et [etName] <EditText ^ 这里etName是我创建的自定义lint规则的问题ID。 但Android Studio不会在任何地方列出“etName”规则,并且在使用Inspect Code检查lint时不会显示错误。 我跑的时候 ./gradlew check 它会对rule进行检查。当我在终端上运行lint –list命令时,也会出现自定义规则,但无法弄清楚为什么Android Studio中的Inspect Code没有检查它。 我正在使用构建工具21.0.2和目标版本21

Camera API:跨设备问题

我正在开发一个相机应用程序,基本上作为消息应用程序的一部分来附加图像等。该应用程序需要工作> = SDK 2.2和: 我不能像我喜欢的那样使用默认的Android相机,因为: 该应用程序的性质决定了图像不应该保存到磁盘,一些OEM(三星)喜欢这样做而不给你一个选择。 我无法调用任何其他相机应用程序可以拦截的意图,因为那时该应用程序可以保存图像。 我目前的问题是处理Android相机显然不喜欢纵向的事实。 具体来说,在进行一些挖掘后,我正在监视显示,并在旋转时调用setDisplayOrientation(90) 。 这可以工作,但Surfaceview维度也需要更改,这必须在支持的维度内完成,否则参数设置会使应用程序崩溃。 我正在使用我在这里find的另一个SO片段( getBestPreviewSize()方法)这样做,但它有一个明显的问题,我无法相信我没有find其他人。 takePicture生命周期的一部分涉及调用PostView图片回调。 这是显示当前暂停的SurfaceView图像的静止图像,它将通过byteArray返回到原始和/或jpeg回调。 我的问题是,这个图像在一些看似随机的测试设备上仍然存在偏差! 因此,行为是用户以完美的4:3宽高比看到动态相机图像,直到他们拍摄照片并且他们呈现的图像被压扁。 请注意,字节数组本身是正确的,当我在消息传递端点构造Bitmap时,它显示正常,但这仍然是一个问题。 此时我无法看到如何改变静止图像显示。 谁能帮我这个?

Android ImageView.setMatrix()和.invalidate() – 重新绘制需要花费太多时间

任务:我想resize并在屏幕上移动图像。 无论图像有多大,我都想顺利地做到这一点。 API级别8应该支持该代码。 问题:我尝试使用带有scaleType=”matrix” ImageView 。 调用ImageView.setMatrix()然后调用ImageView.setMatrix()可以很好地处理小图像,但对于大图像很可怕。 无论ImageView有多大。 我可以以某种方式加快重新绘制ImageView以便它不会重新计算整个图像? 也许有一种方法可以使用不同的组件完成任务? 编辑:有关我想要实现的目标的更多信息。 pw,ph – 图片的宽度和高度(以像素为单位) dw,dh – 设备显示的宽度和高度(以像素为单位) fw,fh – 可见帧的宽度和高度(以像素为单位) x,y – 框架左上角的位置(以像素为单位) 我想在屏幕上显示图像的一部分。 属性x , y , fw和fh不断变化。 我正在寻找代码的一部分(想法),或者这8个指定variables的组件将快速生成并显示图像的一部分。 编辑2:关于pw和ph的信息 我假设pw和ph可以保持从1到无穷大的值。 如果这种方法造成很多麻烦,我们可以假设图片不比用设备的相机拍摄的图片大。

Android:使用HttpsURLConnection的HTTPS(SSL)连接

我有2个应用程序,一个是Servlet / Tomcat服务器,另一个是Android应用程序。 我想使用HttpURLConnection在两者之间发送和接收XML。 码: private String sendPostRequest(String requeststring) { DataInputStream dis = null; StringBuffer messagebuffer = new StringBuffer(); HttpURLConnection urlConnection = null; try { URL url = new URL(this.getServerURL()); urlConnection = (HttpURLConnection) url.openConnection(); urlConnection.setDoOutput(true); urlConnection.setRequestMethod(“POST”); OutputStream out = new BufferedOutputStream(urlConnection.getOutputStream()); out.write(requeststring.getBytes()); out.flush(); InputStream in = new BufferedInputStream(urlConnection.getInputStream()); dis = new DataInputStream(in); int ch; long […]

adb触摸屏在通话中滑动失败

我正在尝试使用触摸和滑动来模拟使用adb的自动video通话。 场景: Device1音频呼叫Device2,Device2应答,Device1请求video呼叫(双向),Device2尝试应答并失败。 有线的事情是有时它可以工作,但当设备2试图通过adb刷卡回答时,大部分都失败了。 这是代码: @Test(timeout = 60000000) /** * */ @TestProperties(name = “Video call / Normal video call”) public void VT111_0011() throws InterruptedException, IOException, AWTException { initTestVariable(“Normal_Video_Call_Test_VT111_0011”); sleep(idleBeforeTest); System.out.println(“Starting normal video test”); Android.adbCommand(secondDevice.getDevice1(), “adb -s ” + secondDevice.getDeviceID() + ” shell input touchscreen swipe 355 858 590 858″); for(int i=0; i<Iteration; i++) { moveMouse(); […]

如何使用OpenPGP(Yubikey)签署应用程序包(APK)?

我想使用存储在我的Yubikey的OpenPGP小程序中的OpenPGP密钥来签署APK文件。 我知道,有一个使用Yubikey的PIV applet进行APK签名的解决方案 。 但是,PIV applet只能处理密钥长度最多为2048位的RSA密钥。 BSI TR-02102-1加密机制技术指南 (英文版译本)指出,从2023年开始(或者在2023年及之后的使用中),只允许密钥长度大于或等于3000比特的RSA密钥。 第一个可用的标准密钥长度为3072位。 我必须遵守BSI TR-02102 。 这总结为要求,我必须使用3072位的密钥长度和RSA作为算法,我不能使用PIV APK唱歌方法。 有没有办法使用Yubikey 4的OpenPGP小程序使用标准程序或使用自定义程序签署APK文件? 注意 :私钥是在Yubikey上生成的,不可导出。 这是由于Yubikey的设计和我的最低安全要求。 因此,出口和对话不是一种可能的解决方案。