Articles of android activity

无法启动活动资源$ NotFoundException

我已经在Google Play上发布并运行了几个月的应用程序。 今天我收到来自资源未findexception的用户的错误。 我以为我可能已经忘记了一些可绘制的东西。 从错误中我得到了对象ID(我从错误中获取了ID 0x7f030003 )并在R.java中查找它以确定缺少哪个对象。 令我惊讶的是,我从主要活动中find了IDI,所以我确定我没有忘记这一点! 我的应用程序从main开始,所有其他活动/片段都从它调用。 回去的时候,我刚刚完成了开放的活动,然后回到Main。 所以我的代码没有显式调用Main,所以我迷失了导致这种情况的原因。 我无法重现它,只有用户的报告。 我是否在寻找资源时遇到了一些错误? 可能会发生什么? inheritance人是我通过控制台收到的错误 java.lang.RuntimeException: Unable to start activity > ComponentInfo{com.myapp/com.myapp.MainActivity}: > android.content.res.Resources$NotFoundException: Resource ID > #0x7f030003 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) > 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 > […]

以编程方式在Android中启动“添加Google帐户”活动

我正在开发一个需要Google帐户才能使用某些选项的应用程序。 当没有检测到帐户时,选项被禁用,但我通过popup提示用户添加一个,如果用户单击是,则应该开始活动。 它可以正常显示全局“添加帐户”页面,但我想跳过那个不需要的额外步骤。 毕竟,如果需要Google帐户,为什么要向某人提供添加Exchange帐户的选项,这只是令人困惑。 所以我想默认使用新的Google帐户设置页面。 Java的 try { Intent intent = new Intent(); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setClassName( “com.google.android.gsf”, “com.google.android.gsf.login.AccountIntroActivity”); //if(getApplicationContext().getPackageManager().resolveActivity(intent, PackageManager.MATCH_DEFAULT_ONLY) != null) { getApplicationContext().startActivity(intent); //} else { //getApplicationContext().startActivity(new Intent(Settings.ACTION_ADD_ACCOUNT).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)); //} } catch ( ActivityNotFoundException e) { e.printStackTrace(); } 当我运行它时,抛出以下exception: 05-29 18:24:50.741:W / System.err(10875):android.content.ActivityNotFoundException:无法find显式活动类{com.google.android.gsf / com.google.android.gsf.login.AccountIntroActivity }; 你在AndroidManifest.xml中声明了这个活动吗? AndroidManifest.xml中 问题:我在这里缺少什么? 编辑: 我尝试使用addAccount采用不同的方法,这不起作用,没有任何反应,没有错误,没有新活动开始添加Google帐户。 顺便说一句,原始版本中的整个try catch块都在AlertDialog / listener中。 AccountManager […]

如何从不扩展Activity的类中使用setContentView(int)

我需要从另一个不扩展Activity的类中调用我的主Activity中的setContentView(int)。 在我的自定义类中,我有private Context context; 从构造函数中的Activity传递的var但我无法弄清楚如何使用contextvariables访问Activity方法。

将活动上下文传递给静态方法,内存泄漏的可能性?

我已经看到了这种启动活动的特殊技术,在我看来,由于静态上下文,我觉得这是一个坏主意,但我希望有人可能有这种方法背后的合理理由。 要启动的活动实现静态启动(Context context)方法,该方法设置intent,flags等,最后启动活动。 public static void launch(Context context){ Intent i = new Intent(context, SomeOtherActivity.class); // flag stuff context.startActivity(i); } 然后,DifferentActivity可以用一行启动SomeOtherActivity。 SomeOtherActivity.launch(DifferentActivity.this); 我喜欢它如何允许你在活动中设置标志,而不是启动它的DifferentActivity,但它似乎不足以合理地将该活动的上下文传递给静态方法。 这不会导致DifferentActivity不被垃圾收集,因为现在静态方法有引用吗? 这似乎是一个内存泄漏给我,可能不是一个好主意只是为了能够保持正在创建的活动中包含的标志。 这里有什么东西让我觉得这是一个很好的做法吗?

在Android市场中滑动标签栏

有没有人知道如何在Android市场中实现该栏(类别,特色,顶级付费…)我也在新版SuperUser中看到它,所以我知道它可以做到。 谢谢您的反馈!

当我从图库中选择图片时,onCreate在onActivityResult之后调用

我有’SherlockFragmentActivity’和’onActivityResult’。 我试图从相机和画廊获取图像并裁剪它。 问题是我在onActivityResult调用后返回我的活动而不是片段。 … FragmentTransaction t = fragmentManager.beginTransaction(); LogInFragment logFrag = new LogInFragment(); t.replace(R.id.fragment_container, logFrag); t.commit(); … @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); } 活动布局: 我也选择了’SherlockFragment’,我选择了图像: startImagePickerDialog(this); public void startImagePickerDialog() { AlertDialog.Builder myAlertDialog = new AlertDialog.Builder(getSherlockActivity()); myAlertDialog.setTitle(“Upload Pictures Option”); myAlertDialog.setMessage(“How do you want to set your picture?”); myAlertDialog.setPositiveButton(“Gallery”, […]

Android的Activity生命周期如何与整个应用程序相关?

这似乎没有很好地记录或我错过了,所以在我运行一堆我自己的测试之前,我想知道是否有人已经知道其中一些问题的答案。 首先,当我说“应用程序”时,我指的是扩展Application类。 http://developer.android.com/reference/android/app/Application.html 我的问题如下,有些是相关的。 当用户从应用程序中离开活动并转到另一个应用程序的活动时,即使它没有onPause(),应用程序也会以某种方式暂停。 或者在它的所有活动都被销毁之前它是否继续不受影响? 应用程序什么时候停止? 当它的所有活动都被销毁? 是否有可能在没有应用程序实例的情况下运行其中一个应用程序活动,或者如果其中一个活动执行,应用程序类是否始终存在? 如果应用程序上运行了某个进程,并且其活动全部暂停,那么该进程是否会继续运行? 应用程序是以任何方式通过轮换实现的,还是轮换只会改变活动? 谢谢

从活动中返回一个片段

我在Activity C中有三个片段,它们表现为制表符。 我必须从一个片段转到一个新的Activity X.现在我想回到Activity X的片段。 我有覆盖onBackPressed但不知道如何从Activity返回fragment / not fragmentActivity。 如果我想回到一个活动到另一个活动我覆盖背面按下并使用意图调用该活动.. 我想做这样的事情..这段代码是为了回到以前的活动 @Override public void onBackPressed() { Intent intent = new Intent(CurrentActivity.this,ActivityYouLikeToGo.class); intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); startActivity(intent); } 提前致谢..

如何从url打开后清除活动中的意图数据?

我有Activity ,可以直接从浏览器启动,调用url。 活动代码: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Uri data = getIntent().getData(); Log.d(getClass().getName(), “onCreate data=” + data); getIntent().replaceExtras(new Bundle()); getIntent().setAction(“”); getIntent().setData(null); getIntent().setFlags(0); if (data != null && isValidUrl(data)) { // open some special fragment } else { // open main fragment } } @Override protected void onDestroy() […]

无法删除活动中的标题栏

我想在我的活动之上删除标题。 我尝试了这两种方式,但不是api级别8。 1: true true 2: this.requestWindowFeature(Window.FEATURE_NO_TITLE); 知道为什么这对api 8无效吗? 一旦我设法在api 8删除它,但我不记得如何。 编辑: 解决了! 问题是this.requestWindowFeature(Window.FEATURE_NO_TITLE)在API 8上不起作用,并且true不起作用,但actionBar.hide()有效,原因是getSupportActionBar()返回null之前使用过两个选项之一,我只是忘了删除它们。 当我删除一个我添加其他(多么愚蠢!)谢谢所有! (抱歉英文不好)