我正在按照从Linkedin获取数据的步骤。但是我收到了错误:
04-25 15:19:09.516 3078-3078 / app.plusconnect.com.linkedindummy E / AndroidRuntime:FATAL EXCEPTION:main android.content.res.Resources $ NotFoundException:资源ID#0x0
public class MainActivity extends ActionBarActivity {
//declaration
SocialAuthAdapter adapter;
Button linkedin_button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
adapter = new SocialAuthAdapter(new ResponseListener());
linkedin_button = (Button)findViewById(R.id.SubmitButton);
linkedin_button.setBackgroundResource(R.mipmap.linkedin);
linkedin_button.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
adapter.authorize(MainActivity.this, Provider.LINKEDIN);
}
});
}
public class ResponseListener implements DialogListener {
@Override
public void onComplete(Bundle bundle) {
adapter.getUserProfileAsync(new ProfileDataListener());
}
@Override
public void onError(SocialAuthError socialAuthError) {
}
@Override
public void onCancel() {
}
@Override
public void onBack() {
}
}
public class ProfileDataListener implements SocialAuthListener<Profile> {
@Override
public void onExecute(String s, Profile profile) {
Log.d("Custom-UI", "Receiving Data");
Profile profileMap = profile;
Log.d("Custom-UI", "Validate ID = " + profileMap.getValidatedId());
Log.d("Custom-UI", "First Name = " + profileMap.getFirstName());
Log.d("Custom-UI", "Last Name = " + profileMap.getLastName());
Log.d("Custom-UI", "Email = " + profileMap.getEmail());
Log.d("Custom-UI", "Country = " + profileMap.getCountry());
Log.d("Custom-UI", "Language = " + profileMap.getLanguage());
Log.d("Custom-UI", "Location = " + profileMap.getLocation());
Log.d("Custom-UI", "Profile Image URL = " + profileMap.getProfileImageURL());
}
@Override
public void onError(SocialAuthError socialAuthError) {
}
}
}
这是布局文件
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
<TextView
android:id="@+id/textMessage"
android:padding="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="Test Connect application like to fetch Profile details from LinkedIn Account."/>
<!-- Submit button -->
<Button
android:id="@+id/SubmitButton"
android:layout_width="200dp"
android:layout_height="40dp"
android:layout_marginBottom="20dp"
android:background="@android:color/holo_blue_dark"
android:text="Fetch from LinkedIn"
android:textColor="@android:color/white"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"/>
我在logcat中遇到以下错误:
04-25 15:19:09.456 3078-3078/app.plusconnect.com.linkedindummy W/ResourceType﹕ No package identifier when getting value for resource number 0x00000000
04-25 15:19:09.477 3078-3078/app.plusconnect.com.linkedindummy W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception (group=0x409c01f8)
04-25 15:19:09.516 3078-3078/app.plusconnect.com.linkedindummy E/AndroidRuntime﹕ FATAL EXCEPTION: main
android.content.res.Resources$NotFoundException: Resource ID #0x0
at android.content.res.Resources.getValue(Resources.java:1018)
at android.content.res.Resources.getDrawable(Resources.java:663)
at org.brickred.socialauth.android.SocialAuthDialog.setUpTitle(SocialAuthDialog.java:191)
at org.brickred.socialauth.android.SocialAuthDialog.onCreate(SocialAuthDialog.java:146)
at android.app.Dialog.dispatchOnCreate(Dialog.java:353)
at android.app.Dialog.show(Dialog.java:257)
at org.brickred.socialauth.android.SocialAuthAdapter$4$1.run(SocialAuthAdapter.java:649)
at android.os.Handler.handleCallback(Handler.java:605)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4424)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
at dalvik.system.NativeStart.main(Native Method)
问题出在哪里?有人可以帮忙吗?
答案 0 :(得分:3)
SocialAuth
要求drawable
文件夹中包含您要整合的每项服务的图片。
您可能没有这些图片,并且在尝试加载图片时SocialAuth
崩溃了。要解决此问题,只需为drawable
文件夹中的每个服务添加一张图片(例如linkedin.png,twitter.png,facebook.png。
答案 1 :(得分:0)
请检查一下这张图片是否存在?
linkedin_button.setBackgroundResource(R.mipmap.linkedin);
答案 2 :(得分:0)
首先,LinkedIn推出了适用于Android的新移动SDK。如果仅使用https://developer.linkedin.com/docs/android-sdk,您将获得官方支持。
看看它非常简单。首选使用Android Studio进行LinkedIn集成。
答案 3 :(得分:0)
收到此类错误时
Android.Content.Res.Resources+NotFoundException: Resource ID #0x0 xamarin
然后请转到android项目中的resources文件夹,并以小字符命名您的图片文件