学习Android SMSPopup开源项目(一)

罗智刚
2023-12-01
原文地址:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=68465&highlight=
Android SMSPopup

SMSPopup可以截获短信内容显示在一个泡泡形状的窗口中。从这个项目中可以掌握到如何使用内置的短信SMS接口。
地址:http://code.google.com/p/android-smspopup/
安装SVN后即可下载。。

有需要的加我QQ:172665991

1.通过LayoutInflater组装布局
LayoutInflater factory = getLayoutInflater(); //布局组装器
  final View donateView = factory.inflate(R.layout.donate, null);
  
  
  
  2.卸载程序:net.everythingandroid.smspopup为主Activity所在的包路径。
   final Uri packageUri = Uri.parse("package:net.everythingandroid.smspopup");
    Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageUri);
    activity.startActivity(uninstallIntent);
   
   
3.文件管理器
名为:PREFERENCES_EULA:
  private static final String PREFERENCES_EULA = "eula";
  SharedPreferences preferences = activity.getSharedPreferences(PREFERENCES_EULA,
        Activity.MODE_PRIVATE);
        
   编辑并提交.
    preferences.edit().putBoolean(PREFERENCE_EULA_ACCEPTED, true).commit();
  一行代码即可搞定。
        
        
4.读取资源文件中的内容,在assets目录下。在Eula.java类中:
  BufferedReader in = null;
   in = new BufferedReader(new InputStreamReader(activity.getAssets().open(ASSET_EULA)));
      String line;
      StringBuilder buffer = new StringBuilder();
      while ((line = in.readLine()) != null) buffer.append(line).append('\n');
      return buffer;

  5.国际化资源文件。
  values,values-zh-rCN,values-zh-rTW,values-fr,values-es
  
  
  6.打开网页,通过点击Preferences选项
      <PreferenceScreen
      android:key="@string/pref_faq_key"
      android:title="@string/pref_faq_title"
      android:summary="@string/pref_faq_summary">
      <intent
        android:action="android.intent.action.VIEW"
        android:data="@string/pref_faq_url" />
    </PreferenceScreen>
    android.intent.action.VIEW即为浏览pref_faq_url中的内容:
    <string name="pref_faq_url">http://code.google.com/p/android-smspopup/wiki/FAQ</string>
   
   7. SmsPopupConfigActivity.this.showDialog(DIALOG_DONATE);
   这个即为打开对话框。
   DIALOG_DONATE为常量,如为1.
   然后在就可以打开该对话框:
    protected Dialog onCreateDialog(int id) {
    switch (id) {

      case DIALOG_DONATE:
                   .............
                  
                   return new AlertDialog.Builder(this)
        .setIcon(R.drawable.smspopup_icon)
        .setTitle(R.string.pref_donate_title)
        .setView(donateView)
        .setPositiveButton(android.R.string.ok, null)
        .create();
        
        
        
    8.打开IE网页:
    public static final Uri DONATE_PAYPAL_URI =
    Uri.parse("https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=8246419");
   
   
     Intent i = new Intent(Intent.ACTION_VIEW);
            i.setData(SmsPopupUtils.DONATE_PAYPAL_URI);
            SmsPopupConfigActivity.this.startActivity(i);
            
            
     9.打开GOOGLE电子市场,即访问其他的应用程序:
     public static final Uri DONATE_MARKET_URI =
      Uri.parse("market://search?q=pname:net.everythingandroid.smspopupdonate");
   
         Intent i = new Intent(Intent.ACTION_VIEW);
            i.setData(SmsPopupUtils.DONATE_MARKET_URI);
            SmsPopupConfigActivity.this.startActivity(
                Intent.createChooser(i, getString(R.string.pref_donate_title)));
            
     
     10. android:autoLink="all"表示显示超级链接
     
     
    <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/AboutTextView"
    android:textColor="?android:attr/textColorPrimaryDisableOnly"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:autoLink="all"
    android:padding="11dp"
    android:text="@string/pref_about_text" />
   
    11.发送邮件。。。。。
    Intent msg = new Intent(Intent.ACTION_SEND);

    StringBuilder body = new StringBuilder();
    msg.putExtra(Intent.EXTRA_EMAIL, AUTHOR_CONTACT_INFO_DONATE);
    msg.putExtra(Intent.EXTRA_SUBJECT, "SMS Popup Donate");
    msg.putExtra(Intent.EXTRA_TEXT, body.toString());

    msg.setType("message/rfc822");
    startActivity(Intent.createChooser(msg, "Send E-mail"));


待续。。。。
  
 类似资料: