Questions tagged «android»

Android是Google的移动操作系统,用于对数字设备(智能手机,平板电脑,汽车,电视,Wear,Glass和IoT)进行编程或开发。对于与Android相关的主题,请使用特定于Android的标签,例如android-intent,android-activity,android-adapter等。对于与开发或编程无关但与Android框架相关的问题,请使用以下链接:https:// android.stackexchange.com。

14
如何不显示通知就启动startForeground()?
我想创建一个服务并使它在前台运行。 大多数示例代码都带有通知。但我不想显示任何通知。那可能吗? 能给我一些例子吗?还有其他选择吗? 我的应用程序服务正在执行mediaplayer。如何使系统不会杀死我的服务,但应用程序会杀死它本身(例如通过按钮暂停或停止音乐)。

12
Android Canvas:绘制太大的位图
我正在运行Ubuntu 16.04。在Android Studio上,当我尝试在模拟器中运行应用程序时,出现以下错误: 致命例外:主要流程:此处为项目名称,PID:2528 java.lang.RuntimeException:画布:尝试绘制太大(216090000bytes)的位图。在android.view.DisplayListCanvas.throwIfCannotDraw(DisplayListCanvas.java:260)在android.graphics.Canvas.drawBitmap(Canvas.java:1415)在android.graphics.drawable.BitmapDrawable.draw(BitmapDrawable.java:528)在android。 android.view.View.draw(View.java:17185)的widget.ImageView.onDraw(ImageView.java:1316)android.view.View.updateDisplayListIfDirty(View.java:16167)的android.view.View.draw (View.java:16951)在android.view.ViewGroup.drawChild(ViewGroup.java:3727)在android.view.ViewGroup.dispatchDraw(ViewGroup.java: 等等... 我确实必须经历一些麻烦才能使仿真器正常工作,但是创建一个符号链接是必需的,以便可以在AMD上运行该仿真器。不知道这是否是问题的一部分。对于我的一生,我不知道为什么它会继续这样做。在我的小组中,还有其他人可以在相同的模拟手机和SDK上很好地模拟项目。
87 android 


6
Android备份/还原:如何备份内部数据库?
我已经实现了BackupAgentHelper使用提供的FileBackupHelper来备份和还原我拥有的本机数据库。这是您通常与一起使用ContentProviders并驻留在中的数据库/data/data/yourpackage/databases/。 有人会认为这是一种常见的情况。但是文档尚不清楚该怎么做:http : //developer.android.com/guide/topics/data/backup.html。这些典型数据库没有BackupHelper专门针对的数据库。因此,我使用了FileBackupHelper“ /databases/”,将其指向“ ”中的.db文件,在我的所有db操作(例如db.insert)中引入了锁定ContentProviders,甚至尝试在创建“ /databases/”目录之前使用onRestore()它,因为安装后该目录不存在。 过去,我已经SharedPreferences在其他应用程序中成功实现了类似的解决方案。但是,当我在模拟器2.2中测试我的新实现时,我看到正在LocalTransport从日志执行备份,以及正在执行(并onRestore()调用)还原。但是,永远不会创建db文件本身。 请注意,所有这些都是在安装之后,在首次启动应用程序之前,在执行还原之后。除此之外,我的测试策略基于http://developer.android.com/guide/topics/data/backup.html#Testing。 另请注意,我并不是在谈论我自己管理的一些sqlite数据库,也不是在备份到SDcard,自己的服务器或其他地方。 我确实在文档中看到有关数据库建议使用自定义的提及,BackupAgent但它似乎并不相关: 但是,如果需要执行以下操作,则可能需要直接扩展BackupAgent:*备份数据库中的数据。如果您有要在用户重新安装应用程序时还原的SQLite数据库,则需要构建一个自定义的BackupAgent,该备份代理在备份操作期间读取适当的数据,然后创建表并在还原操作期间插入数据。 请清楚一些。 如果我真的需要自己做到SQL级别,那么我担心以下主题: 打开数据库和事务。我不知道如何在应用程序工作流程之外从此类单例类关闭它们。 如何通知用户正在进行备份并且数据库已锁定。这可能需要很长时间,所以我可能需要显示进度条。 恢复时该如何做。据我了解,仅当用户已经开始使用该应用程序(并将数据输入数据库)时,还原才可能发生。因此,您不能假定只将备份的数据还原到位(删除空白或旧数据)。您必须以某种方式将其加入其中,由于id的原因,对于任何不重要的数据库都是不可能的。 还原完成后如何刷新应用程序而又不会使用户陷入某些无法访问的点。 我可以确定数据库已在备份或还原中升级吗?否则,预期的架构可能不匹配。

4
关于Android图片和资产大小
我需要澄清一些关于我的应用的图片资源的疑问, 如果我在xml文件中指定[图片视图]的高度为50度 我应该从资源文件夹中选择哪种类型的屏幕? drawable, hdpi, ldpi, mdpi, xhdpi, 具有50像素的高度图像, 与基本图像相比,较大,较小尺寸的图像所占的百分比是多少, 就像在iOS中,@ 2x实际上是图像大小的2倍,而您以编程方式说是正常大小, 谢谢!

13
Android:使用TextView.setText()对字符串的一部分进行着色?
我想通过.setText(“”)方法更改TextView视图的文本,同时还要给文本的一部分上色(或使其变为粗体,斜体,透明等),而不是其余部分。例如: title.setText("Your big island <b>ADVENTURE!</b>"; 我知道上面的代码是错误的,但是它有助于说明我想要实现的目标。我该怎么做?
86 android  textview 

5
SQlite获取最近的位置(经度和纬度)
我在SQLite数据库中存储了经度和纬度数据,我想获取与所输入参数最接近的位置(例如,我当前的位置-纬度/经度等)。 我知道这在MySQL中是可能的,并且我已经做了大量的研究,认为SQLite需要Haversine公式的自定义外部函数(计算球体上的距离),但是我还没有找到任何用Java编写并且可以工作的东西。 另外,如果要添加自定义功能,则需要org.sqlite.jar(用于org.sqlite.Function),这会为应用添加不必要的尺寸。 另一方面,我需要SQL的Order by函数,因为仅显示距离并不是什么大问题-我已经在我的自定义SimpleCursorAdapter中做到了,但是我无法对数据进行排序,因为我我的数据库中没有“距离”列。这意味着每次位置更改时都要更新数据库,这会浪费电池和性能。因此,如果有人对使用不在数据库中的列对光标进行排序有任何想法,我也将不胜感激! 我知道目前有大量使用此功能的Android应用程序,但是有人可以解释它的神奇之处。 顺便说一下,我找到了这种选择:在SQLite中查询以获取基于Radius的记录? 建议为lat和lng的cos和sin值添加4个新列,但是还有其他方法,不是那么多余吗?


11
Android NDK C ++ JNI(未找到本机实现…)
我正在尝试将NDK与C ++一起使用,并且似乎无法正确使用方法命名约定。我的本机方法如下: extern "C" { JNIEXPORT void JNICALL Java_com_test_jnitest_SurfaceRenderer_drawFromJni (JNIEnv* env, jclass c) { // } } 标题包装在extern“ C” {} aslo中。 一切都可以正常编译,创建一个.so文件,然后复制到我项目下的libs文件夹中,但是当我在Eclipse中调试并运行时,我不断收到一条日志消息,内容为“未找到针对本机的实现...”。因为所有NDK示例都在C中,所以我缺少什么吗? 谢谢。

12
Android片段。在屏幕旋转或配置更改期间保留AsyncTask
我正在开发一个智能手机/平板电脑应用程序,仅使用一个APK,并根据屏幕大小加载所需的资源,最好的设计选择似乎是通过ACL使用片段。 到目前为止,此应用程序一直运行良好,仅基于活动。这是一个模拟类,它说明了我如何处理“活动”中的AsyncTasks和ProgressDialogs以便即使在屏幕旋转或通信过程中发生配置更改时也能正常工作的情况。 我不会更改清单以避免活动的重演,我有很多理由不愿意这样做,但主要是因为官方文档说不建议这样做,而且到目前为止,我已经设法不使用它了,所以请不要建议路线。 public class Login extends Activity { static ProgressDialog pd; AsyncTask<String, Void, Boolean> asyncLoginThread; @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.login); //SETUP UI OBJECTS restoreAsyncTask(); } @Override public Object onRetainNonConfigurationInstance() { if (pd != null) pd.dismiss(); if (asyncLoginThread != null) return (asyncLoginThread); return super.onRetainNonConfigurationInstance(); } private void …

7
使用MediaPlayer在Android中流式传输来自URL的音频?
我一直在尝试使用Android内置的MediaPlayer类通过HTTP流mp3。该文档向我建议,这应该很简单: MediaPlayer mp = new MediaPlayer(); mp.setDataSource(URL_OF_FILE); mp.prepare(); mp.start(); 但是,我反复得到以下内容。我也尝试了不同的URL。请不要告诉我,流无法在mp3上播放。 E/PlayerDriver( 31): Command PLAYER_SET_DATA_SOURCE completed with an error or info PVMFErrNotSupported W/PlayerDriver( 31): PVMFInfoErrorHandlingComplete E/MediaPlayer( 198): error (1, -4) E/MediaPlayer( 198): start called in state 0 E/MediaPlayer( 198): error (-38, 0) E/MediaPlayer( 198): Error (1,-4) E/MediaPlayer( 198): Error (-38,0) 任何帮助,非常感谢,谢谢

9
adb devices命令不起作用
我正在运行Ubuntu 10.10 64位。我安装了ia32-libs以及Android Debug Bridge版本1.0.26。 我的问题: adb devices>>> ???????????? 没有权限 sudo adb devices >>>> sudo:adb:找不到命令 adb shell >>>错误:设备权限不足 我想这些都有关。这是相关信息。 $ echo $PATH /home/me/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/android-sdk-linux_x86/tools:/opt/android-sdk-linux_x86/platform-tools $ which adb /opt/android-sdk-linux_x86/platform-tools/adb $ adb devices * daemon not running. starting it now on port 5037 * * daemon started successfully * List of devices attached …
86 android  linux  ubuntu  adb 




By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.