天道酬勤,学无止境

android

从安卓模拟器读取C盘文件(Reading file from C drive from Android Emulator)

问题 我正在 Android 模拟器上试用测试应用程序。 我希望应用程序将数据写入存储在我的 C 驱动器上的文件。 我已经从 Samba 驱动器和网络服务读取和写入数据,但是读取和写入本地硬盘似乎是一个难题。 我试过filePath = "file:///C:/test/input/"; 将其指向我的父文件夹,但模拟器似乎无法识别该目录,并且出现“未找到”错误。 任何想法将不胜感激。 谢谢。 回答1 我希望应用程序将数据写入存储在我的 C 驱动器上的文件中。 这是不可能的,除非该文件可通过某个服务器访问。 Android SDK 模拟器无法访问开发人员 PC 的文件系统。 回答2 鉴于您使用的是 android 模拟器,我猜它正在设置一些特殊的文件夹来充当 androids 硬盘驱动器的代理。 这意味着 android 模拟器不了解您的 C 驱动器是什么,而是在它的“硬盘驱动器”中查找文件。 找出模拟器为 android 放置文件的位置,它可能是一个临时文件夹,并将您的文件存储在那里。 编辑:Android 模拟器内部存储在哪里这个问题应该可以帮助您找到文件应该存储的位置和命名约定。 回答3 如果您不关心使用 genymotion 模拟器,则可以参考此答案,指向这篇文章,它正是您所需要的

2021-09-21 19:23:31    分类:技术分享    android

确定 SQLite 中列的数据类型(Determine data type of a column in SQLite)

问题 我正在开发一个 Android 应用程序,其中用户有不同的选项来对来自数据库的显示数据进行排序。 目前,我传递给 Androids query() 方法的 orderBy 字符串如下所示: "LOWER("+columnName+") ASC" 这样做的问题是,如果 columnName 指定的列中的数据类型是整数,则对其调用 LOWER() 将使其按字母顺序排序,即仅基于最左边的数字,这当然没有任何意义用于数字数据。 因此,如果列的数据类型不是整数,我只想应用 LOWER()。 我想到的是这样的声明: "CASE WHEN [data type of columnName is integer] THEN "+columnName+" ASC ELSE LOWER("+columName+") ASC END" 括号中的部分是我不知道该怎么做。 SQLite 是否提供确定列数据类型的函数? 回答1 你真的想要列的类型,还是值的类型? (SQLite 是动态类型的,所以区别很重要。) 如果你想要后者,你可以使用typeof(columnName) 。 回答2 用: PRAGMA table_info(table-name); 获取表信息。 回答3 直接取自关于SQLite 版本 3 的数据类型的 SQLite 文档: 大多数 SQL 数据库引擎(据我们所知,除 SQLite

2021-09-21 19:14:27    分类:技术分享    android   sqlite   case   types

View.SurfaceView,为什么它的成员 mSurfaceHolder 从 getSurface() 返回 null?(View.SurfaceView, why its member, mSurfaceHolder, returns null from getSurface()?)

问题 这几天我正在学习 Android 游戏开发。 我遇到了关于 SurfaceView\SurfaceHolder 的问题。 当我在android sdk 22 中阅读View/SurfaceView.java 的源代码时,我很困惑。 以下是代码: public class SurfaceView extends MockView { ... public SurfaceHolder getHolder() { return mSurfaceHolder; } private SurfaceHolder mSurfaceHolder = new SurfaceHolder() { ... @Override public Surface getSurface() { return null; } @Override public Canvas lockCanvas() { return null; } ... } } 我知道,mSurfaceHolder.getSurface()\lockCanvas 很重要,但是它返回null! 所以,我认为这个 mSurfaceHolder 可以通过其他一些步骤来处理。 但是我学过一个SurfaceView的例子,但是没有想出处理mSurfaceHolder的特殊步骤,例子代码如下: public class SurfaceViewTest

2021-09-21 19:10:06    分类:技术分享    android

在android中的surfaceview上创建cameraview(mask)(Create cameraview (mask) on surfaceview in android)

问题 我想在相机表面视图上创建一个蒙版。 见下图。 遮罩可调整大小。 图像将仅被未模糊区域点击。 任何人都可以给出如何创建 suh 面具的想法吗? 提前致谢。 回答1 无法在接收相机预览的 SurfaceView 的 Surface 上绘图。 您有两个基本选项:在 SurfaceView 的 View 部分绘制,将其视为自定义视图,或者创建第二个 SurfaceView 并将其分层在相机表面的顶部。 对于后者,您将使用 setZOrderMediaOverlay() 将 Surface 定位在相机 Surface 层上方但在 View UI 层下方。 您可以使用 Canvas 或 GLES 在其上绘图。 您可以在 Grafika 的“多表面测试”中找到具有三个 SurfaceView 的活动示例。 回答2 您可以使用相机预览在表面视图上绘图。 你需要设置 setWillNotDraw(false); 在surfaceCreated覆盖中。 请参阅:从未调用过扩展 SurfaceView 的 onDraw() 方法 因此,从那时起,像往常一样在 onDraw 中进行所有绘图。

2021-09-21 19:09:54    分类:技术分享    android   camera   surfaceview   mask   camera-view

Android 图像库对比(Picasso、Fresco 等)(Comparison of Image Library for Android (Picasso, Fresco, etc.))

问题 有没有人对 android 的 Image-library 进行比较? 在 Android 中处理图像有时令人头疼,因为它总是与内存问题有关。 还有一些流行的库(例如Picasso , Fresco ),已经玩过其中的一些,以前有人做过一些比较吗? 回答1 参考这个: https://twitter.com/jessewilson/status/581235604740042752 Android 本地图像缓存解决方案:Square Picasso 与 Universal Image Loader https://www.bignerdranch.com/blog/solving-the-android-image-loading-problem-volley-vs-picasso/ Android 图片加载 - Volley vs Picasso Picasso v/s Imageloader v/s Fresco vs Glide

2021-09-21 19:09:24    分类:技术分享    android   out-of-memory   imagelibrary

Android:CollapsingToolbarLayout 中的 MapView(Android : MapView in a CollapsingToolbarLayout)

问题 我目前正在尝试将Map View (或包含地图的片段)放入CollapsingToolbarLayout 。 当RecyclerView滚动时,我希望对它产生视差效果。 不幸的是,它根本没有出现! 甚至不是灰色网格! 折叠动画虽然有效。 我到处搜索,但我能找到的只是关于ImageView而没有其他组件。 所以这里是我的问题: 甚至可以在CollapsingToolbarLayout放置除ImageView以外的任何东西吗? (文档正在谈论子视图,所以我认为这是可能的) 如果是这样,是否也允许使用片段? 那我做错了什么?? 这是我的 xml : <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:map="http://schemas.android.com/tools" android:id="@+id/main_content" android:layout_width="match_parent" android:layout_height="match_parent"> <android

2021-09-21 19:08:32    分类:技术分享    android   android-mapview   mapfragment   android-collapsingtoolbarlayout

扩展自定义布局类 - 从未使用过构造函数(Extending a custom layout class - Constructor never used)

问题 我正在使用这里给出的 GifWebView 我知道 Main Activity 等工作正常,因为我在用 XML 实现框架布局之前对其进行了测试。 但是现在我正在使用框架布局,我遇到了问题。 我只会为您提供我的代码和快速解释: XML <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <com.example.dencallanan.giftestapp.GifWebView android:id="@+id/GWebView" android:layout_width="match_parent" android:layout_height="match_parent" /> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match

2021-09-21 19:07:59    分类:技术分享    java   android   xml   android-layout   view

当我们添加部分时,如何在 NavigationView 的抽屉菜单中保持单个 checkableBehavior 模式?(How to keep single checkableBehavior mode in drawer menu for NavigationView when we add section?)

问题 我尝试使用材料设计的新组件实现一个抽屉:NavigationView。 它的工作非常好。 当我选择一个项目时,它的颜色会随着android:checkableBehavior="single"变化而改变。 <group android:checkableBehavior="single"> <item android:id="@+id/drawer_home" android:checked="true" android:icon="@drawable/ic_home_black_24dp" android:title="@string/home"/> <item android:id="@+id/drawer_favourite" android:icon="@drawable/ic_favorite_black_24dp" android:title="@string/favourite"/> ... <item android:id="@+id/drawer_settings" android:icon="@drawable/ic_settings_black_24dp" android:title="@string/settings"/> </group> 当我尝试使用抽屉中的部分时出现问题。 在这种情况下,我无法使用android:checkableBehavior

2021-09-21 19:07:50    分类:技术分享    android   navigation-drawer   material-design

我可以为桌面和移动设备制作一个简单的浏览器插件吗?(Can I make a simple browser plugin for both desktop and mobile?)

问题 我想使用 Chrome 但看起来 Chrome for Android 无法运行扩展程序? Firefox 中的支持似乎不稳定。 我想要的只是请求和执行特定域的远程 CSS 和 JS 文件。 我不需要任何用户界面或任何东西。 不确定我是应该继续使用 Firefox 还是考虑使用嵌入插件的我自己的“浏览器”? 回答1 您可以使用 Firefox SDK,可在此处获得:https://developer.mozilla.org/en-US/Add-ons/SDK 它允许您为两个平台进行开发。 如果您在 firefox for android 中遇到 sdk 问题,您可以阅读以下内容:https://developer.mozilla.org/en-US/Firefox_for_Android 如果不需要用户界面,设置起来会很容易:) 关于这篇文章中的评论,我制作了一个用于设置开发中扩展的脚本: # Run this script from your project base dir. #1 - Complete the following vars: #ANDROID_APP_ID=org.mozilla.fennec; ANDROID_APP_ID=org.mozilla.firefox_beta; #ANDROID_APP_ID=org.mozilla.firefox

2021-09-21 19:03:28    分类:技术分享    android   google-chrome-extension   firefox-addon   desktop

android中的黑屏统一子视图(Black screen unity subview in android)

问题 我尝试使用统一场景作为我的 Android 应用程序的子视图。 我确实喜欢这个教程 http://forum.unity3d.com/threads/using-unity-android-in-a-sub-view.98315/ 。 但是我遇到了问题。 我的屏幕像这样黑 这是我的 Java 代码MainActivity package com.duy; import android.app.Activity; import android.os.Bundle; import android.view.ViewGroup.LayoutParams; import android.widget.FrameLayout; import com.unity3d.player.UnityPlayer; public class MainActivity extends Activity { UnityPlayer m_UnityPlayer; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); m_UnityPlayer = new UnityPlayer

2021-09-21 19:02:07    分类:技术分享    android   unity3d   subview