Questions tagged «android»

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



3
卸载时未清除SharedPreferences
好吧,这是一个奇怪的事情,我认为这是不可能的。 因此,自从我使用Nexus 5X以来,卸载应用程序时就不会擦除SharedPreferences。 我通过Android Studio安装该应用程序并进行了测试。然后,我卸载该应用程序。然后,我通过Android Studio打包应用程序,所有SharedPreferences值仍然存在。 除了卸载,我还尝试清除数据/缓存。在所有这些尝试中,SharedPreferences都是持久的。 我在Nexus 5X上使用的是现货Android 6.0。我的设备未植根。我没有使用自定义ROM。Nexus 4没有这个问题。 任何想法可能是什么原因造成的?
70 android 


4
从后堆栈中取出碎片
将平板电脑纵向放置时,活动中有3个片段。但是,在风景中时,我只有两个这样的片段。我遇到的问题是,从肖像到风景时,活动正在创建第三个片段。我收到错误消息,因为无法创建此片段。 我已经知道正在创建此片段,因为它位于后堆栈中。 我试图通过使用onDestroy方法删除片段 FragmentTransaction f = fragmentManager.beginTransaction(); f.remove(mf); f.commit(); 但是我收到一个错误,说在onSaveInstanceState之后我不能使用此功能 将这个片段从后栈中取出的正确方法是什么? 更新资料 我可能应该补充一点,我遇到问题的片段是该库中的mapFragment https://github.com/petedoyle/android-support-v4-googlemaps 我的使用方式就像这样 mf = MapFragment.newInstance(1, true); ft = fragmentManager.beginTransaction(); ft.replace(R.id.mapContainer, mf); ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE); ft.addToBackStack("map"); ft.commit();

6
ScrollView中的不可滚动ListView
我试图做这样的布局: 问题是我不希望ListViews滚动。我希望它们达到所需的高度,并使整个屏幕可滚动。如果我将的高度设置ListView为wrap_content,则无法使用。使它起作用的唯一方法是设置一个特定的高度-但我不知道其中有多少个项目ListView。 我知道我不应该把ListView内ScrollView-但我不希望ListView是滚动的,只是为了显示所有项目。 也许有更好的方法可以使它起作用?

4
将android logcat数据写入文件
每当用户想要收集日志时,我都希望将Android logcat转储到文件中。通过adb工具,我们可以使用重定向日志到文件adb logcat -f filename,但是我该如何编程呢?
69 android  logging 

17
Android Emulator快照错误
在eclipse 3.7.0中启动我的应用程序时,出现错误... 模拟器]模拟器:错误:无法从快照加载Vm。快照已保存为其他硬件配置。 我已经无数次地运行了此应用程序,但是现在显示此错误。我已经检查了我的AVD Manager,并且我的平台和API级别正确。

5
使用navigationUpFromSameTask()从活动返回
我有两个活动A和B。第一次启动活动A时,它访问Intent传递给它的内容(因为Bundleis null,因为它应该是第一次通过),并相应地显示信息: CustInfo m_custInfo; ... protected void onCreate(Bundle savedInstanceState) { ... Bundle bundle = (savedInstanceState == null) ? getIntent().getExtras() : savedInstanceState; m_custInfo = (CustInfo) m_bundle.getSerializable("CustInfo"); if (m_custInfo != null ... } 第一次运行正常。该EditText控制和ListView正确地填写。 现在,单击列表中的项目时,活动B开始显示详细信息: m_custInfo = m_arrCustomers.get(pos); Intent intent = new Intent(A.this, B.class); intent.putExtra("CustInfo", m_custInfo); // CustInfo is serializable // printing …

30
Android:无法实例化活动/ ClassNotFoundException
我最近在市场上发布了一个应用程序,但现在出现了一些用户错误,该应用程序启动时可能崩溃了。不幸的是,我无法直接与他联系,并且该应用程序在模拟器以及我的手机(以及某些朋友的手机)上都可以正常运行。编辑:我想这会发生在不止一个用户上,因为我在市场上收到了诸如“开始崩溃”或“不起作用”之类的评论。我只收到了这一个堆栈跟踪信息,但没有有关配置,设备,Android版本等的信息。 该应用程序是一个简单的音板,因此实际上不涉及任何魔术,但我不知道为什么它在某些手机上会失败。这是我得到的堆栈跟踪信息,希望任何人都可以帮助我: java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.my.app/com.my.app.SoundMachine}: java.lang.ClassNotFoundException: com.my.app.SoundMachine in loader dalvik.system.PathClassLoader[/mnt/asec/com.my.app-1/pkg.apk] at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2585) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) at android.app.ActivityThread.access$2300(ActivityThread.java:125) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:123) at android.app.ActivityThread.main(ActivityThread.java:4627) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:521) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:876) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:634) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.ClassNotFoundException: com.my.app.SoundMachine in loader dalvik.system.PathClassLoader[/mnt/asec/com.my.app-1/pkg.apk] at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243) at java.lang.ClassLoader.loadClass(ClassLoader.java:573) …

