Android:我想在安装apk时在sdcard中创建一个新文件

时间:2012-05-22 03:44:59

标签: android

我想在 安装apk 时在SD卡中创建一个新文件... 我应该如何或在哪里编码? 提前谢谢!

2 个答案:

答案 0 :(得分:1)

你绝对不能那样做。这将引入各种安全问题。正如Ken Y -N在他的回答中所说,最好的办法是在你的应用第一次被打开时检测,并在那里做点什么。

这是一个活动类:

public class StartupChoiceActivity extends Activity {
    private static final String TAG = StartupChoiceActivity.class.getSimpleName();

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        SharedPreferences mPrefs = getSharedPreferences("prefs", Context.MODE_PRIVATE);

        if(!mPrefs.getBoolean("has_started_before", false)) {
            // Do what ever you want to do the first time the app is run

        } else {
            //Remember our choice for next time
            mPrefs.edit().putBoolean("has_started_before", true).commit();
            Log.i(TAG, "We've already started the app at least once");
        }

        //Do what ever we want to do on a normal startup. This is pretty much always mean starting a new activity
        startActivity(new Intent(this, MyNormalFirstActivity.class);
        finish();
    }
}

您需要做的唯一事情是确保将此活动设置为AndroidManifest.xml中的“启动”活动。您可以将此代码放在应用程序标记中来执行此操作:

<activity android:name=".StartupChoiceActivity">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

答案 1 :(得分:0)

你做不到;例如,这样的功能将是让木马传播的好方法。

只需检查程序的第一次运行并在那里进行初始化。