Android 使用共享首选项存储用户数据可靠吗?

用户重新启动手机或更换SIM卡/电池后,数据是否仍然存在?是。数据是持久的。除非用户“将其恢复为出厂默认值”是。数据是持久的。除非用户“将其恢复为出厂默认值”共享参考信息存储在手机的内部存储器中,而不是存储在SD卡中。 它们也不会因为重新启动/更换电池而被擦除。共享参考信息存储在手机的内部存储器中,而不是存储在SD卡中。 它们也不会因为重新启动/更换电池而被擦除

如何在android中递归压缩文件夹?

我可以压缩文件夹,但不能用递归的方式。请给我一个解决方案???就像java一样(它是一样的) static public void zipFolder(String srcFolder,String destZipFile) 抛出异常{ ZipOutputStream zip=null; FileOutputStream fileWriter=null; fileWriter=新的FileOutputStream(destZipFile); zip=新的ZipoutStream(fileWrit

如何使按钮在android应用程序的listview中不可见

在我的应用程序中,我有一个列表视图。每个列表由一个图像、文本和三个按钮组成。 我已将所有这些都放在一个列表活动中 当用户单击某个特定按钮时,我使用该按钮调用我的应用程序的下载功能。那时我想让那个按钮隐形。下面是我代码的一部分 public class Content extends ListActivity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanc

时区问题-android

我正在尝试用安卓系统获取时区 Calendar cal = Calendar.getInstance(); TimeZone tz = cal.getTimeZone(); System.out.println("timezone = " + tz.toString()); 我应该去 sun.util.calendar.ZoneInfo[id="Europe/London",offset=0,dstSavings=3600000 ..... 但是当我在ddms中打印时,我得到了下面的

Android 有没有办法确定应用程序是否第一次安装完毕?

我的应用程序从internet下载5个文件.apk,每次成功安装5个文件后,我想向服务器发送设备id 那么,有没有办法在第一次安装时检查应用程序是否成功?你可以通过谷歌分析跟踪你的应用程序使用情况和其他统计数据。你还可以通过谷歌分析向谷歌分析网站发送任何数据,如设备id。你可以通过谷歌分析跟踪你的应用程序使用情况和其他统计数据。你还可以发送任何数据通过Google Analytics向Google Analytics站点发送设备id。您可以使用 Date app_install_date = n

Android 在下面的Google代码示例中,使用处理程序执行回调的目的是什么

我从中引用以下代码 除非原因是这样,否则我们希望使用UI线程在queryInventoryFinished上执行。然而,这是不正确的。代码示例正在通过空参数构造函数创建处理程序。就像我们希望使用UI线程执行它一样,我们假设通过 Handler handler = new Handler(Looper.getMainLooper()); 我想知道,在上面的Google代码示例中使用Handler执行回调有什么特别的原因吗?处理程序将在创建它的线程上运行/处理你发送给它的可运行文件和消息。通过在A

Android 如何将字节[]转换为可绘制的?

我有一个字节数组,我需要将其转换为Android Drawable 如何执行此转换 我尝试过这个,但不起作用: fileData是字节[]数组 Drawable image = null; image = new BitmapDrawable(BitmapFactory.decodeByteArray(fileData, 0, fileData.length)); 使用此代码 byte[] imageByteArray = cursor.getBlob(cursor

android.view.InflateException-膨胀类android.widget.EditText时出错

您好,我正在尝试在屏幕上显示自定义AlertDialog。 我将一个布局扩展到对话框中,这个布局包括两个文本视图,一个比率栏和一个编辑文本 当我尝试弹出对话框时,我遇到以下异常: E/AndroidRuntime(12989): android.view.InflateException:二进制XML文件行#25:错误 膨胀类android.widget.EditText 重要的一点是,这个错误发生在Android 2.3.x设备上,它在Android 4.x上工作得很好 dialog_comm

在Android应用程序中包含多个屏幕大小的图标是否会影响安装大小

当您在Android应用程序中包含多个屏幕大小的图标时,当应用程序安装在设备上时,是否会清除不适用于该屏幕大小的图标?例如,如果我有一个具有xhdpi密度的xlarge屏幕的平板电脑,那么在安装应用程序时,可绘制ldpi、可绘制mdpi和可绘制xhdpi文件夹中的图标是否被清除(假设可绘制xhdpi具有所有必要的图标)?它必须在apk中具有这些图标中的每一个。因此,它将增加大小。它必须在apk中每个图标都有一个。因此它会增加大小。是的,但您可以使用类似于压缩PNG图像的程序,这样应用程序的大小不

android清单被选中

好的,我有了我的Android应用程序,它启动时不会出现“无法实例化活动组件信息{}”错误,基本上我的清单文件中有错误,无法让应用程序启动第一个活动。我创建了一个新的但本质上是重复的项目(手动复制主、第二和第三个“tester”活动的Java+XML代码,当然还有字符串)。我保留了新项目的清单,但为测试人员添加了活动行。我希望所有东西基本上都是库存,这样就不会出问题,什么也没有做,应用程序加载到emulator和我的手机上,一切正常 因此,我将新的清单复制到我的旧项目中,以“默认”它,并复制和粘

Android 在音乐目录中播放歌曲

我使用以下命令将文件保存到音乐目录中: request.setDestinationInExternalPublicDir(Environment.DIRECTORY_MUSIC, "SpaceJam.mp3"); 在我的主要活动中,我现在想访问它并播放它 如何检索歌曲的信息,以便与以下内容一起使用: mp.setDataSource(??); “mp”是我的MediaPlayer的名称。谢谢。如果您有外部存储器,请执行以下操作: 如果您有外部存储,请执行以下操作: 编辑: 编辑: 发送更多

Android 如何以分钟和秒为单位使用计时器

我在android应用程序中使用计时器 这就是我用的 Timer t = new Timer(); //Set the schedule function and rate t.scheduleAtFixedRate(new TimerTask() { public void run() { //Called each time when 1000 milliseconds (1 second) (the period parameter)

Android 基于excel文件中的数据动态将自定义布局添加到ArrayList

在这里,我想根据excel中的数据动态地将行(自定义布局)添加到ArrayList中。一切正常,只是我只加载了ArrayAdapter的最后一个值 首先是我的实例变量的声明: List<Record> model = new ArrayList<Record>(); RecordAdapter adapter = null; 这是我用来从excel文件加载数据的loadData()方法: public void loadData() { //Instantiat

Android 如何使用在另一个类中定义的参数?

我在我的主要活动中使用的导航抽屉定义为 private DrawerLayout drawerlayout; 我在主要活动中使用它来打开和关闭我的导航片段,但在导航片段类中有3个特定按钮,我想在其中使用导航片段功能drawerlayout.closedrawer(r.id.drawer) 但每次我在nav fragment类中再次定义它,并尝试将其添加到这些按钮的onclick中时,在单击这些按钮时,应用程序就会崩溃,并出现nullpointer异常。我该怎么做呢 谢谢! 以下是我的应用程序的

Android 带开/关开关的MediaPlayer

我无法使用开/关按钮使MediaPlayer正常工作 我实例化MediaPlayer和静音按钮: music = MediaPlayer.create(getApplicationContext(), R.raw.loop); music.setAudioStreamType(AudioManager.STREAM_MUSIC); ibVolume = (ImageButton) findViewById(R.id.btn_volume); ibVolume.setBackgroundResou

Listview中的Android复选框

我有一个从数据库填充的listview,每行有一个复选框。使用putExtras传递值​​将文本视图添加到另一个活动。现在,当您重新启动应用程序时,我想在TextView中显示最后一个选中复选框的值。我需要共享参考资料,还是有方法?谢谢请按以下方式优先保存您的复选框: //method to load the sharedpreferences. private void loadSavedPreferences() { SharedPreferences sharedPreferen

检测外部应用程序何时在Android中运行onCreate、onStart和onResume

我想问你是否有人知道如何检测外部应用程序何时运行其中一种方法。我正在和一些同学一起做一个项目,我们想检查其他应用程序的响应时间。其想法是测量每个方法运行之间的时间,以获得打开应用程序时响应时间的近似值 这可能实现吗?看看android的应用程序生命周期图 onStart()在创建活动(用户访问时创建新活动)或重新启动(后台活动返回时)时调用 onResume()在活动启动和暂停后返回时调用 看看android的应用程序生命周期图 onStart()在创建活动(用户访问时创建新活动)或重新启动(后

Android 如何显示服务内工作线程的祝酒词?

我正在使用AlarmManager唤醒设备并运行一些任务。这些都是在IntentService内部完成的,因此是在与主线程分离的线程上完成的。工作完成后,我想干杯。但是,我收到此日志警告,并且没有显示toast: W/MessageQueue﹕ Handler (android.os.Handler) {b12716d0} sending message to a Handler on a dead thread java.lang.RuntimeException: Handler (

Android GetSharedReferences()中的字符串参数做什么?

编辑:提供的“副本”不能解决我的问题,因为它不能完全回答我的问题。(缺少关于第二个参数的信息) 这个问题的目的是为新的Android开发者清理信息,而不是解决我自己的问题。请重新考虑否决票 因此,以下是方法: getSharedPreferences(string, Context.MODE_PRIVATE); 我无法真正理解第一个参数的作用。它有什么作用?如果我们将某些内容保存到SharedReferences时使用密钥,为什么会有第一个参数?getSharedReferences()中的

Android React本机0.44——堆栈导航器示例

我正在尝试创建我的React本机应用程序的Android版本,但是我在Android navigator上遇到了一些问题 首先创建一个类似appNav.js的文件 import { StackNavigator } from 'react-navigation'; import Splash from './splash.js'; import Home from './home.js'; import Login from './login.js'; import Register from

Android 旋转时保存和恢复文本

我已经看到了一些关于如何实现这一点的例子,但我仍然无法让它工作 我遵循了这个示例,但是当我旋转屏幕时,OnCreate中的TextView是空的。下面是我如何实现它的: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); this.ge

Android 编辑文本停止在回车键上失去焦点

当我按Enter键编辑文本时,失去焦点 和Listview的第一项高亮显示,但未发生任何事件 1) 未找到ListView焦点更改 2) 没有发生ItemCLick事件 而且在滚动列表视图中突出显示的项目也消失了 如何防止在按Enter键时失去EditText的焦点并停止突出显示 下面是我的xml和Java代码 <EditText android:id="@+id/et_scanitemcode" android:layout_width="match_parent" android:la

Android RecyclerView的SearchView不工作

我已经在片段中为recyclerview实现了searchview过滤器,如下图所示,但是当我在searchview中输入查询时,什么都没有发生。 我的片段类:DiscussionForum.java public class DiscussionForum extends Fragment implements ForumAdapter.ForumAdapterListener { private TextView socname; private EditText messageinp

需要Kotlin的Android帮助吗

SignupActivity.kt import android.os.Bundle import android.support.v7.app.AppCompatActivity import android.widget.EditText import android.widget.Toast import kotlinx.android.synthetic.main.activity_signup.* class SignupActivity:AppCompatActivity(){

在Android应用程序中运行Kotlin脚本可行吗?

假设我正在编写一个Android应用程序,我想在Kotlin脚本中实现部分逻辑 我通过在应用程序的META-INFO.services“javax.script.ScriptEngineFactory设置中使用org.jetbrains.kotlin.script.jsr223jvmlocalscriptEnginefactory来执行这些脚本 所以这在技术上是可行的 然而,在Android上的生产应用程序中实现这一点真的可行吗?将整个Kotlin编译器都带上?AFAIK,这种依赖实际上链接到K

Android LiveData<;页面列表>;在Kotlin中的分页库实现中未观察到

最近我开始在科特林附近玩耍。我正在尝试实现分页库以从服务器获取列表。我完全遵循下面的文章来实现相同的功能。 从DataSource中的服务器获取数据的代码运行良好,但由于某些未知原因,无法调用List Observe viewModel.ArticleList.observe()…(此部件不工作。) 下面是我的项目实现的代码段,以了解更多详细信息 package com.assessment.Articlebaseproject.repo.web.paging import android.

Android 安卓停止音频时,手机锁定后播放约10-20分钟

我有一个应用程序收音机,它使用exoplayer 几乎很好的工作,但当电话在后台广播播放约10-20分钟,并停止和我打开电话广播继续播放。我如何通过编程修复它? Mediaplayer有一个类似setWakeMode()的方法,但我发现Exoplayer没有类似的方法。对不起,我的英语我遇到了与exoPlayer相同的问题,当手机屏幕锁定AudioTrack几分钟后关机时,因此您可以在代码中添加WakeLock或WifiLock以保持exoPlayer在后台运行,即使手机屏幕被锁定 if (in

Android 更新应用程序赢得';无法替换。\assets\internal中的文件

将应用程序文件存储在文件夹中。\assets\internal\MyFilesFolder 当我需要更新应用程序时会出现问题,例如在Google Play Store中 这些文件不会被替换。因此,更新版本使用第一期中的旧文件 有没有办法强制更新或更好地存储文件 (IOS上的问题相同) 谢谢看来Delphi自己可以通过System.StartUpCopy.pas控制资产更新。解释了IOS的相同问题。因此,解决方案可能是在初始化StartUpCopy之前删除文件。您还可以编辑StartUpCopy.

Android app:compat-v7:28.0.0和play services vision:18.0.0之间的appcompat和play services vision依赖关系不兼容

我正在创建一个应用程序来使用firebase类检测人脸。但是,我在com.android.support:support-v4:28.0.0和com.google.android.gms:play services vision:18.0.0依赖项之间存在兼容性问题。我已经尝试了几种方法来解决这个问题,但到目前为止,我还没有找到任何可以解决这个问题的方法。Android studio向我返回以下消息: 使用groupId com.android.support和androidx的依赖项。*不能

Android 在日历视图中更改日颜色

如果可能,我只想更改当前月份所有星期日的背景色/色调 喜欢这张照片,谢谢你的时间 文档应该对您有所帮助。使用getFirstDayofWeek()应该可以得到星期天,然后使用我假设的方法可以更改它。我个人以前没有使用过CalendarView,但是文档看起来非常简单。您可以使用

如何在Android定时器应用程序中使用语音识别?

我有一个Android应用程序 然而,关键是它是一个移动应用程序,可以帮助用户跟踪、记录和监控他们的淋浴使用情况和用水量。在应用程序中,有一个计时器,您可以在其中按play,如图所示。用户可以将手机放在马桶盖上,让计时器保持运行,然后在完成淋浴后点击“停止”。关键是,他们意识到计时器正在运行,并希望尽可能减少长度 唯一的问题是,有时人们可能不想用手,所以我想他们可能想在计时器运行时用自己的声音停止计时器 有没有人建议在整个淋浴过程中,当计时器运行时,在哪里打开麦克风进行语音识别。换言之,这种情

移动SDK文件夹后Android Emulator崩溃

我将Android Studio SDK文件夹移动到我的D驱动器以节省空间。我是这样做的:我安装并重新安装了,确保将所有内容都更改为指向我的D驱动器,但对于我可以找到的SDK,没有选项这样做 所以我通过复制来手动移动它。然后,我在Android Studio设置中从文件->其他设置->默认项目结构更改了SDK文件夹。然后我安装了一个模拟器,但它在启动时就崩溃了。知道怎么修理吗 在您的android studio中,进入工具->SDK管理器->编辑SDK位置按钮,您可以在此处给出新的SDK位置此问

java.io.IOException:无法运行程序CreateProcess error=2,系统找不到android studio上指定的文件

我不太清楚为什么会发生这种情况,我的其他项目运行良好,在我添加协同路由之前,这个项目也运行良好(在我的项目正在建设过程中,我的互联网连接被切断之后,如果这可能也会影响这一点的话) 这在异常中显示: e: java.io.IOException: Cannot run program "D:\Android Studio\jre\jre\bin\java" (in directory "C:\Users\User\AppData\Local\kotlin\daemon"): CreateProce

如何在android中获取仅包含音频文件(.mp3)的文件夹

我正在制作具有文件夹功能的音乐播放器,我只想显示包含音乐或音频文件(如.mp3)的文件夹,就像MX播放器一样(仅显示包含视频文件的文件夹)。我已经尝试了这个代码,但它给出了所有目录。这是我的密码 public static List<File> getListFiles(@NonNull File directory, @Nullable FileFilter fileFilter) { List<File> fileList = new LinkedList&l

如何使用android芯片组设置ViewPager?

我有一个芯片组,里面有5个芯片。我有一个5页的浏览页面。对于我选择的芯片,应该加载相应的页面(片段)。如何在android中链接ViewPager和芯片组?设置app:singleSelection=“true”到您的芯片组XML请参阅 然后像这样设置ViewPager private void setViewPager() { mPagerAdapter = new PagerAdapter(getSupportFragmentManager()); if (m

Android Studio:使用firebase实时数据库中的数据填充列表视图

我试图用firebase db中的数据填充列表视图。我已经成功地拉取了信息并填充了列表视图,但我正在尝试为列表中的每个项目启用项目单击侦听器,并且当选择用户名时,将显示一个警报诊断框,以显示数据库中关于他们的其他信息 数据库架构如下所示: 代码: databaseReference=FirebaseDatabase.getInstance().getReference().child(“客户”); listView=root.findViewById(R.id.listView); array

Android Google sign在我的Android Studio中构建时不起作用

我正在尝试使用Firebase身份验证将Google登录集成到我的Android应用程序中。当我使用项目文件进行构建时,会出现一个错误PlatformException(Google登录失败,com.Google.android.gms.common.api.ApiException:12500) 代码 公共类LoginActivity扩展了AppCompatActivity{ 私有静态最终字符串标记=”; 专用静态最终输入RC\U符号\U IN=9001; 私人编辑文本输入电子邮件,输入密码;

Android CameraX和MultiCamera支持

现在我们有了CameraX:1.0.0-beta01。你知道我们现在能不能用它吗?或者,是否计划向CameraX添加多摄像机支持?我找不到任何关于CameraX的开发计划。“或者,是计划向CameraX添加多摄像头支持吗?我找不到任何关于CameraX的开发计划。”--谷歌通常不会公开讨论开发计划。@commonware谢谢。所以我有一个两难的选择。我将开始发展。使用Camera2,还是等待CameraX提供下一个功能?Camera2 API相当复杂。如果您可以使用库来避免它(CameraX、F

我可以在与VSCode相同的窗口上启动Android emulator吗?

我将Android emulator与VSCode一起使用,我希望将emulator和VSCode窗口作为一个窗口进行控制 当前状态: 我希望它像一扇窗户。它可能看起来像这样: 当我改变窗口的大小或焦点时,它会影响两个应用程序 操作系统:Ubuntu 18.10 谢谢 不同的应用程序,不同的窗口。你可能应该看看操作系统/桌面外壳中的窗口平铺/平铺功能。Android Emulator使用操作系统的低级图形在窗口中绘制,比PC CRUD应用更接近游戏,因为VSCode基于闪烁(Chromium

Android 如何为定制广播接收机编写mockito测试

我有一个自定义的广播接收器类,我在应用程序的多个地方使用,它工作良好。现在我想用mockito编写单元测试,但我无法实现。此自定义广播正在与绑定服务通信 我跟踪了一些SO问题和谷歌文章,没有任何帮助 下面的文章我一直在关注 我试过booth,但没用 下面的代码将说明我的自定义广播接收器是如何工作的 class CustomBroadcastReceiver(val onResultListener: OnResultListener) : BroadcastReceiver() { ove

在Android标题上居中显示导航标题

我使用的是React导航,在IOS上,标题按预期居中,但在Android上,按钮应该位于左侧,标题都向左对齐。有人知道如何解决这个问题吗?代码如下: <Stack.Navigator initialRouteName="Home"> <Stack.Screen name = "Home" component={HomeScreen} options={{ headerLeft: () => (

如何检查Firebase中是否已经存在值并在android中获取密钥

在我的android应用程序中,当用户登录时,我需要检查我的实时数据库,以确定该数据库中是否存在用户ID。找到用户ID后,我需要检索该ID的父节点,以确定登录的用户是客户还是员工。我在编写代码时遇到了一些困难,因为我对使用firebase比较陌生 以下是我目前的代码: final String user_id = Objects.requireNonNull(firebaseAuth.getCurrentUser()).getUid(); DatabaseReference rootRef =

从AndroidStudio运行插入指令的测试时触发gradle任务

我目前正在AndroidStudio中努力进行仪器化测试。我有一个gradle插件,它为emulator中确定性环境的设置和拆卸添加了依赖项(例如,将文件推送到SD卡中): 类prepareenplugin实现插件{ @凌驾 无效申请(项目目标){ target.afterEvaluate{project-> project.extensions.findByType(AppExtension) .测试变体 弗雷奇先生{ DefaultTask connectedTask=it.connecte

AdMob自适应/智能横幅背景色Android

有一个很好的Google AdMob Adaptive横幅,带有Android Studio集成说明: 我完全按照示例中的描述一步一步地进行操作。步骤6说明我可以在布局xml文件中设置背景: <FrameLayout android:id="@+id/adView_container" android:layout_width="wrap_content" android:layout_height="wrap_content&qu

Android 回购清单。致命:清单';default.xml';无法使用的

我有一个repo清单文件default.xml。然而,当我执行 repo init -u <MYREPOURL> -b branch1 repo init-u-b branch1 我得到这个错误 致命:清单“default.xml”不可用 致命:重复路径。在/.repo/manifests/default.xml中 可能是什么问题。我尝试了很多东西,但都没有用。下面是已更改回购协议和文件夹实际名称的清单 <?xml version="1.0" encod

谷歌地图不会在NativeScript应用程序中显示,但会在Android Studio开发的本机应用程序中显示

我有一个NativeScript+Angular应用程序,它需要显示地图并计算行程时间。显然,谷歌地图是我的主要选择。我在我的Google开发者控制台中创建了一个新项目,为2个API创建了一个新的API键:用于Android的Maps SDK和距离矩阵API。使用该API键,我尝试在我的应用程序中添加代码,如GitHub repo中所示。当我尝试在emulator中运行应用程序时,我看不到它: 组件已正确加载,因为我看到了“请参阅下面的地图!”标签。以下是我的组件的HTML代码: "