Save/Create MMS in inbox Android

后端 未结 3 1768
走了就别回头了
走了就别回头了 2020-12-15 17:31

I am working on an Application which needs to be able to Save/Create a new MMS in inbox or Sent folders but I cant figure out the way.

I tried the following code but

相关标签:
3条回答
  • 2020-12-15 17:54

    first as you create one screen which you wants to use as the mms screen. then after as you completed to make it try this under code to send that mms to other person to whom you want. here you first declare one btn_email button on your project.

    btn_email = (Button)findViewById(R.id.btn_email);

    then write the onclickevent on this button which will able to help to send the mms to other person.

    send mms code:

    btn_email.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub System.out.println("the email button is just pressed..");

                        Intent sendIntent = new Intent(Intent.ACTION_SEND);
    
                        //Mime type of the attachment (or) u can use sendIntent.setType("*/*")
    
                        sendIntent.setType("image/jpeg");
    
                        //Subject for the message or Email
    
                        sendIntent.putExtra(Intent.EXTRA_SUBJECT, "My Picture");
    
                        //Full Path to the attachment
    
                        sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://mnt/"+mUrl));
    
                        //Use a chooser to decide whether email or mms
    
                        startActivity(Intent.createChooser(sendIntent, "Email:"));
                    }
    
                });
    

    here is the code which will send the mms to other person form your sdcard path. this code using the intent code is the android default email sending screen will use.

    by this way you are able to send the mms to other person.

    now to save the that particulate mms which you have send that other person , as you develop that screen which you have created you just capture that whole screen...and save in sd card like..

    e.g:

    btn_save = (Button)findViewById(R.id.btn_save);

       btn_save.setOnClickListener(new OnClickListener()
       {
    
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            System.out.println("the save button is just pressed..");
    
            saveImageToSD();
            Toast.makeText(Create_Screen_Birthday.this,"Image successfully saved",Toast.LENGTH_LONG).show();    
        }
    
       });
    

    protected void saveImageToSD() { // TODO Auto-generated method stub

        System.out.println("NOW you are on the saveimage to sd card method called block..");
    
        try
        {
            //String fileName = "myBitmapImage2.png";   
            int  Current_Hour,Current_Minute,Current_Second;
            RelativeLayout settext_relative;
    
            settext_relative = (RelativeLayout)findViewById(R.id.settext_relative);
    
    
    
            final Calendar c = Calendar.getInstance();
    
            Current_Hour = c.get(Calendar.HOUR);
            Current_Minute = c.get(Calendar.MINUTE);
            Current_Second = c.get(Calendar.SECOND);
    
    
            System.out.println("the value of Current_Year = "+Current_Hour);
            System.out.println("the value of Current_Month = "+Current_Minute);
            System.out.println("the value of Current_Date = "+Current_Second);
    
    
    
            fileName = "Birthday_Card"+"_"+Current_Hour+"_"+Current_Minute+"_"+Current_Second+".png";
            String path = "/sdcard/E-card/Birthday_Cards/";
    
              newfileName = path + fileName;
             System.out.println("the value of newfilename = "+newfileName);
    
    
            System.out.println("The Filename on save card on sdcard = "+fileName);
    
            FileOutputStream outStream = null;
            File file = new File(path);
            file.mkdirs();
    
            File outputFile = new File(file, fileName);
            outputFile.createNewFile(); 
    
            outStream = new FileOutputStream(outputFile);
    
            BufferedOutputStream bos = new BufferedOutputStream(outStream);
    
    
    
             RL.setDrawingCacheEnabled(true);
    
         bitmap = Bitmap.createBitmap( RL.getDrawingCache());
    
            bitmap.compress(Bitmap.CompressFormat.PNG, 100,bos);
    
             RL.setDrawingCacheEnabled(false);
    
            bos.flush();
            bos.close();
    
            btn_preview.setVisibility(View.VISIBLE);
    
            btn_save.setVisibility(View.GONE);
        }
    
        catch(Exception ex)
        {
            ex.printStackTrace();
        }       
    
    }
    

    this above code will save that of screen which you have send then simply you just access or fetch that image from your sdcard specific path name

    0 讨论(0)
  • 2020-12-15 17:57

    I was having the same problem. However I successfully created and restored an MMS. It's basically reverse manipulation of database. I hope you can get an MMS from the database, right? You just need to put back appropriate values in database tables. You can get information about database tables in mmssms.db. Once you understand the mmssms.db, it's very easy to insert an MMS.

    0 讨论(0)
  • 2020-12-15 18:06

    The body of the MMS is stored in content://mms/part/. See this code for how to read from it, but remember that all of this is undocumented, unsupported and likely to change without notice.

    0 讨论(0)
提交回复
热议问题