Questions tagged «android»

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

18
Android-DataBinding-如何以及何时生成Binding类?
数据绑定指南国 By default, a Binding class will be generated based on the name of the layout file, converting it to Pascal case and suffixing “Binding” to it. The above layout file was activity_main.xml so the generate class was ActivityMainBinding. 何时将生成Binding类(在这里称为ActivityMainBinding)。我有编译时间错误。“无法解析ActivityMainBinding”。 ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.main_activity); 任何帮助表示赞赏。谢谢


7
是否可以在运行时从Android应用程序动态加载库?
有什么方法可以使Android应用程序在运行时下载和使用Java库? 这是一个例子: 想象一下,应用程序需要根据输入值进行一些计算。应用程序要求这些输入值,然后检查所需的Classes或Methods是否可用。 如果没有,它将连接到服务器,下载所需的库,然后在运行时将其加载以使用反射技术调用所需的方法。实现可能会根据各种标准(例如正在下载库的用户)而更改。

5
如何在Android中阻止通话
我想阻止来自几个号码的呼叫,为此,我想编写自己的应用程序。那么我应该使用哪些API? 基本上,我想在打来电话时得到通知,如果要阻止,我想比较号码,我想切断电话或将其静音,或者尽可能将其静音并记录下来。

8
为什么不能将AndroidJUnit4和ActivityTestRule导入单元测试类?
我在导入某些Android UI测试框架类时遇到了麻烦-我只是不知道出了什么问题! 这是我的课: @RunWith(AndroidJUnit4.class) @LargeTest public class ExampleUnitTest { @Rule public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule(MainActivity.class); @Test public void listGoesOverTheFold() { onView(withText("Hello world!")).check(matches(isDisplayed())); } } 但是由于某种原因,我得到了错误“找不到符号ActivityTestRule”和“找不到符号AndroidJUnit4”。我尝试导入它们,但找不到它们。 build.gradle中的依赖项设置为: compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.4.0' androidTestCompile 'com.android.support:support-annotations:23.4.0' androidTestCompile 'com.android.support.test:runner:0.4' androidTestCompile 'com.android.support.test:rules:0.4' androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1' androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2' 所以我想我已经完成了所有依赖项设置-我已经尝试了很多事情,但是没有运气。 谁有想法?

6
Android 9.0:不允许启动服务:应用程序在后台.. onResume()之后
我有一个音乐播放器,试图启动其中Service的onResume()一个Activity。为了清楚起见,我删除了几行,但是代码有效: @Override protected void onResume() { super.onResume(); startService(new Intent(this, MusicService.class)); } 根据崩溃日志,这在某些运行Android P的设备上引发异常: Caused by java.lang.IllegalStateException: Not allowed to start service Intent { cmp=another.music.player/com.simplecity.amp_library.playback.MusicService }: app is in background uid UidRecord{6a4a9c6 u0a143 TPSL bg:+3m25s199ms idle change:cached procs:1 seq(1283,1283,1283)} at android.app.ContextImpl.startServiceCommon(ContextImpl.java:1577) at android.app.ContextImpl.startService(ContextImpl.java:1532) at android.content.ContextWrapper.startService(ContextWrapper.java:664) at android.content.ContextWrapper.startService(ContextWrapper.java:664) at com.simplecity.amp_library.utils.MusicServiceConnectionUtils.bindToService(SourceFile:36) at com.simplecity.amp_library.ui.activities.BaseActivity.bindService(SourceFile:129) …

15
TextWatcher用于多个EditText
我想TextWatcher为多个EditText字段实现接口。目前我正在使用: text1.addTextChangedListener(this); text2.addTextChangedListener(this); 然后覆盖我的Activity中的方法: public void afterTextChanged(Editable s) {} public void beforeTextChanged(CharSequence s, int start, int count, int after) {} public void onTextChanged(CharSequence s, int start, int before, int count) { // do some operation on text of text1 field // do some operation on text of text2 field } …


7
以编程方式设置视图宽度
我正在尝试在代码中设置视图的宽度和高度,以显示我正在开发的免费应用的广告。除此广告外,所有用户界面均以XML完成。这是显示广告的代码。它在onCreate。 AdView adView = new AdView(this,"ad_url","my_ad_key",true,true); LinearLayout layout = (LinearLayout) findViewById(R.id.testing); adView.setAdListener(this); layout.addView(adView); 这样就可以像这样显示广告。如您所见,宽度并不能完全填满整个页面。 现在,当我将代码更改为此以尝试设置大小时: AdView adView = new AdView(this,"ad_url","my_ad_key",true,true); LinearLayout layout = (LinearLayout) findViewById(R.id.testing); adView.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); adView.setAdListener(this); layout.addView(adView); 我得到这个: 我尝试了的所有不同组合,FILL_PARENT并且WRAP_CONTENT都得到了相同的结果。我有什么想念的吗?还是可以通过其他方式让广告填充设备的宽度而不填充高度?任何建议和帮助,我们将不胜感激。 当我尝试将其放入XML时进行编辑时出现异常: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:id="@+id/main_layout"> <fragment android:name="com.jasoncrosby.app.tipcalculatorfree.MainButtonFragment" android:id="@+id/button_frag" android:layout_width="fill_parent" android:layout_height="fill_parent"/> <com.adsdk.sdk.banner.AdView android:id="@+id/banner" android:layout_width="fill_parent" android:layout_height="wrap_content"/> </LinearLayout> > …


