Articles of null

对于某些手机,Android data.getData()从CameraActivity返回null

我的onActivityResult从相机活动回来时发生致命错误。 让我感到头疼的是,错误只发生在少数手机上(基于受影响的用户数量),而大多数人似乎没有任何问题。 我可以在我的Nexus 6(运行Lollipop 5.1.1)上复制错误,而我的Note 5(也是5.1.1)完全没有问题。 问题是当我尝试从data.getData()分配imageUri时。 在Note 5上调试,data.mData等于“content:// media / external / images / media / 2215”,而在Nexus 6上,data.mData为null。 我知道这是一个常见的问题,但到目前为止我还没有find任何帮助我的东西。 任何人都可以指出我的解决方案并提供答案吗? 方法启动结果的相机活动 @OnClick(R.id.change_image_camera) public void takePicture(){ Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);} onActvityResult @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode == Activity.RESULT_OK) { Uri imageUri = […]

使用Urban Airship推送通知在首次启动时将apID返回为null

我已成功将城市飞艇推送通知集成到我的Android应用程序中。 我遇到了一个问题,就是apID在第一次启动时变为null,然后在第二次启动时,apId正确。 这就是我抓住apId的方式: String apid = PushManager.shared().getAPID(); 这是我用过的类: public class MyApplication extends Application { public static SharedPreferences PREFS_TOKEN; public static final String PREFERENCE = “UrbanAirship”; public static String tokenKey; @Override public void onCreate(){ AirshipConfigOptions options = AirshipConfigOptions.loadDefaultOptions(this); UAirship.takeOff(this, options); PushManager.enablePush(); Logger.logLevel = Log.VERBOSE; // use CustomPushNotificationBuilder to specify a custom layout CustomPushNotificationBuilder nb = new […]

Android SQLite fts3:我应该插入什么:空值或空字符串?

我为具有多个列的Android应用程序创建了一个SQLite FTS3表。 该表由用户的输入填充。 但是,并非所有表列都应具有值。 示例:有一个名为PLURAL的列。 用户提交一个动词(不是名词),因此PLURAL列不应该有值。 我应该在PLURAL列中输入什么,NULL值或空字符串“”? 除了影响答案的逻辑外,如果我对空字符串值使用NULL,那么数据库性能是否有任何显着差异? 如果我使用NULL值,是否存在任何已知问题(例如抛出exception)? 我在网上搜索过,我在其他数据库上find了一些意见,但没有在SQLite fts3上find。 谢谢!

将结果ResultInfo {who = null,request = 1,result = -1,data = Intent {(has extras)}}传递给活动失败; 显示java.lang.NullPointerException

我为我的最后一年项目创建触发器和动作应用程序, 我将子活动结果返回到中间活动,然后向该活动添加一些数据并将其再次发送到主要活动, 我为Trigger子模块和Action子模块都做了,两者都是相同的编码…. 触发模块工作正常,但当动作模块运行应用程序时强制停止 和错误是 E/AndroidRuntime(5104): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=Intent { (has extras) }} to activity {mani.droid.mechanize/mani.droid.mechanize.ActionListActivity}: java.lang.NullPointerException 孩子onActivityResult public void onSave(View v) { if(txtNum.length() != 0) { String strTmp = null; Intent resultInt = new Intent(); strTmp = txtNum.getText().toString(); resultInt.putExtra(“Num”, strTmp); resultInt.putExtra(“SubName”, strTmp); setResult(Activity.RESULT_OK, resultInt); finish(); } else Toast.makeText(getApplicationContext(), “Please […]

删除最后一项时,Recyclerview崩溃。 NullPointerException:android.view.ViewGroup $ LayoutParams android.view.View.getLayoutParams()

我有一个recyclerview,使用arraylist填充。 当我从列表中删除项目时,它可以正常工作,直到最后一项被删除。 下面是我的recyclerview适配器中的代码,它删除了一个项目。 public void removeItem(int position) { itemsData.remove(position); notifyItemRemoved(position); } 下面是崩溃日志。 日志不会将我引导到我的代码中的指定位置。 所以我不确定是什么导致了这个问题。 我做了一些测试并记录了位置。 如果我在arraylist中添加一个项目并在recyclerview中添加了notifyItemInserted项目的位置,则为0.如果我点击添加的项目,则位置为0,如果我删除该项目,则将其从位置0移除,但是将项目移除为位置0时崩溃。 java.lang.NullPointerException:尝试在android.support.v7.widget.OrientationHelper $ 2.getDecoratedStart(OrientationHelper)上的空对象引用上调用虚拟方法’android.view.ViewGroup $ LayoutParams android.view.View.getLayoutParams()’。 java:316)at android.support.v7.widget.LinearLayoutManager.findOneVisibleChild(LinearLayoutManager.java:1633)at android.support.v7.widget.LinearLayoutManager.findFirstVisibleChildClosestToStart(LinearLayoutManager.java:1453)at android.support.v7.widget .LinearLayoutManager.computeScrollOffset(LinearLayoutManager.java:997)在android.support.v7.widget.LinearLayoutManager.computeVerticalScrollOffset(LinearLayoutManager.java:969)的android.support.v7.widget.RecyclerView.computeVerticalScrollOffset(RecyclerView.java:1175)at at android.view.View.canScrollVertically(View.java:12835)在android.support.v4.view.ViewCompatICS.canScrollVertically(ViewCompatICS.java:35)android.support.v4.view.ViewCompat $ ICSViewCompatImpl.canScrollVertically(ViewC) ompat.java:1136)在Android.support的android.support.v4.view.ViewCompat.canScrollVertically(ViewCompat.java:1528)android.support的android.support.v7.widget.RecyclerView $ LayoutManager.onInitializeAccessibilityEvent(RecyclerView.java:6594) .v7.widget.RecyclerView $ LayoutManager.onInitializeAccessibilityEvent(RecyclerView.java:6573)android.support.v7.widget.LinearLayoutManager.onInitializeAccessibilityEvent(LinearLayoutManager.java:204)at android.support.v7.widget.RecyclerViewAccessibilityDelegate.onInitializeAccessibilityEvent(RecyclerViewAccessibilityDelegate) .java:66)在android.support.Av.AccessibilityDelegateCompat $ AccessInDeitgateJellyBeanImpl $ 1.onInitializeAccessibilityEvent(AccessibilityDelegateCompat.java:228)android.support.v4.view.AccessibilityDelegateCompatJellyBean $ 1.onInitializeAccessibilityEvent(AccessibilityDelegateCompatJellyBean.java:56)at android。在android.view.View.sendAccessibilityEventUncheckedInternal(V)中查看.View.onInitializeAccessibilityEvent(View.java:5439) iew.java:5312)在android.sview.View.View $ AccessibilityDelegate.sendAccessibilityEventUnchecked(View.java:20823)android.support.AccessibilityAleibilityCompatIcs.sendAccessibilityEventUnchecked(AccessibilityDelegateCompatIcs.java:117)at android.support.v4.view .AccessibilityDelegateCompat $ AccessibilityDelegateIcsImpl.sendAccessibilityEventUnchecked(AccessibilityDelegateCompat.java:210)at android.support.v4.view.AccessibilityDelegateCompat.sendAccessibilityEventUnchecked(AccessibilityDelegateCompat.java:358)at android.support.v4.view.AccessibilityDelegateCompat […]

