我试图从一个广播接收器发起一个活动,该接收器收听5556的传出呼叫.问题是,活动没有被启动但拨号内置活动被调用,我已将意图的优先级更改为100但是无济于事.如何在拨号时启动活动而不是内置呼叫活动?这是代码:
package com.messageHider;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class launchReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String number=intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
String compare_num="5556";
if(number.equals(compare_num))
{
Intent myintent=new Intent(context,messageHider.class);
myintent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(myintent);
abortBroadcast();
}
}
}
Run Code Online (Sandbox Code Playgroud)
清单文件:
<receiver android:name=".launchReceiver">
<intent-filter android:priority="0">
<action android:name="android.intent.action.NEW_OUTGOING_CALL"/>
</intent-filter>
</receiver>
Run Code Online (Sandbox Code Playgroud) 我一直试图在SD卡中移动文件,但无济于事:这是代码:
try {
File sd=Environment.getExternalStorageDirectory();
// File (or directory) to be moved
String sourcePath="mnt/sdcard/.Images/"+imageTitle;
File file = new File(sd,sourcePath);
// Destination directory
String destinationPath="mnt/sdcard/"+imageTitle;
File dir = new File(sd,destinationPath);
// Move file to new directory
boolean success = file.renameTo(new File(dir, file.getName()));
if (!success) {
handler.post(new Runnable(){
@Override
public void run() {
Toast.makeText(getApplicationContext(), "File moved", Toast.LENGTH_LONG).show();
}
});
}
}
catch (Exception e) {
}
Run Code Online (Sandbox Code Playgroud)
我不知道wasup.Will欣赏帮助.