19
在openSUSE 13.2中运行的Android Studio工作区中的设备权限不足
我有一个扎根的Motorola Defy +,它运行由Quarx创建的Cyanogenmod v11自定义ROM(每晚构建)。使用Android Studio Workspace(ASW)v.1.1.0,当我尝试在此设备上调试时, ????????????[null] 在“选择设备”窗口中列出,并显示“ Logcat”窗口 insufficient permissions for device 我真的很想将此设备和ROM用于调试目的。 当我lsusb从命令行输入时, Bus 002 Device 002: ID 22b8:431d Motorola PCS 这是摩托罗拉设备的正确设备ID。我已经/etc/udev/rules.d/在这些文件中使用正确的Motorola ID安装了51-android.rules和71-android.rules 。 我也尝试过从设备上的开发人员选项撤消USB调试权限,但是没有运气。 我没有尝试以root用户身份运行ASW,希望有其他选择。在那儿? 更新:我能够通过以下方式进入并访问ADB uvachem-gsmith2:/home/greg/Android/Sdk/platform-tools # ./adb 然后,我做了一个kill服务器,对root用户做了一个SU,然后重启了服务器。然后,我尝试从Android Studio连接到设备。在设备上收到一条有关从PC接受RSA密钥的消息,说“是”,然后便能够将应用程序部署到设备上。回到我最初的问题,是否有另一种无需root用户登录即可访问该设备的方法?似乎电话文件系统上存在权限问题,阻止了此操作... 更新#2这里的核心问题是权限问题。即使运行ADB为根将允许访问植根Android设备,更好的解决办法是改变权限在该设备的udev的文件...重置664到666,(见下面的答案)。这使PC可以访问设备上的文件系统。

15
在RecyclerView中进行单选
我知道recyclerview类中没有默认的选择方法,但是我尝试了以下方法, public void onBindViewHolder(ViewHolder holder, final int position) { holder.mTextView.setText(fonts.get(position).getName()); holder.checkBox.setChecked(fonts.get(position).isSelected()); holder.checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if(isChecked) { for (int i = 0; i < fonts.size(); i++) { fonts.get(i).setSelected(false); } fonts.get(position).setSelected(isChecked); } } }); } 在尝试这段代码时,我得到了预期的输出,但是完全没有。 我将用图像对此进行解释。 默认情况下,从我的适配器中选择第一项 然后,我尝试选择第2个,然后选择第3个,然后选择第4个,最后选择第5个, 在这里,应该只选择第5个,但是全部五个都被选中。 如果我将列表滚动到底部然后再回到顶部, 我达到了我的期望, 我该如何克服这个问题?还有一段时间,如果我快速滚动列表,则会选择其他项目。如何克服这个问题呢? 更新资料 …


5
ScrollView布局不能填满整个屏幕
我得到一个Activity带有2Fragment的(一个列出一个正常值)。并且法线Fragment对Scrollview包含一个LineaLayout(垂直)进行膨胀,并且此布局包含TextViews。在ScrollView和layout_width和layout_height的match_parent,所以我觉得应该用整个屏幕。但是在底部仍然有一个“差距”。我希望你能帮助我。 ScrollView.xml <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/scrollView1" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/titlescreen_bg" android:orientation="vertical" android:paddingTop="60dp" tools:context=".MainActivity" > <TextView android:id="@+id/tv_headline" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:paddingBottom="60dp" android:paddingTop="60dp" android:textIsSelectable="false" android:textSize="@dimen/fontsize_slogan_titlescreen" /> <TextView android:id="@+id/tv_content" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:paddingBottom="30dp" android:paddingTop="30dp" android:textIsSelectable="false" android:textSize="@dimen/fontsize_slogan_titlescreen" /> </LinearLayout> </ScrollView> 片段扩大了这种布局。 package wak.iage.layout; import wak.iage.R; import android.app.Fragment; import android.graphics.Color; import android.graphics.Typeface; …

11
Android从后堆栈中删除活动
好的,所以我对如何处理此事感到困惑。所以我有了MainActivity,可以从那里将一个Activity启动到DegreePlanActivity,然后从那里可以将另一个Activity启动到EditDegreePlan。我在AndroidManifest中将EditDegreePlan设置为noHistory。问题是在他们保存EditDegreePlan之后,它将启动一个Activity到DegreePlan。因此,如果用户按Back,则必须按两次以再次进入MainActivity。我想摆脱它,所以他们只需要按下一次即可。不过,我对如何执行此操作感到困惑。 如果我将DegreePlanActivity设置为noHistory,则他们在EditDegreePlan中无法按Back。 我尝试覆盖onBackPressed方法并启动MainActivity的意图。然后的问题是,他们必须多次按Back才能退出应用程序。 我该怎么办?
73 android  stack 

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.