Tag: android

Android Studio lint报告“无法推断参数types”。

我已经执行了以下命令,查看了Android Studio提供的项目的检查报告: Analyze->Inspect Code… 该报告指出我的gradle.build文件中的代码片段存在问题: buildTypes { release { runProguard false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' signingConfig signingConfigs.release } } 具体的问题是cannot infer argument types (at line 34) 。 为了清楚起见,我包含了一个快照。 一个SO 回答似乎表明这只是一个虚假的警告。 如果是这样的话,我可以安全地禁止这个警告吗?

unit testing一个Android片段

我想unit testing一个Android片段类。 我可以使用AndroidTestCase设置testing,还是需要使用ApplicationTestCase? 有没有任何有用的例子来说明如何使用这两个TestCases? 开发人员网站上的testing示例很less,似乎只关注testing活动。 我在别处find的所有例子都是AndroidTestCase类被扩展的,但是所有的testing都是将两个数字相加,或者如果使用Context,它只是简单地获取并testing一些不是null的东西! 据我所知,片段必须在活动中生存。 所以,我可以创build一个模拟的活动,或获得应用程序或上下文提供一个活动,我可以在其中testing我的片段? 我是否需要创build自己的Activity,然后使用ActivityUnitTestCase? 感谢你的协助。 崔佛

为什么在RecyclerView.Adapter的onBindViewHolder中添加一个OnClickListener被认为是不好的做法?

我有一个RecyclerView.Adapter类的下面的代码,它工作正常: public class MyAdapter extends RecyclerView.Adapter<MyAdapter.Viewholder> { private List<Information> items; private int itemLayout; public MyAdapter(List<Information> items, int itemLayout){ this.items = items; this.itemLayout = itemLayout; } @Override public Viewholder onCreateViewHolder(ViewGroup parent, int viewType) { View v = LayoutInflater.from(parent.getContext()).inflate(itemLayout, parent, false); return new Viewholder(v); } @Override public void onBindViewHolder(Viewholder holder, final int position) { Information item = […]

用户操作正在等待“build筑工作区”

正如所提到的标题,我已经在eclipse中开发了一个简单的NFC应用程序,我正试图在移动设备上运行它来debugging我的代码。 但是,当我尝试运行它时,这个消息出来了,问题甚至无法启动。 它说一个操作离开了,但似乎停止了。 有没有人遇到过类似的问题,或有人知道这里发生了什么?

无法将Eclipse中的ADT插件更新到版本23.0.0或更高版本

我是Android编程的初学者。 我的问题是,我无法更新ADT。 问题开始了,经过很长一段时间,我在Android SDK Manager中更新了Android SDK Tools。 然后我试图将一个项目导入工作区。 但是我无法导入,因为每次点击完成button,什么都没有发生。 然后我closuresEclipse并再次打开它,并向我显示以下错误: 我点击了检查更新,但没有find任何东西。 在互联网上我find了一个URL ,所以我点击了帮助 – >安装新软件 – >添加 – >并粘贴了这个URL。 当我点击下一步,它显示了我想要安装的项目列表,也是一个错误: Cannot complete the install because of a conflicting dependency. Software being installed: Tracer for OpenGL ES 23.0.0.1245622 (com.android.ide.eclipse.gldebugger.feature.feature.group 23.0.0.1245622) Software currently installed: Tracer for OpenGL ES 21.0.0.v201210310015-519525 (com.android.ide.eclipse.gldebugger.feature.group 21.0.0.v201210310015-519525) Only one of the following can […]

Android服务:onBind(Intent)和onUnbind(Intent)只被调用一次

我有活动和服务。 当Activity开始时,即使在Activity被销毁的时候,它也会调用startService()来使这个服务处于活动状态, bindService()与这个服务进行通信。 bindService()返回true, mService.onBind() ,并调用ServiceConnection.onServiceConnected() 。 所有的作品。 当我通过按回退键销毁我的活动,它调用unbindService() ,我的mService.onUnbind()被调用。 (我在这个onUnbind()返回false 。) 然后我再次启动这个Activity, bindService()返回true,然后mService.onBind() 不被调用! 但是ServiceConnection.onServiceConnected()被调用,并且全部重新运行。 看起来Dalvik记得我onBind()返回的onBind() ,并且不再调用onBind() 。 当我再次销毁我的Activity时, onUnbind() 不会被调用。 我可以绑定和解除绑定这个服务到我的Activity任意多次,但是这些方法不会被调用,直到我通过解除绑定和调用stopService()销毁服务。 在文档中我找不到任何这种行为的解释。 相反, 这个图表明,每次客户端绑定和取消绑定服务时,都应该调用onBind()和onUnbind() 。 这个数字可以在这个开发指南的底部find。

Android:如何获得准确的高度?

我只需要使用GPS进行精确的高度测量。 我尝试了Location.getAltitude(),但这是非常不准确的。 有什么build议?

IllegalStateException:<MyFragment>当前不在FragmentManager中

我知道这听起来像是FragmentStatePagerAdapter IllegalStateException的重复:<MyFragment>目前不在FragmentManager中,但他的解决scheme与我的情况无关。 我很less遇到以下崩溃: java.lang.RuntimeException:无法暂停活动{MyActivity}: … 由于:java.lang.IllegalStateException:Fragment MyFragment {40648258 id = 0x7f070051}目前不在android.support.v4.app.FragmentManagerImpl.putFragment(MT:516)的FragmentManager中android.support.v4.app.FragmentStatePagerAdapter .saveState(MT:185)在android.support.v4.view.ViewPager.onSaveInstanceState(MT:881) … 在android.app.Activity.onSaveInstanceState(Activity.java:1138)com.android.internal.policy.impl.PhoneWindow.saveHierarchyState(PhoneWindow.java:1522)android.view.View.saveHierarchyState(View.java:6238) )在MyActivity.onSaveInstanceState(MT:336)处的android.support.v4.app.FragmentActivity.onSaveInstanceState(MT:480) 这似乎是我从FragmentStatePagerAdapter无法理解的奇怪的代码: for (int i=0; i<mFragments.size(); i++) { Fragment f = mFragments.get(i); if (f != null) { if (state == null) { state = new Bundle(); } String key = "f" + i; mFragmentManager.putFragment(state, key, f); } } 它看起来像适配器从mFragments获取我的Fragment ,但不能将其状态添加到FragmentManager 。 […]

Android模拟器不旋转到风景

当我尝试切换模拟器的方向时, 模拟器窗口会旋转, 模拟器屏幕的方向将保持原样。 任何人都可以告诉我这是什么原因 ?我已经尝试了所有来自StackOverflow的答案,似乎没有任何帮助

如何在移动应用中为Android和iPhone实施推介计划

我们在Google Play商店和Apple AppStore中都有移动应用程序,我们希望实施推介计划以吸引更多用户安装和使用我们的应用程序。 这是用户故事: 每个新用户(例如约翰)都被赋予一个独特的推荐链接,他/她可以在这里分享到FB / TW /电子邮件或短信。 当约翰朋友点击链接时,他们被引导到各自的AppStore基于他们的设备。 约翰的朋友安装应用程序的时刻,并打开应用程序,我们的服务器应该得到通知,我们将知道,转介来自约翰,约翰将相应地奖励.. 我们已经评估了一些移动应用程序安装跟踪工具,大多数的工具是最好的使用发布者/手机广告.. 欣赏任何意见,build议 干杯詹姆斯