안드로이드 개발 질문/답변
(글 수 45,052)
preferences 에서 특정 항목을 누르면 몇가지 정보가 입력된 상태로 email 을 실행시키려고 합니다.
preferences.xml
<PreferenceScreen
android:title="@string/sendFeedBack"
android:summary="@string/sendFeedBackSummary">
<intent android:action="com.msgcenter.FeedbackReceiver"/>
</PreferenceScreen>
AndroidManifest.xml
<receiver android:name=".FeedbackReceiver">
<intent-filter>
<action android:name="com.msgcenter.FeedbackReceiver" />
</intent-filter>
</receiver>
FeedbackReceiver.java
~~
@Override
public void onReceive(Context context, Intent intent)
{
try
{
final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setType("plain/text");
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] { "webmaster@website.com" });
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "aa");
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "bb");
PendingIntent emailPendingIntent = PendingIntent.getActivity(context, 111, emailIntent, -1);
emailPendingIntent.send();
}
catch (Exception e)
{
Log.i("moon", "eee " + e);
}
}
preferences 에서 클릭하면 특별한 에러 표시 없이 instrumentation.class (Source not found) 에러만 나옵니다.
코드 상에서 sendBroadcast(new Intent("com.msgcenter.FeedbackReceiver"); 식으로 호출하면 작동은 잘 됩니다.
어떤식으로 해야 preferences 에서 sendbroadcast를 실행 또는 특정한 intent 를 실행 가능한지 궁금합니다.
또 코드로 FeedbackReceiver.java 를 실행하면
04-29 17:29:25.353: INFO/moon(2481): eee java.lang.NullPointerException
catch 에서 널포인트 익셉션이 발생하는것을 알수 있는데 잘못된 부분이 있는지도 궁금합니다.
공지사항을 다 읽었음
preferences.xml
<PreferenceScreen
android:title="@string/sendFeedBack"
android:summary="@string/sendFeedBackSummary">
<intent android:action="com.msgcenter.FeedbackReceiver"/>
</PreferenceScreen>
AndroidManifest.xml
<receiver android:name=".FeedbackReceiver">
<intent-filter>
<action android:name="com.msgcenter.FeedbackReceiver" />
</intent-filter>
</receiver>
FeedbackReceiver.java
~~
@Override
public void onReceive(Context context, Intent intent)
{
try
{
final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setType("plain/text");
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] { "webmaster@website.com" });
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "aa");
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "bb");
PendingIntent emailPendingIntent = PendingIntent.getActivity(context, 111, emailIntent, -1);
emailPendingIntent.send();
}
catch (Exception e)
{
Log.i("moon", "eee " + e);
}
}
preferences 에서 클릭하면 특별한 에러 표시 없이 instrumentation.class (Source not found) 에러만 나옵니다.
코드 상에서 sendBroadcast(new Intent("com.msgcenter.FeedbackReceiver"); 식으로 호출하면 작동은 잘 됩니다.
어떤식으로 해야 preferences 에서 sendbroadcast를 실행 또는 특정한 intent 를 실행 가능한지 궁금합니다.
또 코드로 FeedbackReceiver.java 를 실행하면
04-29 17:29:25.353: INFO/moon(2481): eee java.lang.NullPointerException
catch 에서 널포인트 익셉션이 발생하는것을 알수 있는데 잘못된 부분이 있는지도 궁금합니다.
공지사항을 다 읽었음