8
android活动已泄漏窗口com.android.internal.policy.impl.phonewindow $ decorview问题
我正在使用Android应用程序来显示网络错误。 NetErrorPage.java package exp.app; import android.app.Activity; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.Bundle; import android.view.KeyEvent; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class NetErrorPage extends Activity implements OnClickListener { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.neterrorlayout); Button reload=(Button)findViewById(R.id.btnReload); reload.setOnClickListener(this); showInfoMessageDialog("Please check your …

6
Lollipop AppCompat-v7 21-属性“主题”已经定义
我想升级项目以支持Android Lollipop和API 21,因此我将依赖项下的AppCompat版本更改为21.0.0,并将目标SDK更改为21。 但是现在,当我尝试与gradle文件同步项目时,它给了我102 errors以前没有的东西: 1个错误"Attribute 'theme' has already defined"-由我的colors.XML文件给出, 另有101个错误("no resources found that matches the given name..."大部分是重大错误)-由"build/intermediates/exploded-aar/com.android.support/appcompat-v7/21.0.0/res/values-v11/values.XML"。 已使用Android Studio 0.8.9 Beta更新了Android SDK软件中的所有SDK工具。 有人可以帮忙吗?谢谢。


11
如何处理多片段活动中的onContextItemSelected?
我目前正在尝试调整我的应用程序以使用“ Android v4兼容性库”,甚至向Android 1.6用户提供使用片段的好处。 上下文菜单的实现似乎很棘手: 该应用程序的主要活动是扩展FragmentActivity 类。 片段全部基于扩展Fragment类的一类。 片段类正在其onCreateView()方法中调用 registerForContextMenu(),并覆盖了 onCreateContextMenu()和onContextItemSelected()方法。 对于onCreateContextMenu()来说,它工作得很好。上下文菜单从资源文件中放大,并根据所选项目(即使该片段不是ListFragment,也基于listView ...)进行了少许修改。 选择上下文菜单项时,会发生此问题。 从第一个添加的片段开始,为所有当前存在的片段调用onContextItemSelected()。 在我的情况下,这些片段用于显示文件夹结构的内容。当打开子文件夹片段的上下文菜单并选择菜单项时,首先在较高级别上调用onContextItemSelected()(取决于此刻允许/可见的片段数量)。 现在,我使用活动级别的字段的变通方法,该字段包含调用其onCreateContextMenu()的最后一个片段的标签。这样,当存储的标签与getTag()不同时,我可以在onContextItemSelected()的开头调用“ return super.onContextItemSelected(item)” 。但是这种方法对我来说有点脏。 为什么在所有片段上调用onContextItemSelected()?不仅仅是调用onCreateContextMenu()的那个吗? 处理此问题的最优雅方法是什么?

6
检索父项时出错:找不到与给定名称“ android:TextAppearance.Material.Widget.Button.Borderless.Colored”匹配的资源
我在android studio中启动新项目时收到这些错误。 错误:(1)检索项目的父项时出错:未找到与给定名称'android:TextAppearance.Material.Widget.Button.Borderless.Colored'相匹配的资源。 错误:(1)检索项目的父项时出错:未找到与给定名称'android:TextAppearance.Material.Widget.Button.Borderless.Colored'相匹配的资源。 错误:任务':app:processDebugResources'的执行失败。com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:处理'command'C:\ Program Files(x86)\ Android \ android-sdk \ build-tools \ 23.0.2 \ aapt .exe''以非零退出值1结束 android项目中的文件包含错误如下: <?xml version="1.0" encoding="utf-8"?> <resources> <style name="Base.TextAppearance.AppCompat.Widget.Button.Borderless.Colored" parent="android:TextAppearance.Material.Widget.Button.Borderless.Colored"/> <style name="Base.TextAppearance.AppCompat.Widget.Button.Colored" parent="android:TextAppearance.Material.Widget.Button.Colored"/> <style name="TextAppearance.AppCompat.Notification.Info.Media"/> <style name="TextAppearance.AppCompat.Notification.Media"/> <style name="TextAppearance.AppCompat.Notification.Time.Media"/> <style name="TextAppearance.AppCompat.Notification.Title.Media"/> </resources> build.gradle: apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig { applicationId …

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.