Android – openContactPhotoInputStream为所有联系人照片ID返回NULL

升级到Android 4.0 ICS后,我的应用程序(包含带图像的联系人列表)停止加载这些联系人的图像。 调试后,似乎以下行总是返回NULL。 InputStream input = ContactsContract.Contacts.openContactPhotoInputStream(cr, uri); 我没有改变应用程序,在升级到ICS后就开始发生了这种情况。 我有权限READ_CONTACTS。 有谁知道为什么会发生这种情况? 他们可以改变什么? 这种方法是弃用还是什么? 完整代码: public static Bitmap loadContactPhoto(ContentResolver cr, long id) { Uri uri = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, id); InputStream input = ContactsContract.Contacts.openContactPhotoInputStream(cr, uri); if (input == null) { return null; } return BitmapFactory.decodeStream(input); }

Android FragmentActivity在getActionBar()中返回null

我在Android Studio中导入了一个名为Horizo​​ntalPaging的Android示例项目,运行时它可以正常工作。 但是当我将代码复制到我的代码中时, 我在getActionBar()中得到一个NULL指针exception 。 我一整天都在阅读这些问题,但无法让它发挥作用。 尝试将整个代码从示例的MainActivity复制到我的项目中但没有改进,所以我猜测问题出现在其他文件中,如清单,样式等。 从示例项目复制MainActivity.java import android.app.ActionBar; import android.app.FragmentTransaction; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import java.util.Locale; public class View_Tabs extends FragmentActivity implements ActionBar.TabListener { SectionsPagerAdapter mSectionsPagerAdapter; ViewPager mViewPager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Load […]

SDK更新到5.0后,getActionBar()返回null

在我将Android SDK更新到5.0版之后,getActionBar()方法开始返回null,导致我的应用程序在启动时崩溃。 我对导致这种情况的原因一无所知,任何现有的Stackoverflow线程都无济于事。 这是我的清单: styles.xml: 8dp 5dp 8dp 5dp 的themes.xml: @style/ActionBar @style/OverflowButton @style/ActionBar @style/OverflowButton @drawable/menu @color/main @color/main 和我的gradle依赖项: dependencies { compile ‘com.github.jenzz.undobar:library:1.1:api8Release@aar’ compile ‘com.android.support:support-v4:21.0.0’ compile ‘com.android.support:appcompat-v7:21.0.0’ compile ‘com.loopj.android:android-async-http:1.4.5’ compile ‘com.nostra13.universalimageloader:universal-image-loader:1.9.3’ compile ‘com.google.android.gms:play-services:6.1.+’ } 任何帮助是极大的赞赏!

ArrayList自动添加空项

大家好。 我正在制作一个词汇表App,我需要创建一个List (或ArrayList)。 为此,我创建了以下代码(仅作为示例): List tempSOLUTION = new ArrayList(); String temp = “abc123”; tempSOLUTION.add(temp); 我也尝试了以下内容: tempSOLUTION.add(new String(temp)); 它们都将项添加到列表中,但在调试时,我发现它的数组有12个对象,如下所示: [abc123, null, null, null, null, null, null, null, null, null, null, null] 我的问题是我不能拥有那些空项,因为这个新列表是HashableMap上的键,所以任何更改都会导致exception,因为键不存在。 使用调试器的列表(tempSOLUTION)详细信息的屏幕截图: http : //www.pabloarteaga.es/stackoverflow.jpg 如何在不创建所有空项的情况下将项添加到列表中? 搜索完成后,我find了如何删除这些空项的答案,即: tempSOLUTION.removeAll(Collections.singleton(null)); 但它不适用于我的目的。 提前致谢。

在nullpointerexception的情况下,Java vs Objective C.

为什么Java经常抛出空指针exception,如果我尝试访问空值而Objective C没有? Java的: public class SubscribeEmailActivity { String status; public static void main(String[] args){ if(Status.equals(null)||status.equals(“”){ // i am getting error here } } } 目标C: //in .h file NSString *exp; //in .m file if ([exp isEqualToString:NULL] ||[exp isEqualToString:@””]) { // i am not getting any error }