Questions tagged «android»

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

14
找不到翻新注释。(参数1)
我想从URL中获取RSS代码Retrofit,如果我在get批注中静态输入url,则一切正常,但使用动态url时会出错。 我的界面服务: public interface AllNewsService { @GET("/fa/rss/{url}") void getRss( @Path("url") String nGroup , Callback<AllNewsRss> callback);} 并调用getRss方法: DataGetter dg = new DataGetter(); dg.get().getRss("allnews" ,new Callback<AllNewsRss>() { @Override public void success(AllNewsRss allNewsRss, Response response) { Log.d(TAG,"success"); } @Override public void failure(RetrofitError error) { Log.d("*********",error.toString()); } 我收到以下错误: retrofit.RetrofitError: AllNewsService.getRss: No Retrofit annotation found. …


4
Android ImageView大小不随源图像缩放
我在LinearLayout中有一些ImageViews。我需要按比例缩小ImageViews,以便它们在垂直安装到LinearLayout中的同时保持其长宽比。在水平方向上,我只需要它们彼此相邻即可。 我为此做了一个简化的测试台,它嵌套了加权版面,因此我为ImageViews设置了一个宽但不是很高的LinearLayout- <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:id="@+id/linearLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="5"> <LinearLayout android:id="@+id/linearLayout3" android:layout_height="fill_parent" android:layout_width="fill_parent" android:layout_weight="1"> <ImageView android:id="@+id/imageView1" android:layout_height="wrap_content" android:layout_width="wrap_content" android:src="@drawable/test_image" android:scaleType="fitStart"></ImageView> <ImageView android:id="@+id/imageView2" android:layout_height="wrap_content" android:layout_width="wrap_content" android:src="@drawable/test_image" android:scaleType="fitStart"></ImageView> </LinearLayout> <LinearLayout android:id="@+id/linearLayout4" android:layout_height="fill_parent" android:layout_width="fill_parent" android:layout_weight="1"></LinearLayout> </LinearLayout> <LinearLayout android:id="@+id/linearLayout2" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1"></LinearLayout> </LinearLayout> (在Eclipse布局编辑器中,图像是垂直剪切的,根本没有缩放-但这只是我们学到的特质之一) 在硬件上运行时,图像会缩放到正确的高度,同时保留其宽高比。我的问题是它们彼此不相邻。每个ImageView的高度与LinearLayout的高度正确匹配。每个ImageView的宽度是未缩放图像的宽度-实际按比例缩小的图像显示在其ImageViews的左侧。因此,图像之间的差距越来越大。 理想情况下,我希望通过XML进行管理,如果不可能的话,我知道使用自定义视图可能是最好的解决方案。 我尝试创建一个覆盖onMeasure的IconView(扩展ImageView)类,以便可以根据高度缩放宽度来创建所需大小的图像视图。但是传递给函数的parentWidth和parentHeight是屏幕的尺寸,而不是LinearLayout容器的尺寸。 @Override …

13
Firebase onTokenRefresh()不被调用
在我MainActivity的日志中,我可以看到令牌的使用FirebaseInstanceId.getInstance().getToken()并显示生成的令牌。但是似乎在我 MyFirebaseInstanceIDService将其扩展到的地方FirebaseInstanceIdService,onTokenRefresh()未调用,在此函数中据说令牌是在此处最初生成的。我需要打电话给我,sendRegistrationToServer()这就是为什么我试图知道为什么它没有出现在其中的原因onTokenRefresh()。 这是我的代码 public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService { @Override public void onTokenRefresh() { // Get updated InstanceID token. String refreshedToken = FirebaseInstanceId.getInstance().getToken(); Log.d(TAG, "Refreshed token: " + refreshedToken); sendRegistrationToServer(refreshedToken); } }

17
Android Studio 2.0-插件版本太旧,请更新至最新版本,或将ANDROID_DAILY_OVERRIDE环境变量设置为
我更新了Android Studio版本2.0,并正常使用。我今天创建一个新项目时,它显示错误插件太旧,请更新为较新版本,或将ANDROID_DAILY_OVERRIDE环境变量设置为 我意识到只有在创建新项目时才会出现此问题。在以前开发的项目中,不会发生此问题,我意识到gradle是不同的 classpath 'com.android.tools.build:gradle:1.3.0'。 我必须使用相同的旧项目进行更新吗? 我的app / build.gradle apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig { applicationId "luizugliano.com.br.teste" minSdkVersion 16 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) …
72 android 

4
Android Studio错误:错误:CreateProcess错误= 216,此版本的%1与您正在运行的Windows版本不兼容
安装了Android Studio 2.2 Preview 2并收到此错误: 错误:CreateProcess错误= 216,此版本的%1与您正在运行的Windows版本不兼容。检查计算机的系统信息,然后与软件发行商联系 屏幕截图: 我重新安装了JDK,仍然是同样的问题。 我什至尝试使用嵌入式JDK,但仍然存在相同的问题:

2
找不到com.google.android.gsf包
我正在尝试使用新的Google Cloud Messaging系统,但存在一些问题。 我阅读了入门文档并查看了演示应用程序;之后,我将要求应用于应用程序,然后使用API​​ 16创建了一个新的虚拟设备。 但是,当我尝试将设备注册到GCM时,由于以下原因,它失败了: GCMRegistrar.checkDevice(getApplicationContext()); 在logcat中,我看到以下错误: 07-05 07:06:31.925: E/AndroidRuntime(691): FATAL EXCEPTION: main 07-05 07:06:31.925: E/AndroidRuntime(691): java.lang.UnsupportedOperationException: Device does not have package com.google.android.gsf 07-05 07:06:31.925: E/AndroidRuntime(691): at com.google.android.gcm.GCMRegistrar.checkDevice(GCMRegistrar.java:83) 07-05 07:06:31.925: E/AndroidRuntime(691): at aero.tav.mobile.genel$4.onClick(genel.java:201) 07-05 07:06:31.925: E/AndroidRuntime(691): at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:166) 07-05 07:06:31.925: E/AndroidRuntime(691): at android.os.Handler.dispatchMessage(Handler.java:99) 07-05 07:06:31.925: E/AndroidRuntime(691): at android.os.Looper.loop(Looper.java:137) 07-05 …


4
如何在Android上更改主机文件
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow的主题。 8年前关闭。 改善这个问题 我已经成功地将我的Samsung Galaxy Mini(android 2.2.1)植根,并认为我可以更改任何内容(通常是root可以更改)。 我想更改android上的hosts文件,使其包含一些本地地址。但是,我仍然收到消息,我没有权限执行此操作。我尝试了以下选项: adb push /path/to/my/new/hosts /system/etc...我得到了回应Read-only file system。 直接在手机外壳上。但这也不起作用。我可以su在控制台中执行操作,但是不能更改文件。 作为超级用户,我不允许更改某些文件,这很奇怪吗?
72 android  hosts 

4
当片段被替换并放回堆栈(或取出)时,它是否保留在内存中?
行为是否类似于“活动”的工作方式?例如,使用活动,它的工作方式如下: 活性的启动活动B,而乙是在屏幕上,该系统能够以除去甲从存储器如果它是由系统所需的。按BACK后,将重新创建A到内存中,就好像它从未放在第一位一样。 我一直在寻找对Fragments在内存方面会发生什么的清晰解释,但没有发现任何东西。是否以相同的方式工作?例如: 活动C在其布局中具有片段F。然后,在某个点F被Fragment G替换,但是F保留在其后堆栈中。 威尔˚F留在内存中,直到ç被杀害或者可以在由系统根据需要被删除? 我真正要问的是,如果我在一个Activity中有复杂的片段后退堆栈,是否会出现内存不足的风险?

10
Android致命信号11
在我在Android上开发的应用中,我不断收到致命信号11错误。 我认为这与我访问内存的方式有关,但我不知道是什么原因造成的。 任何帮助都感激不尽! 这是LogCat: 05-02 23:47:17.618: D/dalvikvm(590): GC_FOR_ALLOC freed 68K, 4% free 6531K/6787K, paused 101ms 05-02 23:47:17.638: I/dalvikvm-heap(590): Grow heap (frag case) to 7.619MB for 1228816-byte allocation 05-02 23:47:17.738: D/dalvikvm(590): GC_CONCURRENT freed 1K, 4% free 7730K/8007K, paused 5ms+14ms 05-02 23:47:17.878: D/dalvikvm(590): GC_FOR_ALLOC freed <1K, 4% free 7730K/8007K, paused 37ms 05-02 …
72 java  android  crash  signals 

4
ARKit vs. ARCore vs. Vuforia vs. D'Fusion Mobile vs. Layar SDK
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 改善这个问题 我想知道,每种基于视觉的移动增强现实框架的优缺点在哪里?在哪种情况下应决定什么?您是否会选择Vuforia,因为它是免费的且没有品牌?其中一个框架缺少哪些重要功能?免费版本的Metaio SDK是否有限制(商标和Metaio启动画面除外)? 我认为这些是支持iOS和Android的最重要的框架。我知道metaio不支持电影纹理,并且不支持MD2(动画)导出和Vuforia(至少不处于基本状态)。 编辑: 这是一个3小时的会议,回顾了市场上最好的Mobile AR SDK以及如何开始使用它们:教程:面向开发人员的十大增强现实SDK 您还应该从增强现实实验室SL中检查ARLab。ARLab具有用于AR浏览器,图像匹配,图像跟踪,3D引擎,虚拟按钮的不同AR-SDK。但这不是免费的。 Wikitude的ARchitect SDK具有Vuforia-Extension和Blackberry 10支持。这也可能非常有趣。 该拉亚SDK现在可用于iOS和Android的3D,动画,视频AR和QR码扫描仪 DARAM也是Android,iOS,Windows 8和Mac的良好SDK。 ARPA有一个Unity-Plugin和一个Google Glass SDK。 这是增强现实SDK和框架的比较表 苹果已经收购了Metaio。Metaio的未来不确定。(2015年5月28日) Magic Leap宣布推出用于虚幻和Unity的增强现实开发人员SDK Vuforia现在已经支付了许可费,并且能够在其免费Starter计划中不带水印的情况下演示应用程序-现在仅在特定日期的首次应用程序发布期间出现。这是为了支持希望在不显示水印的情况下向客户进行演示的开发人员。(2015年5月6日),高通将其Vuforia业务出售给PTC(2015年10月12日) ARKit iOS 11引入了ARKit,这是一个新框架,可让您轻松地为iPhone和iPad创建无与伦比的增强现实体验。通过将数字对象和信息与您周围的环境融合在一起,ARKit将应用程序带到了屏幕之外,使它们能够以全新的方式与现实世界进行交互。(2017年6月) 8th Wall XR是世界上第一个可在所有常用的iOS和Android手机上运行的AR平台,并与ARKit和ARCore无缝集成。(2017年8月) ARCore是Google对苹果ARKit的回应。它旨在以相对简单的方式为所有Android手机带来增强现实功能。它还替代了需要专用硬件才能运行的探戈计划。

2
使用本地图块的TileProvider
我想使用TileProvider最新的Android Maps API(v2)的新功能在上覆盖一些自定义图块GoogleMap。但是,由于我的用户很多时候都无法上网,因此我希望将图块保存在设备上的zipfile / folder结构中。我将使用Maptiler和来生成我的图块geotiffs。我的问题是: 将磁贴存储在设备上的最佳方法是什么? 如何创建返回本地图块的TileProvider?

6
如何在Android中按名称访问可绘制资源
在我的应用程序中,我需要将一些位图可绘制对象放置在不想保留reference的位置R。因此,我创建了一个类DrawableManager来管理可绘制对象。 public class DrawableManager { private static Context context = null; public static void init(Context c) { context = c; } public static Drawable getDrawable(String name) { return R.drawable.? } } 然后我想通过这样的名称获取drawable(将car.png放在res / drawables内): Drawable d= DrawableManager.getDrawable("car.png"); 但是,如您所见,我无法通过名称访问资源: public static Drawable getDrawable(String name) { return R.drawable.? } 还有其他选择吗?
72 android  drawable 

10
在Android上刷新Adapter / ListView的最佳方法
我的书“ Hello Android”提供了一种使用自定义数据库帮助程序,设置游标,然后按如下所示设置适配器的方式: Cursor cursor CustomDatabaseHelper test = new CustomDatabaseHelper(this); try { cursor = getData(); showData(cursor); } finally { test.close(); } 但是,有了这个,每次我需要刷新数据集时,我都需要继续运行此代码块(由于“ this”不可用,因此按钮的onClick()内会有点困难。 这是刷新数据集的最佳方法,还是我应该着眼于删除.close并发出adapter.notifyDataSetChanged()?如果这样做,有时我会被迫关闭(目前我不记得了),但有时无法正确删除-我认为这可能是因为数据库当前处于打开状态,并且尝试再次打开。 我们是否还应该在Class中(在OnCreate之外)声明Cursors,DatabaseHelpers和Adapter的变量,以便所有功能都可以访问它们? 我意识到这在现阶段只是差劲的编程,但是我试图获得一些有关最佳做事方法的指导。

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.