वर्तमान में मेरे ऐप में, मैं अपनी एचटीएमएल सामग्री को प्रदर्शित करने के लिए एक वेबव्यू का उपयोग कर रहा हूं (जो उम्मीद के अनुसार संपत्ति फ़ोल्डर के माध्यम से आ रहा है, बस स्पष्ट करने के लिए)। हालांकि, मैंने ईमेल कार्यक्षमता के माध्यम से एकीकृत एकीकृत किया है और मैं पसंद के चुने हुए ईमेल में फोकस में सामग्री के बजाय विषय निकाय और शीर्षक को शून्य के रूप में देखता हूं। (कहें कि जब मैं ईमेल विकल्प के माध्यम से अपना प्रेषण चुनता हूं तो मैं जीमेल चुनता हूं। मैं सामग्री के शरीर को वेबव्यू में सामग्री के बजाए शून्य के रूप में देखता हूं)। किसी ने भी ऐसा किया है या कोई विचार है, इसके बारे में कैसे जाना है? मेरे EmailUtils वर्ग : यहाँ मेरी कोड हैमैं ईमेल के माध्यम से वेबव्यू सामग्री निकाय कैसे भेजूं?
public class EmailUtils {
public static String FEEDBACK_EMAIL = "[email protected]";
public static void shareNewsViaEmail(final Fragment fragment, final String emailSubject, final String emailBody){
shareNewsViaEmailEx(fragment.getActivity(), emailSubject, emailBody);
}
public static void shareNewsViaEmailEx(final Context context, final String emailSubject, final String emailBody){
final Intent emailIntent = new Intent(Intent.ACTION_SEND);
emailIntent.setType("text/html");
final String subjectAppendText = " " + context.getResources().getString(R.string.email_subject_append);
emailIntent.putExtra(Intent.EXTRA_SUBJECT, emailSubject + subjectAppendText);
emailIntent.putExtra(Intent.EXTRA_TEXT, emailBody);
context.startActivity(Intent.createChooser(emailIntent, "Send Email"));
}
}
भाग मेरे टुकड़ा वर्ग:
//The button where it's called:
@Override
public void onMenuItemClicked(final int position) {
mOptionsMenuHelper.hideMenu();
menuButton.setSelected(false);
switch (position) {
case OptionMenuItems.EMAIL_STORY_POSITION:
emailArticle();
break;
}
}
private void emailArticle() {
final Fragment fragment = mArticleAdapter.getFragment(mArticlePager.getCurrentItem());
if (fragment instanceof ArticleFragmentWebView) {
final String emailSubject = ((ArticleFragmentWebView)fragment).getHeadline();
final String articleBody = ((ArticleFragmentWebView)fragment).getArticleBody();
final String newLine = getResources().getString(R.string.new_line);
final String disclamer = getResources().getString(R.string.intellectual_property_info);
final String emailBody = articleBody + newLine + disclamer;
EmailUtils.shareNewsViaEmail(this, emailSubject, emailBody);
}
}
मैं एक ही के बारे में कैसे जाते हैं?
धन्यवाद! यहाँ articlefragmentwebview है:
public class ArticleFragmentWebView extends AbsBaseArticleFragment {
public static final String TAG_ARTICLE_FRAGMENT = "ArticleFragment";
public static final String ARTICLE_POSITION = "article_position";
public static final String CATEGORY_CODE = "article_code";
private int mPositionInPager;
private ArticleWebViewClient articleWebViewClient;
@Override
public void onActivityCreated(final Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
mPositionInPager = getArguments().getInt(ARTICLE_POSITION);
}
@Override
public View onCreateView(final LayoutInflater inflater, final ViewGroup container, final Bundle savedInstanceState) {
final View view = super.onCreateView(inflater, container, savedInstanceState);
articleWebViewClient = new TechnicArticleWebViewClient(getActivity(), view);
return view;
}
@Override
public void onLoading() {
final View fragmentView = getView();
if (fragmentView != null) {
LayoutUtils.showLoading(fragmentView, "");
}
}
@Override
public void showLoading(View view) {
LayoutUtils.showLoading(view, "");
}
@Override
public void showResults(final Uri uri) {
LayoutUtils.showResults(getView(), R.id.news_body);
}
@Override
public void setTextSize(TextSize textSize) {
articleWebViewClient.increaseFontSize();
}
@Override
public void showNoResults(final Uri uri) {
// LayoutUtils.showNoResult(getView(), R.id.details_container);
}
@Override
public void showRelatedDivider() {
}
@Override
protected void getRelatedQuotes() {
}
@Override
public Uri onCreateContentUri() {
final String articleCode = getArguments().getString(ARTICLE_CODE);
return Uri.withAppendedPath(NewsContentProvider.ARTICLE_MYNEWS_URI, articleCode);
}
@Override
public void onStart() {
super.onStart();
}
public int getPositionInPager() {
return mPositionInPager;
}
@Override
protected int getFragmentLayoutId() {
return R.layout.fragment_article_briefcase;
}
@Override
protected int getArticleTextViewId() {
return R.id.news_body;
}
@Override
protected int getFlowTextViewId() {
return R.id.tv;
}
@Override
protected int getHeaderTextViewId() {
return R.id.headline;
}
@Override
protected int getMetadataTextViewId() {
return R.id.timestamp_and_source;
}
@Override
public void onMenuItemClicked(final int position) {
//Do nothing
}
@Override
public boolean setViewValue(final View view, final Cursor cursor, final int columnIndex) {
if (view.getId() != R.id.news_body) // paranoia
return true;
String article = cursor.getString(columnIndex);
String storyId = cursor.getString(cursor.getColumnIndex(Briefcase.Columns.ID));
return articleWebViewClient.setArticle(article, storyId);
}
}
और यहाँ getarticlebody के लिए मॉडल वर्ग है:
public class Briefcase {
public static final String TEXT_TYPE = "TEXT";
public static final String HTML_TYPE = "Html";
public static final String PDF_TYPE = "PDF";
public static class Columns {
public static final String ID = "Id";
public static final String NAME = "Name";
public static final String SAVED_DATE = "SavedDate";
public static final String TYPE = "DocumentType";
public static final String DOCUMENT_DATE = "DocumentDate";
public static final String SOURCE = "DocumentSource";
public static final String DOCUMENT_LINK = "DocumentLink";
public static final String DOCUMENT_ID = "DocumentId";
public static final String IS_READ = "IsRead";
public static final String ARTICLE_BODY = "ArticleBody";
//PrimaryRic
}
public Briefcase(String id, String articleId, String name, String docDate, String source, String docType){
mId = id;
mDocumentId = articleId;
mName = name;
mPNACDate = docDate;
mDocumentSource = source;
mDocumentType = docType;
mIsRead = "false";
mSavedDate = new Date();
}
@SerializedName(Columns.ID)
private String mId;
@SerializedName(Columns.NAME)
private String mName;
@SerializedName(Columns.SAVED_DATE)
private Date mSavedDate;
@SerializedName(Columns.TYPE)
private String mDocumentType;
@SerializedName(Columns.DOCUMENT_DATE)
private String mPNACDate;
@SerializedName(Columns.SOURCE)
private String mDocumentSource;
@SerializedName(Columns.DOCUMENT_ID)
private String mDocumentId;
@SerializedName(Columns.IS_READ)
private String mIsRead;
public String getId() {
return mId;
}
public String getName() {
return mName;
}
public Date getSavedDate() {
return mSavedDate;
}
public String getDocumentType() {
return mDocumentType;
}
public String getPNACDate() {
return mPNACDate;
}
public String getDocumentSource() {
return mDocumentSource;
}
public String getDocumentLink() {
String docLink = null;
if(StringUtils.isEmpty(mDocumentSource))
return docLink;
return mDocumentId;
}
public String getIsRead() {
return mIsRead;
}
public ContentValues toContentValues() {
if (hasValidData()) {
final ContentValues values = new ContentValues();
values.put(Columns.ID, mId);
values.put(Columns.NAME, decodeHeadline());
values.put(Columns.SAVED_DATE, mSavedDate.getTime());
values.put(Columns.DOCUMENT_LINK, getDocumentLink());
values.put(Columns.DOCUMENT_DATE, DateUtils.convertFromUTCStringToLong(mPNACDate));
values.put(Columns.SOURCE, mDocumentSource);
values.put(Columns.IS_READ, mIsRead);
values.put(Columns.TYPE, mDocumentType);
values.put(GenericColumns.USER_ID, SharedPreferencesManager.getInstance().getLoginUsername());
return values;
}
return null;
}
private String decodeHeadline() {
String decodedHeadline = mName;
try {
decodedHeadline = URLDecoder.decode(mName, NetworkUtils.Values.UTF_8);
} catch (final Exception e) {
e.printStackTrace();
}
return decodedHeadline;
}
public ContentValues toContentForDatabaseUpdateValues() {
if (hasValidData()) {
final ContentValues values = toContentValues();
values.put(Columns.ARTICLE_BODY, getArticleBody());
return values;
}
return null;
}
private String getArticleBody() {
String body = "";
final ContentResolver resolver = Application.getAppContext().getContentResolver();
final String[] projection = new String [] {Columns.ARTICLE_BODY};
final Uri uri = Uri.withAppendedPath(BriefcaseContentProvider.BRIEFCASE_ARTICLE_STORY_URI, mId);
final Cursor cursor = resolver.query(uri, projection, null, null, null);
if(cursor.getCount()>0){
cursor.moveToFirst();
body = cursor.getString(cursor.getColumnIndex(Columns.ARTICLE_BODY));
}
return body;
}
private boolean hasValidData() {
boolean isValid = false;
if (StringUtils.isNotEmpty(mId) && StringUtils.isNotEmpty(mName)){
isValid = true;
}
return isValid;
}
}
हमें में दिखाने के '' getArticleBody' ArticleFragmentWebView' – Blundell
@Blundell मैं सिर्फ उन दोनों के लिए कक्षाओं कहा, इसके बाद के संस्करण कोड –
तो क्या में जाँच कृपया होता है यदि आप पहली पंक्ति को 'स्ट्रिंग बॉडी =' QueryDidNotWork 'में बदलते हैं;' यह एक वेबव्यू की तुलना में डेटाबेस प्रश्न प्रतीत होता है – Blundell