Questions tagged «android»

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

18
如何解决Android Studio在执行Gradle任务时卡住的问题?
当我尝试构建/运行项目以及清理项目时,Android Studio(Beta)0.8.6卡住了。它保持响应状态,但是“ Gradle:执行任务”消息没有消失(我放弃时超过20分钟),并且该应用程序永远不会运行。 这是我尝试的: 使缓存无效/重启 强制退出并重新启动 从应用程序(在Mac上)中将其删除,然后从官方网站重新下载。


6
使用基于Gradle的配置时在Android Studio(IntelliJ)上运行简单的JUnit测试
我Android Studio/IntelliJ用来构建现有Android项目,并想添加一些简单的JUnit单元测试。添加此类测试的正确文件夹是什么? 所述机器人Gradle插件定义的目录结构与src/main/java主源代码和src/instrumentTest/java用于Android测试。 尝试在instrumentTest中添加我的JUnit测试对我不起作用。我可以将其作为Android测试运行(这就是该目录的用途),但这不是我想要的-我只想运行一个简单的JUnit测试。我尝试为此类创建一个JUnit运行配置,但是也没有用-我想是因为我使用的是标记为AndroidTest而不是Source的目录。 如果我创建一个新的源文件夹并将其标记为“项目结构”,则下次IntelliJ从gradle构建文件中刷新项目配置时,该文件夹将被擦除。 在基于gradle的android项目中配置JUnit测试的更合适的方法是IntelliJ什么?为此使用哪种目录结构?

16
在Android中,如何在类文件中以编程方式设置导航抽屉标题图像和名称?
在Android Studio 1.4.1中,我创建了一个默认的新导航抽屉项目。我的问题是在这个项目中有nav_header_main.xml文件,用于导航标题图像和名称。我希望在主班活动中以编程方式设置此图像和名称。如何执行此操作,我尝试了很多,但是应用程序崩溃了。 nav_header_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout android:layout_width="match_parent" android:id="@+id/headerView" android:layout_height="@dimen/nav_header_height" android:background="@drawable/side_nav_bar" android:gravity="bottom" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:theme="@style/ThemeOverlay.AppCompat.Dark"> <ImageView android:id="@+id/imageView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingTop="@dimen/nav_header_vertical_spacing" android:src="@android:drawable/sym_def_app_icon" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingTop="@dimen/nav_header_vertical_spacing" android:text="Android Studio" android:textAppearance="@style/TextAppearance.AppCompat.Body1" /> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="android.studio@android.com" /> </LinearLayout> activity_main.xml <?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawer_layout" …

6
如何以编程方式在Android中按下后退按钮?
在我的应用程序中,我具有注销功能。如果用户单击注销,它将转到主屏幕。现在,我通过按“后退”按钮退出我的应用程序。但是我想要的是我需要像退出按钮功能一样自动(即以编程方式)退出。我知道通过调用finish()可以完成此功能。但是,事情要转到上一个活动。

9
齐射JsonObjectRequest发布请求不起作用
我正在使用android Volley发出请求。所以我用这段代码。我不明白一件事。我在服务器中检查params始终为null。我认为getParams()无法正常工作。我应该怎么做才能解决这个问题。 RequestQueue queue = MyVolley.getRequestQueue(); JsonObjectRequest jsObjRequest = new JsonObjectRequest(Request.Method.POST,SPHERE_URL,null, new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject response) { System.out.println(response); hideProgressDialog(); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { hideProgressDialog(); } }) { protected Map<String, String> getParams() throws AuthFailureError { Map<String, String> params = new HashMap<String, …

2
在API 17之前从RelativeLayout删除规则
在API 17之前,如何从布局中删除规则?我有一个带有多个孩子的RelativeLayout。RelativeLayout是我的活动的主要布局。以编程方式添加规则后 RelativeLayout.LayoutParams layout = (LayoutParams) theChild.getLayoutParams(); layout.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); 我需要稍后以编程方式删除规则。假设API早于17,我该怎么做?

8
如何在Android中禁用或启用ViewPager刷卡
我要执行的操作:我正在尝试在程序运行时以编程方式启用/禁用在寻呼机中滑动 例如:在流程中,如果我检查条件并返回,则true启用刷卡,如果条件返回,则false禁用刷卡。 我正在使用的解决方案是这个 public class CustomViewPager extends ViewPager { private boolean enabled; public CustomViewPager(Context context, AttributeSet attrs) { super(context, attrs); this.enabled = true; } @Override public boolean onTouchEvent(MotionEvent event) { if (this.enabled) { return super.onTouchEvent(event); } return false; } @Override public boolean onInterceptTouchEvent(MotionEvent event) { if (this.enabled) { return super.onInterceptTouchEvent(event); …

8
为什么使用应用内结算设置开发人员有效负载很重要?
我正在使用应用内结算API的版本3。我有一个受管理的非消耗性物品。我尚未在我的应用程序中发布此功能,因此我想在购买之前确定购买的有效载荷内容。 来自“安全最佳实践”: 发出购买请求时设置开发人员有效负载字符串 使用应用内结算第3版API,在将购买请求发送到Google Play时,您可以包括“开发人员有效载荷”字符串令牌。通常,这用于传递唯一标识此购买请求的字符串令牌。如果您指定字符串值,则Google Play会返回此字符串以及购买响应。随后,当您对此次购买进行查询时,Google Play会返回此字符串以及购买详细信息。 您应该传递一个字符串令牌,该令牌可以帮助您的应用程序识别进行购买的用户,以便以后可以验证该用户是否进行了合法购买。对于消耗品,您可以使用随机生成的字符串,但是对于非消耗品,则应该使用唯一标识用户的字符串。 当您从Google Play取回响应时,请确保验证开发人员有效负载字符串与您先前与购买请求一起发送的令牌匹配。作为进一步的安全预防措施,您应该在自己的安全服务器上执行验证。 对与错,我决定不采取设置服务器以进行购买验证的“进一步的安全预防措施”。而且我不会存储自己的购买记录-我总是调用计费API。那么,我真的有理由进行此有效负载验证吗?验证API本身在举报购买商品之前肯定会验证用户的身份,并且如果攻击者破坏了设备(应用程序或Google Play API),我看不出对其进行额外检查会没有任何好处用户在设备上可以轻易绕过的身份。还是有我没有想到的这样做的理由?

15
未知属性android:layout_width,layout_height,id,重力,layout_gravity,padding
在所有android标签上获取未知属性错误。 在布局XML中,“自动建议”不会显示所有属性(例如layout_width,layout_height,orientation,orientation和所有其他android属性)。 这是快照 我为解决此问题所做的事情。 清理构建和重建 删除的.idea文件 无效的缓存/重新启动..选项 打开省电模式。 SDk是最新的。 在应用程序级别网格中 apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig { applicationId "com.example.abhishek.ondemandservice" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } 应用程序级别Gride。 buildscript { repositories { maven …

1
在Android自定义ROM中修改通话中的语音播放
我想修改Android OS(AOSP的官方图片),以将预处理添加到正常的电话播放声音中。 我已经实现了针对应用程序音频播放的过滤(通过修改HAL和audioflinger)。 我可以只定位特定的设备(Nexus 5X)。另外,我只需要过滤播放-我不在乎录制(上行链路)。 更新#1: 明确地说-我可以修改Qualcomm专用的驱动程序,或者可以在Nexus 5X上运行的任何部分,可以帮助我修改通话中的播放。 更新#2: 我正在尝试创建一个Java层应用程序,以将电话播放实时路由到音乐流。 我已经成功地安装它作为系统的应用程序,获得权限初始化AudioRecord用AudioSource.VOICE_DOWNLINK。但是,记录给出了空白样本。它不会录制语音电话。 这是我的工作线程中的代码: // Start recording int recBufferSize = AudioRecord.getMinBufferSize(44100, AudioFormat.CHANNEL_IN_STEREO, AudioFormat.ENCODING_PCM_16BIT); mRecord = new AudioRecord(MediaRecorder.AudioSource.VOICE_DOWNLINK, 44100, AudioFormat.CHANNEL_IN_STEREO, AudioFormat.ENCODING_PCM_16BIT, recBufferSize); // Start playback int playBufferSize = AudioTrack.getMinBufferSize(44100, AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.ENCODING_PCM_16BIT); mTrack = new AudioTrack(AudioManager.STREAM_MUSIC, 44100, AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.ENCODING_PCM_16BIT, playBufferSize, AudioTrack.MODE_STREAM); mRecord.startRecording();; mTrack.play(); int …

12
无法解决Manifest.permission.ACCESS_FINE_LOCATION
向清单文件添加权限时,以下xml起作用。 <permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 但是,此xml不起作用。 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 我应该使用哪一个?如果是第一个,为什么它不起作用?我该如何解决? 另外,我得到了与Android 6.0运行时权限相关的异常: java.lang.SecurityException: "gps" location provider requires ACCESS_FINE_LOCATION permission. 当我尝试将权限添加到String数组以检查权限时,Android StudioManifest.permission在以下代码中告诉我它无法解析: new String[]{Manifest.permission.ACCESS_FINE_LOCATION} 为什么会这样做呢?我该如何解决?

6
自定义对象的Android ArrayList-保存到SharedPreferences-可序列化吗?
我有一个对象的ArrayList。该对象包含“位图”和“字符串”类型,然后分别包含这两种类型的获取器和设置器。首先,位图可序列化吗? 我将如何对其进行序列化以将其存储在SharedPreferences中?我已经看到很多人都提出了类似的问题,但似乎没有一个很好的答案。如果可能的话,我希望有一些代码示例。 如果位图不可序列化,那么如何存储此ArrayList? 非常感谢。

7
如何在Android的TextView中将两行文本居中?
我想让它看起来像这样: | two | | lines | 这是当前的布局,根本无法使用。 <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="two\nlines" android:layout_gravity="center_vertical" android:layout_centerInParent="true"/> </RelativeLayout> 任何的想法?谢谢!


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.